// OBSLUGA FORMULARZA
function goUseForm() {
	var formularz = $('form_formularz');
	if (formularz) {
		//obsluga list rozwijanych
		var formSELECT = $$('.form_select');
		if (formSELECT[0]) {
			formSELECT.each(function(el, key) {
				var formSELECT_parent = $(el.parentNode);
				var formSELECT_value = el.getElement('.form_select_value');
				var formSELECT_button = el.getElement('.form_select_text');
				var formSELECT_list = el.getElement('.form_select_list');
				var formSELECT_elements = el.getElements('.form_select_list a');
				if (formSELECT_elements[0]) {
					formSELECT_parent.setStyle('position', 'relative');
					formSELECT_parent.setStyle('z-index', '1');
			
					el.addEvent('mouseleave', function() {
						formSELECT_list.setStyle('display', 'none');
						formSELECT_list.removeClass('form_select_list_open');
						formSELECT_parent.setStyle('z-index', '1');
					});
			
					formSELECT_button.addEvent('click', function() {
						if (formSELECT_list.hasClass('form_select_list_open')) {
							formSELECT_list.setStyle('display', 'none');
							formSELECT_list.removeClass('form_select_list_open');
							formSELECT_parent.setStyle('z-index', '1');
						} else {
							formSELECT_list.setStyle('display', 'block');
							formSELECT_list.addClass('form_select_list_open');
							formSELECT_parent.setStyle('z-index', '2');
						}
						return false;
					});
				
					formSELECT_elements.each(function(elem, klucz) {
						elem.addEvent('click', function() {
							formSELECT_list.setStyle('display', 'none');
							formSELECT_list.removeClass('form_select_list_open');
							formSELECT_value.value = elem.rel;
							formSELECT_button.innerHTML = elem.innerHTML;
							formSELECT_parent.setStyle('z-index', '1');
							return false;
						});
					});
				
					if (formSELECT_value.value != '') {
						var is_value = 0;
						formSELECT_elements.each(function(elem, klucz) {
							if (elem.rel == formSELECT_value.value) {
								formSELECT_value.value = elem.rel;
								formSELECT_button.innerHTML = elem.innerHTML;
								is_value = 1;
							} 
						});
						if (is_value == 0) {
							formSELECT_value.value = formSELECT_elements[0].rel;
							formSELECT_button.innerHTML = formSELECT_elements[0].innerHTML;
						}
					} else {
						formSELECT_value.value = formSELECT_elements[0].rel;
						formSELECT_button.innerHTML = formSELECT_elements[0].innerHTML;
					}
				}
			});
		}

		//obsluga checkboxow
		var formCHECKBOX = $$('.form_checkbox'); 
		if (formCHECKBOX[0]) {
			formCHECKBOX.each(function (el, key) {
				var formCHECKBOX_value = el.getElement('.form_checkbox_value');
				var formCHECKBOX_button = el.getElement('.form_checbox_box');
				if (formCHECKBOX_button) {
					formCHECKBOX_button.addEvent('click', function () {
						if (formCHECKBOX_button.hasClass('form_checbox_box_check')) {
							formCHECKBOX_button.innerHTML = '';
							formCHECKBOX_value.value = 'NO';
							formCHECKBOX_button.removeClass('form_checbox_box_check');
						} else {
							formCHECKBOX_button.innerHTML = '<span>&nbsp;</span>';
							formCHECKBOX_value.value = 'YES';
							formCHECKBOX_button.addClass('form_checbox_box_check');
						}
						return false;
					});
			
					if (formCHECKBOX_value.value != '') {
						if (formCHECKBOX_value.value == 'YES') {
							formCHECKBOX_button.innerHTML = '<span>&nbsp;</span>';
							formCHECKBOX_value.value = 'YES';
							formCHECKBOX_button.addClass('form_checbox_box_check');
						} else {
							formCHECKBOX_button.innerHTML = '';
							formCHECKBOX_value.value = 'NO';
							formCHECKBOX_button.removeClass('form_checbox_box_check');
						}
					} else {
						formCHECKBOX_button.innerHTML = '';
						formCHECKBOX_value.value = 'NO';
						formCHECKBOX_button.removeClass('form_checbox_box_check');
					}
				}
			});
		}

		//obsluga zakladek 
		var formTAB_button = $$('.formularzUSLUGI_button');
		var formTAB_body = $$('.formularzUSLUGI_body');
		if (formTAB_button[0]) { 
			formTAB_button.each(function(el, key) {
				el.addEvent('click', function () {
					if (el.hasClass('formularzUSLUGI_button_sel')) {
						formTAB_button.removeClass('formularzUSLUGI_button_sel');
						formTAB_body.setStyle('display', 'none');
					} else {
						formTAB_button.removeClass('formularzUSLUGI_button_sel');
						el.addClass('formularzUSLUGI_button_sel');
						formTAB_body.setStyle('display', 'none');
						$(el.rel).setStyle('display', 'block');	
					}
					return false;							
				});
			});
		}
		
		if (formTAB_body[0]) { 
			formTAB_body.each(function(el, key) {
				var button_prev = el.getElement('.form_button_prev');
				if (button_prev) alert('PREV');
				if (button_prev && key > 0) {
					button_prev.addEvent('click', function () {
						formTAB_button[key - 1].fireEvent('click');
						return false;
					});
				}
				
				var button_next = el.getElement('.form_button_next');
				if (button_next) {
					button_next.addEvent('click', function () {
						var nowy_klucz = key + 1; if (nowy_klucz == formTAB_body.length) { nowy_klucz = 0; }
						formTAB_button[nowy_klucz].fireEvent('click');
						return false;
					});
				}				
			});
		}
		
		var open_kadry = formularz.getElement('.form_checkbox input.formularzUSLUGI_kadry');
		var open_ksiegowosc = formularz.getElement('.form_checkbox input.formularzUSLUGI_ksiegowosc');
		if (formTAB_button[0] && open_kadry && open_kadry.value == 'YES') {
			formTAB_button[0].fireEvent('click');
		} else if (formTAB_button[1] && open_ksiegowosc && open_ksiegowosc.value == 'YES') {
			formTAB_button[1].fireEvent('click');
		}
		
		//obsluga wysylania formularza 
		var button_send = formularz.getElement('.form_button_send');
		if (button_send) {
			button_send.addEvent('click', function () {
				formularz.submit();
				return false;
			});
		}
		
		//obsluga resetowania formularza
		var button_clear = formularz.getElement('.form_button_clear');
		if (button_clear) {
			button_clear.addEvent('click', function () {
				formularz.reset();
				return false;
			});
		}
	}
}
// OBSLUGA FORMULARZA - KONIEC

// OBSLUGA ROTACJI CERTYFIKATOW
function goAnimateCertyficate() {
	var cert = $('certyfikatyANIM_INNER');
	if (cert) {	
		var zewnetrzny = $('certyfikatyANIM');
		var szerokosc = cert.offsetWidth;
		if (szerokosc > zewnetrzny.offsetWidth) {	
			var tabela = cert.getElement('table tr').innerHTML;
			cert.innerHTML = '<table cellpadding="0" cellspacing="0" border="0" summary=""><tbody><tr align="center" valign="middle">' + tabela + tabela + '</tr></tbody></table>';
			var czasomierz = 0;
			var przesuniecie = 0;
			var certFx = new Fx.Elements(cert, {'link': 'cancel', duration: 1000, transition: Fx.Transitions.linear});
			var przesuwanie = function () {
				przesuniecie += 25;
				if (przesuniecie > szerokosc) {
					przesuniecie = przesuniecie - szerokosc;
					cert.setStyle('left', (25-przesuniecie));
				}
				certFx.start({'0':{'left':(0-przesuniecie)}});
			}
			czasomierz = przesuwanie.periodical(1005);
		}
	}
}
// OBSLUGA ROTACJI CERTYFIKATOW - KONIEC

// OBSLUGA MENU GLOWNEGO
function goAnimateMainMenu() {
	var menu = $('menu');
	if (menu) {
		var menuElem = $$('#menu > a');
		var menuElemSel = $$('#menu a.selected');
		var menuBack = $('menu-tlo');
		var menuBackInner = menuBack.getElement('.center-side');
		
		var menuFx = new Fx.Elements([menuBack, menuBackInner], {'link': 'cancel', duration: 600, transition: Fx.Transitions.Back.easeOut});
		
		if (menuElemSel[0]) {
			menuFx.set({
				'0': {
					'left': menuElemSel[0].offsetLeft + menu.offsetLeft,
					'opacity': 1
				}, 
				'1': {
					'width': menuElemSel[0].offsetWidth - 20
				}
			});
		} else {
			menuFx.set({
				'0': {
					'left': menu.offsetLeft,
					'opacity': 0
				}, 
				'1': {
					'width': 0
				}
			});
		}
		
		menuElem.each(function (el, key) {
			el.addEvents({
				'mouseover': function () {
					menuFx.start({
						'0': {
							'left': el.offsetLeft + menu.offsetLeft,
							'opacity': 1
						}, 
						'1': {
							'width': el.offsetWidth - 20
						}
					});
				}, 
				'mouseout': function () {
					if (menuElemSel[0]) {
						menuFx.start({
							'0': {
								'left': menuElemSel[0].offsetLeft + menu.offsetLeft,
								'opacity': 1
							}, 
							'1': {
								'width': menuElemSel[0].offsetWidth - 20
							}
						});
					} else {
						menuFx.start({
							'0': {
								'left': menu.offsetLeft,
								'opacity': 0
							}, 
							'1': {
								'width': 0
							}
						});
					}		 
				}
			});
		});		
	}		
}
// OBSLUGA MENU GLOWNEGO - KONIEC

//OBSŁUGA OTWIERANIA MENU 
function goOpenMenu() {
	var submenu = $$('#sub_menu > div > a');
	submenu.each(function (el, key) {
		if (el.hasClass('selected')) {
			var link_rodzic = $$('#sub_menu > a[rel=' + $(el.parentNode).id + ']');
			if (link_rodzic[0]) {
				link_rodzic[0].fireEvent('click');
			}
		}
	});
}
//OBSŁUGA OTWIERANIA MENU - KONIEC

//OBSŁUGA ROZWIJANIA MENU
function goMenu() {
	var menu = $$('#sub_menu > a');
	var submenu = $$('#sub_menu > div');
	if (menu[0]) {
		var menuFx = new Fx.Elements(submenu, {'link': 'chain', duration: 250, transition: Fx.Transitions.linear});
		menu.each(function (el, key) {
			el.addEvents({
				'click': function () {
					if (el.hasClass('parent')) {
						var otwarty = el.hasClass('opened');
						menu.removeClass('opened');
						if (!otwarty) { el.addClass('opened'); }
						var stany = {};
						submenu.each(function (elem, klucz) {
							if (elem.id == el.rel && !otwarty) {
								var zawartosc = $$('#' + el.rel + ' > a');
								var wysokosc_diva = 0;
								zawartosc.each(function (odnosnik, jego_klucz) {
									wysokosc_diva += odnosnik.offsetHeight;
								});
								stany['' + klucz] = {
									'opacity': 1,
									'height': wysokosc_diva
								}
							} else {
								stany['' + klucz] = {
									'opacity': 0,
									'height': 0
								}
							}
						});
						menuFx.start(stany);
						return false;
					}
				}
			});
		});
	}
}
//OBSŁUGA ROZWIJANIA MENU - KONIEC

window.addEvent('domready', function() {
	goAnimateMainMenu();
	goMenu();
	goOpenMenu();
	goAnimateCertyficate();
	goUseForm();
	
	Cufon.replace($$('.cufon-js, #sub_menu a'), {
		hover: true
	});
});

