// JavaScript Document
var freeze_layer_menu_timeout = new Array();		// timeout for layer menu hiding
freeze_layer_menu_timeout["examples"] = false;
freeze_layer_menu_timeout["applications"] = false;

function showLayerMenu(key) {
	if (freeze_layer_menu_timeout[key] != null) {
		clearTimeout(freeze_layer_menu_timeout[key]);
	}
	$('#'+key+'_menu:hidden').slideDown(100);
};

function hideLayerMenu(key) {
	if (freeze_layer_menu_timeout[key] != null) {
		clearTimeout(freeze_layer_menu_timeout[key]);
	}
	freeze_layer_menu_timeout[key] = setTimeout("dohideLayerMenu('"+key+"')", 100);
};

function dohideLayerMenu(key) {
	if (freeze_layer_menu_timeout[key] != null) {
		clearTimeout(freeze_layer_menu_timeout[key]);
	}
	$('#'+key+'_menu:visible').slideUp(100);
};

$(document).ready(function () {
	if($('#info_balken').length > 0) {
		$('#footer').css('background-image', 'url(/images/welle_unten_infobalken.jpg)');
	}
});

/**
 * AJAX functions
 */
function jsoneval(s) {
	if(typeof(s)=="string") {
		if(s.charAt(0)=="[" && s.charAt(s.length-1)=="]") {
			return eval('('+s.substr(1, s.length-2)+')');
		} else if(s.charAt(0)=="{" && s.charAt(s.length-1)=="}") {
			return eval('('+s+')');
		} else {
			return "{}";
		}
	}
}

/**
 * Geo functions
 */
function lookupAddress(address, callback) {
	$.post("/GeoLocator/lookupLocation", {location: address}, function(response) {
		data = jsoneval(response);
		callback(data);
	});
}

/**
 * Toggle boxes
 */
function toggleBoxContent(container_id, toggler, toggled) {
	$('#'+container_id+' .box_content:visible').slideUp(200);
	$('#'+container_id+' h2.toggle').css('background-image', 'url(/images/formulare/icon_pfeil_nach_oben.png)');
	if(toggled.is(':hidden')) {
		toggled.slideDown(200, function() {
			if(toggled.is(':visible')) {
				toggler.css('background-image', 'url(/images/formulare/icon_pfeil_nach_unten.png)');
			} else {
				toggler.css('background-image', 'url(/images/formulare/icon_pfeil_nach_oben.png)');
			}
		});
	}
}