var lands = ["Deutschland", "Oesterreich", "Schweiz", "USA", "Belgien"];
var hover = false;

var jobsOpen        = false;
var landsOpen       = false;
var brancheOpen     = false;
var provinceBoxOpen = false;


function setMark(list, bool)
{
	for(var index in list)
	{
		if(bool)
		{
			$(list[index]).checked = true;
		}
		else
		{
			$(list[index]).checked = false;
		}
	}
}

function showLands()
{
	if(document.layers)
	{
		window.captureEvents(Event.MOUSEDOWN);
		window.onmousedown = disableDropDowns;
	}
	else
	{
		document.onmouseup = disableDropDowns;
	}

	if(landsOpen == false)
	{
		$("landDropDown").style.borderBottom = 0;
		//new Effect.BlindDown("landBox");
		$("landBox").show();
		landsOpen = true;
	}
	else
	{
		$("landDropDown").style.borderBottom = "1px solid #eee";
		//new Effect.BlindUp("landBox");
		$("landBox").hide();
		landsOpen = false;
	}
}

function showProvinceBox()
{
	if(document.layers) {

		window.captureEvents(Event.MOUSEDOWN);
		window.onmousedown = disableDropDowns;
	} else {

		document.onmouseup = disableDropDowns;
	}

	if(provinceBoxOpen == false) {

		$("provinceDropDown").style.borderBottom = 0;
		//new Effect.BlindDown("provinceBox");
		$("provinceBox").show();
		Event.observe(
			"provinceBox",
			'mouseover',
			showProvince
		);
		provinceBoxOpen = true;
	} else {

		for(var index in lands) {

			var name = "province" + (lands[index]);
			if($(name)) {

				$(name).hide();
			}
		}
		$("provinceDropDown").style.borderBottom = "1px solid #eee";
		//new Effect.BlindUp("provinceBox");
		$("provinceBox").hide();
		provinceBoxOpen = false;
	}
}


function showJobs()
{
	if(document.layers) {

		window.captureEvents(Event.MOUSEDOWN);
		window.onmousedown = disableDropDowns;
	} else {

		document.onmouseup = disableDropDowns;
	}

	if(jobsOpen == false) {

		$("jobDropDown").style.borderBottom = 0;
		$("jobBox").show();
		//new Effect.BlindDown("jobBox");
		jobsOpen = true;
	} else {

		$("jobDropDown").style.borderBottom = "1px solid #eee";
		//new Effect.BlindUp("jobBox");
		$("jobBox").hide();
		jobsOpen = false;
	}
}

function showBranchen()
{
	if(document.layers) {

		window.captureEvents(Event.MOUSEDOWN);
		window.onmousedown = disableDropDowns;
	} else {

		document.onmouseup = disableDropDowns;
	}

	if(brancheOpen == false) {

		$("branchenDropDown").style.borderBottom = 0;
		//new Effect.BlindDown("branchenBox");
		$("branchenBox").show();
		brancheOpen = true;
	} else {

		$("branchenDropDown").style.borderBottom = "1px solid #eee";
		//new Effect.BlindUp("branchenBox");
		$("branchenBox").hide();
		brancheOpen = false;
	}
}


function invert(field_to_uncheck, divlist) {

	var input_felder = $(divlist).getElementsByTagName('input');
	var uncheck      = false;

	for (var i in input_felder) {

		if($(input_felder[i]).value == false) {

			uncheck = true;
		}
	}

	if(uncheck) {

		$(field_to_uncheck).value = false;
	} else {

		$(field_to_uncheck).value = true;
	}
}

/**
 * Entfernt die Hauptmarkierung für ein Inputfeld
 *
 * @author sweber
 */
function uncheck(field_to_uncheck, divlist) {

	var input_felder = $(divlist).getElementsByTagName('input');
	var uncheck      = false;

	for (var i in input_felder) {

		if($(input_felder[i]).checked == false) {

			uncheck = true;
		}
	}

	if(uncheck) {

		$(field_to_uncheck).checked = false;
	} else {

		$(field_to_uncheck).checked = true;
	}
}

/**
 * Verwaltet die Hauptmarkierung für ein Länderfeld
 *
 * @author sweber
 */
function uncheckCountry(field_to_uncheck, divlist, checked_field) {

	var input_felder = $(divlist).getElementsByTagName('input');
	var check      = false;

	for (var i in input_felder) {

		if($(input_felder[i]).checked == true) {

			check = true;
		}
	}

	if(check) {

		$(field_to_uncheck).checked = true;
	} else {

		$(field_to_uncheck).checked = false;
	}
}

/**
 * Zeigt oder versteckt eine Province-list
 *
 * @author sweber
 */
function showProvince(event) {

	var province_box_list       = $('head_tbl').getElementsByClassName('provincebox');
	var province_box_list_count = province_box_list.length;

	for(var index = 0; index < province_box_list_count; index++) {

		var element = province_box_list[index];

		element.hide();
	}

	var new_box = $("province_" + $("province").value);

	if(new_box) {

		new_box.style.display == "none"

		var pos = getPosition($("provinceBox"));
		new_box.style.left = (pos.x+138) + "px";//(Event.pointerX(event)+5) + "px";
		new_box.show();
	}
}

/*
 * markiert alle Inputfelder innerhalb eines Elements entsprechend der Übergabe
 *
 * @author sweber
 */
function setMarkViaDiv(div_id, checked) {

	if($(div_id)) {

		var input_felder = $(div_id).getElementsByTagName('input');
		for (var i in input_felder) {

			$(input_felder[i]).checked = checked;
		}
	}
}

/**
 * Schliesst alle offenen Headerboxen
 *
 * @author sweber
 */
function disableDropDowns() {

	if(hover == false) {

		var province_box_list       = $('head_tbl').getElementsByClassName('provincebox');
		var province_box_list_count = province_box_list.length;

		for(var index = 0; index < province_box_list_count; index++) {

			var element = province_box_list[index];

			element.hide();
		}

		$("provinceDropDown").style.borderBottom = "1px solid #eee";
		$("jobDropDown").style.borderBottom      = "1px solid #eee";
		$("branchenDropDown").style.borderBottom = "1px solid #eee";
		$("provinceBox").hide();
		$("jobBox").hide();
		$("branchenBox").hide();
	}
}