﻿var pointType = "";

function addGraphic(geometry) {
//	var symbol = dojo.byId("symbol").value;
//	if (symbol) {
//		symbol = eval(symbol);
//	}
//	else {
    
	var type = geometry.type;
	var symbol;
	var symbolType = eval(dojo.byId("symbolLineType").value);
	var symbolPointType = eval(dojo.byId("symbolPointType").value);
	var symbolFillType = eval(dojo.byId("symbolFillType").value);
	var symbolSize = eval(dojo.byId("symbolSize").value);
	var symbolTransparency = eval(dojo.byId("symbolTransparency").value);
	
	var lineSymbol = new esri.symbol.SimpleLineSymbol(symbolType, drawingColor, symbolSize);

	if (type === "point" || type === "multipoint") {
	    if (pointType == "text") {
	        //var inputTxt = prompt("Enter Your Text", "");
	        var inputTxt = dojo.byId("texttooltext").value;
	        var txtFont = new esri.symbol.Font();
	        txtFont.setSize(dojo.byId("texttoolsize").value + "pt");
	        symbol = new esri.symbol.TextSymbol(inputTxt, txtFont, drawingColor);
	    } else {
	        symbol = new esri.symbol.SimpleMarkerSymbol(symbolPointType, symbolSize, lineSymbol, drawingColor);
	    }
	    
	}
	else if (type === "line" || type === "polyline") {
		symbol = lineSymbol;
	}
	else {
	    fillColor = new dojo.Color(drawingColor.toString());
	    fillColor.a = symbolTransparency;
		symbol = new esri.symbol.SimpleFillSymbol(symbolFillType, lineSymbol, fillColor);
	}
//	}
	

	drawingLayer.add(new esri.Graphic(geometry, symbol));
}

//set color range based on user color selection
function setColors(color) {
  //create color range for display
//  colors = dojox.color.Generator.monochromatic({ base:color, num:6 });
//  dojo.forEach(colors, function(clr, i) {
//    clr.a = 0.5;
//  });
//  
//  //feature set has been initialized, update map rendering and legend
//  if (mappedFeatureSet) {
//    render();
//  }
    //alert(color);
    drawingColor = new dojo.Color(color);
}

function clearDrawingLayer() {
    if (confirm("Are you sure you want to clear your drawing? Any unsaved work will be lost.")) {
        drawingLayer.clear();
    }
}

function clearLastGraphic() {
    //alert("length: "+drawingLayer.graphics.length);
    if (drawingLayer.graphics.length > 0) {
        drawingLayer.remove(drawingLayer.graphics[drawingLayer.graphics.length - 1]);
    }
}

function setDrawopt(pTool) {

    //"drawopt_ptstyle"
    //"drawopt_lnstyle"
    //"drawopt_lnsize"
    //"drawopt_fillstyle"
    //"drawopt_alpha"
    dojo.query('#drawopt_ptstyle').style('display', 'none');
    dojo.query('#drawopt_lnstyle').style('display', 'none');
    dojo.query('#drawopt_lnsize').style('display', 'none');
    dojo.query('#drawopt_fillstyle').style('display', 'none');
    dojo.query('#drawopt_alpha').style('display', 'none');
    dojo.query('#drawopt_text').style('display', 'none');
    dojo.query('#drawopt_fontsize').style('display', 'none');

    switch (pTool) {
        case "text":
            dojo.query('#drawopt_text').style('display', 'block');
            dojo.query('#drawopt_fontsize').style('display', 'block');
            break;
        case "point":
            dojo.query('#drawopt_ptstyle').style('display', 'block');
            dojo.query('#drawopt_lnsize').style('display', 'block');
            break;
        case "line":
            dojo.query('#drawopt_lnstyle').style('display', 'block');
            dojo.query('#drawopt_lnsize').style('display', 'block');
            break;
        case "rect":
            dojo.query('#drawopt_lnstyle').style('display', 'block');
            dojo.query('#drawopt_lnsize').style('display', 'block');
            dojo.query('#drawopt_fillstyle').style('display', 'block');
            dojo.query('#drawopt_alpha').style('display', 'block');
            break;
        case "polyl":
            dojo.query('#drawopt_lnstyle').style('display', 'block');
            dojo.query('#drawopt_lnsize').style('display', 'block');
            break;
        case "frpolyl":
            dojo.query('#drawopt_lnstyle').style('display', 'block');
            dojo.query('#drawopt_lnsize').style('display', 'block');
            break;
        case "polyg":
            dojo.query('#drawopt_lnstyle').style('display', 'block');
            dojo.query('#drawopt_lnsize').style('display', 'block');
            dojo.query('#drawopt_fillstyle').style('display', 'block');
            dojo.query('#drawopt_alpha').style('display', 'block');
            break;
        case "frpolyg":
            dojo.query('#drawopt_lnstyle').style('display', 'block');
            dojo.query('#drawopt_lnsize').style('display', 'block');
            dojo.query('#drawopt_fillstyle').style('display', 'block');
            dojo.query('#drawopt_alpha').style('display', 'block');
            break;   
    }
}