function findPosX(obj) {
	var curleft = 0;
	if (obj.offsetParent) {
		while (obj.offsetParent) {
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
	curleft += obj.x;
	return curleft;
}


function findPosY(obj) {
	var curtop = 0;
	if (obj.offsetParent) {
		while (obj.offsetParent) {
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
	curtop += obj.y;
	return curtop;
}


var cupcol = {
	colors_container_id:'cup_colors',
	conid:'colorcon',
	tsw:16,
	tsh:16,
	fsw:50,
	fsh:50,
	init:function() {
		var con = document.getElementById(cupcol.colors_container_id);
		if (!con) return;

		for (var i=0;(a=con.getElementsByTagName('a')[i]);i++){
			a.onmouseover = cupcol.display;
			a.onmouseout = cupcol.clearCon;
			a.onclick = function() {return false;};
		}
	},
	display:function(){
		if (document.getElementById(cupcol.conid)) return;
		var im = document.createElement('img');
		im.setAttribute('width',cupcol.fsw);
		im.setAttribute('height',cupcol.fsh);
		im.setAttribute('src',this.href);
		im.setAttribute('alt','');

		var con = document.createElement('div');
		con.setAttribute('id',cupcol.conid);
		document.getElementsByTagName('a');
		var y = findPosY(this) + cupcol.tsh;
		var x = findPosX(this) + cupcol.tsw;
		con.style.top=y+"px";
		con.style.left=x+"px";
		con.appendChild(im);

		document.getElementsByTagName('body')[0].appendChild(con);
	},
	clearCon:function(){
		var con = document.getElementById(cupcol.conid);
		if (!con) return;
		con.parentNode.removeChild(con);
	}
}


function init(){
	navigation();
	cupcol.init();
	offer.init();
	register.init();
}


function navigation(){
	var con = $('menucontainer');
	if (!con) return;

	for (var i=0; (a = con.getElementsByTagName('a')[i]) ;i++){
		a.onmouseover = function() {
			if (this.previousSibling)
			this.previousSibling.className = 'menu_item_on';
		}
		a.onmouseout = function() {
			if (this.previousSibling)
			this.previousSibling.className = '';
		}
	}
}

var offer = {
	init : function() {
		var con = $('zapytanie_ofertowe');
		if (!con) return;
		con.onsubmit = this.notify;
	},
	notify : function(e) {
		var flag = false;
		var lang = this.getAttribute('lang');
		for (var i=0; (inp = this.getElementsByTagName('input')[i]); i++) {
			if (inp.value == '')
				flag = true;
		}

		if ($("zapytanie_ofertowe_lista") && $("zapytanie_ofertowe_lista").value == '')
			flag = true;

		if (flag) {
			var message = '';
			switch (lang) {
				case 'pl':
					message = 'Proszę wypełnić wszystkie wymagane pola';
					break;

				case 'en':
					message = 'Please fill in all mandatory fields';
					break;

				case 'de':
					message = 'Please fill in all mandatory fields';
					break;
			}
			alert(message);
		}
		return !flag;
	}
}

var register = {
	init : function() {
		var con = $('agencje_rejestracja');
		if (!con) return;
		con.onsubmit = this.notify;
	},
	notify : function(e) {
		var flag = false;
		var lang = this.getAttribute('lang');
		for (var i=0; (inp = this.getElementsByTagName('input')[i]); i++) {
			if (inp.getAttribute('type') == 'text' && inp.value == '')
				flag = true;
		}

		if ($("zgoda") && $("zgoda").checked == false)
			flag = true;

		if (flag) {
			var message = '';
			switch (lang) {
				case 'pl':
					message = 'Proszę wypełnić wszystkie wymagane pola';
					break;

				case 'en':
					message = 'Please fill in all mandatory fields';
					break;

				case 'de':
					message = 'Please fill in all mandatory fields';
					break;
			}
			alert(message);
		}
		return !flag;
	}
}


function $() {
	var elements = new Array();
	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
		if (arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}

window.onload = init;