addLoadEvent(initShowHideNl);
addLoadEvent(initShowHideNav);
addLoadEvent(initJsSelect);
addLoadEvent(initTooltip);

function initTooltip() {
	var links = document.getElementsByTagName("a");
	for (var l = 0; l < links.length; l++ ) {
		if ( links[l].className.indexOf("why") != -1) {
		
			var tooltip = document.getElementById("whyTooltip");
			
			links[l].onmouseover = function() {
				addClass(tooltip, "showTooltip");
			}
				
			links[l].onmouseout = function() {
				remClass(tooltip, "showTooltip");
			}
		}
	}
}

function initShowHideNav() {
	var nav = document.getElementById("topNav");
	var options = nav.getElementsByTagName("li");
	for ( var i = 0; i < options.length; i++) {
		if ( options[i].className.indexOf("sh") != -1) {
			options[i].onmouseover = function() {
				if ( this.getElementsByTagName("ul") ) {
					var lists = this.getElementsByTagName("ul");
					var list = lists[0];
					addClass(list, "show");
				}
			}
			options[i].onmouseout = function() {
				if ( this.getElementsByTagName("ul") ) {
					var lists = this.getElementsByTagName("ul");
					var list = lists[0];
					remClass(list, "show");
				}
			}
		}
	}
}

function initShowHideNl() {
	var links = document.getElementsByTagName('a');
	for (var i=0; i<links.length; i++) {
		if (links[i].className.indexOf('nlSh') != -1) {
			
			var nlForm = document.getElementById("nlForm");
			var arrow = document.getElementById("formDiv").getElementsByTagName("a");
			var arrowBtn = arrow[0];
			
			/* on click */
			links[i].onclick = function(){
				if ( nlForm.className.indexOf('hide') != -1) {
					addClass(nlForm, 'show');
					remClass(nlForm, 'hide');
					addClass(arrowBtn, 'arrowUp');
					remClass(arrowBtn, 'arrowDown');
					
				} else {
					addClass(nlForm, 'hide');
					remClass(nlForm, 'show');
					addClass(arrowBtn, 'arrowDown');
					remClass(arrowBtn, 'arrowUp');
				}
			}
		}
	}
}	

addLoadEvent(initGenericShowHide);

function initGenericShowHide() {
	var ignitors = document.getElementsByTagName('*');
	for (var i = 0; i < ignitors.length; i++) {
		if (ignitors[i].className.indexOf("showHide") != -1) {
				
			ignitors[i].onclick = function() {
				doAction(this);
			}
			ignitors[i].onchange = function() {
				doAction(this);
			}
		}
	}
}
function doAction(elem) {
	var rel = elem.getAttribute('rel');
	var target = null; // target element
	if (rel) {
		switch(rel) {
			case 'nextSibling':
				target = elem.nextSibling;
				if (target.nodeType == 3) {
					target = target.nextSibling;
				}
			break;
			default:
				target = document.getElementById(rel);
			break;
		}
		// action
		if (target) {
			if ((target.style.display == 'none') || (!target.style.display)) {
				target.style.display = 'block';
			} else {
				target.style.display = 'none';
			}
		}
	}
} 

function initJsSelect() {
	var elements = document.getElementsByTagName("li");
	for (var i = 0; i < elements.length; i++ ) {
		if (elements[i].className.indexOf("option") != -1) {
			
			elements[i].onmouseover = function() {
				addClass(this, "hilighted");
			}
			
			elements[i].onmouseout = function() { 
				remClass(this, "hilighted");
			}
			
			elements[i].onclick = function() {
				var wartosc = this.innerHTML; 
				var spans = document.getElementsByTagName("span");
				var value = this.getAttribute("id");
				
				for ( var k = 0; k < spans.length; k++ ) {
					if ( spans[k].className.indexOf("label") != -1 ) {
						spans[k].innerHTML = wartosc;
							
						var fieldset = spans[k].parentNode.parentNode;
						var dropdowns = fieldset.getElementsByTagName("select");
						
						for ( var h = 0; h < dropdowns.length; h++ ) {
							if ( dropdowns[h].className.indexOf("jsReplace") != -1 ) {
								var options = dropdowns[h].getElementsByTagName("option");
								for ( var o = 0; o < options.length; o++ ) {
									val = options[o].getAttribute("value");
									if ( val == value ) {
										options[o].setAttribute("selected", "selected");
										options[o].parentNode.value = val;
										
										//lista formularzy automatycznie wysy�anych po zmianie opcji:
										
											if (document.getElementById("regionSelect")) {
												document.getElementById("regionSelect").submit();
											}
										//koniec listy
									}
								}
							}
						}
					}
				}
			}
		}
	}
	
	var formularze = document.forms;
	for (var i = 0; i < formularze.length; i++ ) {
		var divs = formularze[i].getElementsByTagName("div");
		for (var j = 0; j < divs.length; j++) {
			if ( divs[j].className.indexOf("jsSelect") != -1 ) {
				var spans = divs[j].getElementsByTagName("span");
				for ( var l = 0; l < spans.length; l++ ) {
					if ( spans[l].className.indexOf("sh") != -1 ) {
						var listy = spans[l].parentNode.getElementsByTagName("ul");
						var lista = listy[0];
						spans[l].onclick = function() {
							if ( lista.className.indexOf("visible") != -1 ) {
								remClass(lista, "visible");
							} else {
								addClass(lista, "visible");
							}
						}
						lista.onclick = function() {
							remClass(lista, "visible");
						}
					}
				}
			}
		}
	}
}



