// used to control moving the map
var dragging = false;
var top;
var left;
var dragStartTop;
var dragStartLeft;

// Show/Hide layers at different zoom levels
function showOptionLayer(layer) {
	var optionLayer = document.getElementById(layer);
	
	// If layer is visible, then hide it when option is clicked
	if (optionLayer.style.visibility == "visible") {
		optionLayer.style.visibility = "hidden";
		
		// Change the 'check' image next to the option link to show that the layer is now turned off
		if (layer == "accessibility") {
			accessibility = false;
			document.getElementById("accessibility-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "buildings") {
			buildings = false;
			document.getElementById("buildings-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "busstops") {
			busstops = false;
			document.getElementById("busstops-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "cameras") {
			cameras = false;
			document.getElementById("cameras-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "complabs") {
			complabs = false;
			document.getElementById("complabs-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "interest") {
			interest = false;
			document.getElementById("interest-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "phones") {
			phones = false;
			document.getElementById("phones-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "hydrants") {
			hydrants = false;
			document.getElementById("hydrants-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "foodgas") {
			foodgas = false;
			document.getElementById("foodgas-select").style.backgroundImage = "url(images/check-off.png)";
		}
		if (layer == "nonsmoking") {
			nonsmoking = false;
			document.getElementById("nonsmoking-select").style.backgroundImage = "url(images/check-off.png)";
		}
	}
	
	// if layer is not visible, then set to visible when option is clicked
	else {
		optionLayer.style.visibility = "visible";
		if (layer == "accessibility") accessibility = true;
		if (layer == "buildings") buildings = true;
		if (layer == "busstops") busstops = true;
		if (layer == "cameras") cameras = true;
		if (layer == "complabs") complabs = true;
		if (layer == "interest") interest = true;
		if (layer == "phones") phones = true;
		if (layer == "hydrants") hydrants = true;
		if (layer == "foodgas") foodgas = true;
		if (layer == "nonsmoking") nonsmoking = true;
	}
	checkOptionLayers(layer);
}

// check optional layers that use graphics to make sure that the correct size is loaded for the current zoom level
// then change the 'check' image next to the option link to show that the layer is now turned on
function checkOptionLayers() {
	if (accessibility) {
		document.getElementById("accessibility").style.backgroundImage = "url(images/optionlayers/accessibility" + zoom + ".gif)";
		document.getElementById("accessibility-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (buildings) {
		//document.getElementById("buildings").style.backgroundImage = "url(images/optionlayers/buildings" + zoom + ".gif)";
		document.getElementById("buildings-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (busstops) {
		document.getElementById("busstops").style.backgroundImage = "url(images/optionlayers/busstops" + zoom + ".gif)";
		document.getElementById("busstops-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (cameras) {
		document.getElementById("cameras").style.backgroundImage = "url(images/optionlayers/cameras" + zoom + ".gif)";
		document.getElementById("cameras-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (complabs) {
		document.getElementById("complabs").style.backgroundImage = "url(images/optionlayers/complabs" + zoom + ".gif)";
		document.getElementById("complabs-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (interest) {
		document.getElementById("interest-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (phones) {
		document.getElementById("phones").style.backgroundImage = "url(images/optionlayers/phones" + zoom + ".gif)";
		document.getElementById("phones-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (hydrants) {
		document.getElementById("hydrants").style.backgroundImage = "url(images/optionlayers/hydrants" + zoom + ".gif)";
		document.getElementById("hydrants-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (foodgas) {
		document.getElementById("foodgas").style.backgroundImage = "url(images/optionlayers/foodgas" + zoom + ".gif)";
		document.getElementById("foodgas-select").style.backgroundImage = "url(images/check-on.png)";
	}
	if (nonsmoking) {
		document.getElementById("nonsmoking").style.backgroundImage = "url(images/optionlayers/nonsmoking" + zoom + ".gif)";
		document.getElementById("nonsmoking-select").style.backgroundImage = "url(images/check-on.png)";
	}
}

function setVisible(obj, bool){
	if(typeof obj == "string")
		obj = document.getElementById(obj);
	while (obj.firstChild) obj.removeChild(obj.firstChild);
	if(bool == false){
		if(obj.style.display != 'none');
			obj.style.display = 'none';
		}
	else { 
		if(obj.style.display != 'block');
			obj.style.display = 'block';
	}
}

// resize the clickable areas over the buildings to match the current zoom level
function resizeBuildings(level) {
	var buildings = document.getElementById("buildings");
	for (var i = 0; i < buildings.childNodes.length; i++) {
		if (level == 1) {
			if (buildings.childNodes[i].nodeName == 'DIV'){
				buildings.childNodes[i].style.width  = stripPx(buildings.childNodes[i].style.width)  * 2 + "px";
				buildings.childNodes[i].style.height = stripPx(buildings.childNodes[i].style.height) * 2 + "px";
				buildings.childNodes[i].style.top    = stripPx(buildings.childNodes[i].style.top)    * 2 + "px";
				buildings.childNodes[i].style.left   = stripPx(buildings.childNodes[i].style.left)   * 2 + "px";
			}
		}
		if (level == -1) {
			if (buildings.childNodes[i].nodeName == 'DIV'){
				buildings.childNodes[i].style.width  = stripPx(buildings.childNodes[i].style.width)  / 2 + "px";
				buildings.childNodes[i].style.height = stripPx(buildings.childNodes[i].style.height) / 2 + "px";
				buildings.childNodes[i].style.top    = stripPx(buildings.childNodes[i].style.top)    / 2 + "px";
				buildings.childNodes[i].style.left   = stripPx(buildings.childNodes[i].style.left)   / 2 + "px";
			}
		}
	}
}
