//TOC FUNCTIONS

function addToTOC(layer,listLayers)
{
	if(listLayers)
	{
		if (layer.loaded) {
			buildLayerList(layer);
		}
		else {
			
			dojo.connect(layer, "onLoad", buildLayerList);
		}
	}
	else
	{
		if (layer.loaded) {
			buildLayerListRoot(layer);
		}
		else {
			dojo.connect(layer, "onLoad", buildLayerListRoot);
		}
	}
}

function buildLayerListRoot(layer)
{
	var currentLayer = layer;
	tocHTML = "<input type='checkbox' dojotype='dijit.form.CheckBox ' class='TOC_Root' " + (currentLayer.visible ? " CHECKED " : "") + " name='cotter' id='" + currentLayer.id + "' onclick=\"toggleService('" + currentLayer.id + "');\" /><label for='" + currentLayer.id + "'>" + currentLayer.id + "</label><br>" + tocHTML;
	//tocHTML = "<input id='" + currentLayer.id + "' dojotype='dijit.form.CheckBox' class='TOC_Root' name='developer' " + (currentLayer.visible ? " CHECKED " : "") + " value='on' type='checkbox' onclick=\"toggleService('" + currentLayer.id + "');\" /><label for='" + currentLayer.id + "'>" + currentLayer.id + "</label>"  + tocHTML; 

	dojo.byId("toc").innerHTML = tocHTML;
}

function buildLayerList(layer) {
	var currentLayer = layer;
	var currentHTML = "";
	currentHTML += "<input type='checkbox' dojotype='dijit.form.CheckBox ' class='TOC_Root' " + (currentLayer.visible ? " CHECKED " : "") + " name='cotter' id='" + currentLayer.id + "' onclick=\"toggleService('" + currentLayer.id + "');\" /><label for='" + currentLayer.id + "'>" + currentLayer.id + "</label><br>";

//SubLayers only set for countyOptionalData, replace countyOptionalData with currenLayer for all Layers.
	var subLayers = currentLayer.layerInfos;
	for (var i=0; i<subLayers.length; i++)
	{
	  var currentSubLayer = subLayers[i];
	  if(currentSubLayer.name != 'Default')
	  {
	  	  if (currentSubLayer.defaultVisibility)
		  {
				visible.push(currentSubLayer.id);
	  	   }
	  		currentHTML += "&nbsp;&nbsp;&nbsp;&nbsp;<input type='checkbox' class='" + currentLayer.id + "TOC' " + (currentSubLayer.defaultVisibility ? " CHECKED " : "") + " id='" + currentSubLayer.id + "' onclick=\"updateLayerVisibility('" + currentLayer.id + "','" + currentSubLayer.id + "');\" /><label for='" + currentSubLayer.id + "'>" + currentSubLayer.name + "</label><br>";
	
	  }
	}
	tocHTML = currentHTML + tocHTML;
	
	dojo.byId("toc").innerHTML = tocHTML;
}
	  
function updateLayerVisibility(serviceID,layerid) {
	
	
	
		var inputs = dojo.query("."+serviceID+"TOC"), input;
	visible = [];
	for (var i=0, il=inputs.length; i<il; i++) {
	if (inputs[i].checked) {
	
	visible.push(inputs[i].id);
	}
	}
	
	var layer = map.getLayer(serviceID);
	layer.setVisibleLayers(visible);
	
}

		   
function getMapLayers()
{
        var innerHTML = "";
		for (var j=0, jl=map.layerIds.length; j<jl; j++) {
          var currentLayer = map.getLayer(map.layerIds[j]);
		  innerHTML += "<input type='checkbox' class='layer_item' " + (currentLayer.visible ? " CHECKED " : "") + " id='" + currentLayer.id + "' onclick=\"toggleService('" + currentLayer.id + "');\" /><label for='" + currentLayer.id + "'>" + currentLayer.id + "</label><br>";
          //alert("id: " + currentLayer.id + ", visible: " + currentLayer.visible + ", opacity: " + currentLayer.opacity);
        }
		dojo.byId("mapServices").innerHTML = innerHTML;
}	

function toggleService(layerID)
{
	var layer = map.getLayer(layerID);
	if(santarosaAerialsData.visible)
	{
		santarosaAerialsData.hide();
	}
	else
	{
		santarosaAerialsData.show();
	}
	
}

//END TOC