function openClose(id)
{
	document.getElementById(id).style.display = (document.getElementById(id).style.display == "none") ? "block" : "none";
}
	
function displayWindow(url, width, height) 
{
	var Win = window.open(url,"displayWindow",'width=' + width + ',height=' + height + ',resizable=1,scrollbars=yes,menubar=no,left=300,top=200' );
}	

function handicapped_check()
{
	if(document.formularz.handicapped_bool.checked) //zaznaczylem
	{
		document.formularz.handicapped.disabled = false;
	}
	if(!document.formularz.handicapped_bool.checked) //odznaczylem
	{
		document.formularz.handicapped.disabled = true;
		document.formularz.handicapped.value = "";
	}
}


function theme2choice()
{
	if(document.formularz.add_theme.checked)
		reset_additionale_theme();
	
	ile = document.formularz.elements['theme[]'].length;
	licz = 0;
	//zlicza zaznaczone checkboxy
	for(var i=0; i<ile; i++)
	{
		if(document.formularz.elements['theme[]'][i].checked)
		{
			++licz;
			//if(licz == 2)
				//break;
		}
	}
	
	if(licz == 2)
	{
		for(var i=0; i<ile; i++)
		{
			if(!document.formularz.elements['theme[]'][i].checked)
			{
				document.formularz.elements['theme[]'][i].disabled = true;
			}
		}
	}
	else if(licz == 1)
	{
		for(var i=0; i<ile; i++)
		{
			if(document.formularz.elements['theme[]'][i].disabled == true)
			{
				document.formularz.elements['theme[]'][i].disabled = false;
			}
		}
		
		//dodatkowa modyfikacja aby z ostatnich 3 (z bazy jest 7) tylko jeden mozna bylo wybrac
		if(document.formularz.elements['theme[]'][3].checked)
		{
			document.formularz.elements['theme[]'][4].disabled = true;
			document.formularz.elements['theme[]'][5].disabled = true;
		}
		else if(document.formularz.elements['theme[]'][4].checked)
		{
			document.formularz.elements['theme[]'][3].disabled = true;
			document.formularz.elements['theme[]'][5].disabled = true;
		}
		else if(document.formularz.elements['theme[]'][5].checked)
		{
			document.formularz.elements['theme[]'][3].disabled = true;
			document.formularz.elements['theme[]'][4].disabled = true;
		}
	}
	else if(licz == 0)
	{
		//wlaczenie wszystkich checkbox'ow
		for(var i=0; i<ile; i++)
		{
			document.formularz.elements['theme[]'][i].disabled = false;
		}
	}
}

function reset_additionale_theme()
{
	document.formularz.add_theme.checked = false;
	ile = document.formularz.elements['additionale_theme[]'].length;
	licz = 0;
	
	for(var i=0; i<ile; i++)
	{
		document.formularz.elements['additionale_theme[]'][i].checked = false;
		document.formularz.elements['additionale_theme[]'][i].disabled = true;
	}
	alert("jeżeli chcesz wybrać dodatkowe działy płatne, wybierz je ponownie");
}

function add_theme_choice()
{
	
	var flag = true;
	if(document.formularz.add_theme.checked) //zaznaczylem
	{
		ile = document.formularz.elements['theme[]'].length;
		licz = 0;
		//zlicza zaznaczone checkboxy
		for(var i=0; i<ile; i++)
		{
			if(document.formularz.elements['theme[]'][i].checked)
				++licz;
		}
		
		if(licz == 2)
		{
			for(var i=0; i<ile; i++)
			{
				if(!document.formularz.elements['theme[]'][i].checked)
					document.formularz.elements['additionale_theme[]'][i].disabled = false;
			}
		}
		else
		{
			document.formularz.add_theme.checked = false;
			flag = false;
			alert("najpierw wybierz dwa działy w cenie prezentacji (powyżej)");
		}
	}
	if(!document.formularz.add_theme.checked && flag)	//odznaczylem
	{
		ile = document.formularz.elements['additionale_theme[]'].length;
		licz = 0;
	
		for(var i=0; i<ile; i++)
		{
			document.formularz.elements['additionale_theme[]'][i].checked = false;
			document.formularz.elements['additionale_theme[]'][i].disabled = true;
		}
	}
	
}

function validateForm(AForm)
{

    //nazwa ok
    reg = /^[a-zA-Z±ćęłńó¶żĽˇĆĘŁŃÓ¦Ż¬ -.]{2,200}$/;
    wyn = AForm.name.value.match(reg);
    if (wyn == null) 
	{
        alert("Proszę podać poprawna nazwę. " +
              "Nazwa musi zawierać przynajmniej 2 litery. " +
              "Żadne znaki poza literami, spacjami, '-' i '.' nie s± dozwolone.");
        return false;
    }

	//opcja cenowa ok
	if (AForm.price_opc.selectedIndex == '') 
	{
    	alert("Proszę wybrać opcję cenow±.");
        return false;
    }
	
	//wersja jezykowa (polski zaznaczony na stale??)
	s = false;
	for(var i=0; i<AForm.elements['lang_ver[]'].length; i++)
	{
		if(AForm.elements['lang_ver[]'][i].checked)
		{
			s=true;
			break;
		}
	}
	
	/*if(!s && AForm.another_lang_ver.value == "")
	{
		alert("Nie wybrano żadnej opcji wersji językowych.");
    	return false;
	}*/

	//propozycja domeny ok
    /*reg2 = /^[a-zA-Z0-9-]{3,30}$/;
    wyn2 = AForm.poland_subsite_name.value.match(reg2);
    if (wyn2 == null) 
	{
        alert("Prosze zaproponować adres strony www. " +
			  "Adres powinien mieć przynajmniej 3 litery i nie wiecej niż 30 liter. " +
			  "Dozwolone s± litery (bez polskich znaków) oraz cyfry i znak '-' ");
        return false;
    }*/
	
	//typ obiektu
	s = false;
	for(var i=0; i<AForm.elements['object_type[]'].length; i++)
	{
		if(AForm.elements['object_type[]'][i].checked)
		{
			s=true;
			break;
		}
	}
	if(!s)
	{
		alert("Nie wybrano żadnego typu obiektu.");
    	return false;
	}

	//standard obiektu
	if (AForm.object_standard.selectedIndex == '') 
	{
    	alert("Proszę wybrać standard obiektu.");
        return false;
    };
	
	//miejscowosc
	if (AForm.city.selectedIndex == '' && AForm.another_city.value == "") 
	{
    	alert("Proszę wybrać miasto lub wpisać nowe.");
        return false;
    };	

	//wojewodztwo
	if (AForm.province.selectedIndex == '') 
	{
    	alert("Proszę wybrać województwo.");
        return false;
    };
	
	//ulica i numer lokalu
	if (AForm.adr1.value == "") 
	{
    	alert("Proszę wpisać ulice i numer lokalu.");
        return false;
    };
	
	//kod pocztowy
	reg3 = /^[0-9]{2}-[0-9]{3}$/;
    wyn3 = AForm.post_code.value.match(reg3);
    if (wyn3 == null) 
	{
        alert("Proszę podać kod pocztowy w formacie: xx-xxx , np. 59-870");
        return false;
    }

	//telefon I, II, do dzialu rezerwacji
	if (AForm.phone1.value == "" && AForm.reserv_phone.value == "") 
	{
    	alert("Proszę wpisać przynajmniej jeden numer telefonu do obiektu.");
        return false;
    };
		
	//fax - nie weryfikowany
	
	//adres e-mail
	reg4 = /^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,4}$/;
    wyn4 = AForm.email.value.match(reg4);
    if(wyn4 == null) 
	{
        alert("Proszę podać poprawny adres e-mail dla obiektu. Poprawny adres musi zawierać małpę oraz co najmniej dwa człony nazwy serwera, np. login@serwer.pl");
        return false;
    }
	if(AForm.email.value != AForm.re_email.value)
	{
	    alert("Pola z wła¶ciwym adresem e-mail obiektu i potwierdzeniem nie s± identyczne");
        return false;		
	}

	//strona www - nie weryfikowany
	
	//imie i nazwisko - os kontaktowa
	if(AForm.contact_name.value == "")
	{
	    alert("Brak nazwiska i imienia osoby kontaktowej");
        return false;		
	}

	//numer telefonu - os kontaktowa
	if(AForm.phone3.value == "")
	{
	    alert("Brak numeru telefonu do osoby kontaktowej");
        return false;		
	}
	
	//adres e-mail - os kontaktowa
	reg5 = /^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,4}$/;
    wyn5 = AForm.email2.value.match(reg5);
    if(wyn5 == null) 
	{
        alert("Proszę podać poprawny adres e-mail do osoby kontaktowej. Poprawny adres musi zawierać małpę oraz co najmniej dwa człony nazwy serwera, np. login@serwer.pl ");
        return false;
    }
	if(AForm.email2.value != AForm.re_email2.value)
	{
	    alert("Pola z wła¶ciwym adresem e-mail osoby kontaktowej i potwierdzeniem nie s± identyczne");
        return false;		
	}
	
	//nazwa firmy - faktura
	if(AForm.company_fv.value == "")
	{
	    alert("Brak nazwy firmy - dane do faktury");
        return false;		
	}
	
	//ulica i numer lokalu - faktura
	if(AForm.adr_fv.value == "")
	{
	    alert("Brak adresu - dane do faktury");
        return false;		
	}
	
	//miasto - faktura
	if(AForm.city_fv.value == "")
	{
	    alert("Brak nazwy miasta - dane do faktury");
        return false;		
	}
	
	//kod pocztowy - faktura
	reg6 = /^[0-9]{2}-[0-9]{3}$/;
    wyn6 = AForm.post_code_fv.value.match(reg6);
    if (wyn6 == null) 
	{
        alert("Proszę podać kod pocztowy do faktury w formacie: xx-xxx , np. 59-870");
        return false;
    }

	//NIP - faktura
	reg7 = /^[0-9]{3}-[0-9]{2}-[0-9]{2}-[0-9]{3}$/;
    wyn7 = AForm.nip_fv.value.match(reg7);
    if(wyn7 == null) 
	{
        alert("Proszę podać NIP firmy do faktury w formacie: xxx-xx-xx-xxx , np. 370-45-45-941");
        return false;
    }
  	var arg = AForm.nip_fv.value.replace(/-/g,'');
  	var waga = "657234567";
  	var sum=0;
  	var index=8;
  	for(index=8; index>=0 ;index--)
	{
    		sum += (parseInt(waga.charAt(index)) * parseInt(arg.charAt(index)));
	}
   	if ( !( (sum % 11) == 10 ? false : ((sum % 11) == parseInt(arg.charAt(9))) ) )
	{
		alert("Niepoprawny numer NIP");
    	return false;
	}


	//INFORMACJA SKROCONA
	if(AForm.object_short_desc.value == "")
	{
	    alert("Wpisz informację skrócon± dla obiektu");
        return false;		
	}
	
	//INFORMACJA OGOLNA + POLOZENIE
	if(AForm.general_info.value == "")
	{
	    alert("Wpisz informację ogóln± o obiekcie + położenie");
        return false;		
	}
	
	//ZAKWATEROWANIE
	if(AForm.accommodation.value == "")
	{
	    alert("Wpisz informacje o zakwaterowaniu");
        return false;		
	}

	//HANDICAPPED
	if(AForm.handicapped_bool.checked && AForm.handicapped.value == "")
	{
		alert("Uzupełnij informacje nt.przystosowania obiektu dla osob niepełnosprawnych");
        return false;		
	}
	
	//WYZYWIENIE
	if(AForm.food.value == "")
	{
	    alert("Wpisz informacje nt.wyżywienia");
        return false;		
	}
	
	//ukryte dzialy
	//WYPOSAŻENIE
	if(document.getElementById('wyposazenie').style.display == "block" && AForm.equipment.value == "")
	{
		alert("Uzupełnij informacje nt.WYPOSAŻENIE");
        return false;		
	}
	
	//KONFERENCJE
	if(document.getElementById('konferencje').style.display == "block" && AForm.conference.value == "")
	{
		alert("Uzupełnij informacje nt.KONFERENCJE");
        return false;		
	}
	
	//SPA & WELLNESS
	if(document.getElementById('spa').style.display == "block" && AForm.spa.value == "")
	{
		alert("Uzupełnij informacje nt.SPA & WELLNESS");
        return false;		
	}
	
	//SPORT I REKREACJA
	if(document.getElementById('sport').style.display == "block" && AForm.sport_recreation.value == "")
	{
		alert("Uzupełnij informacje nt.SPORT I REKREACJA");
        return false;		
	}
	
	//USŁUGI DODATKOWE
	if(document.getElementById('uslugi').style.display == "block" && AForm.additionale_services.value == "")
	{
		alert("Uzupełnij informacje nt.USŁUGI DODATKOWE");
        return false;		
	}
	
	//CENNIKI
	if(document.getElementById('cenniki').style.display == "block" && AForm.price_list.value == "")
	{
		alert("Uzupełnij informacje nt.CENNIKI");
        return false;		
	}
	
	//ATRKACJE W OKOLICY
	if(document.getElementById('atrakcje').style.display == "block" && AForm.sights.value == "")
	{
		alert("Uzupełnij informacje nt.ATRAKCJE W OKOLICY");
        return false;		
	}
	
	//OFERT SPECJALNE
	if(document.getElementById('oferty').style.display == "block" && AForm.special_offer.value == "")
	{
		alert("Uzupełnij informacje nt.OFERTY SPECJALNE");
        return false;		
	}

	//REGULAMIN
	if(!document.formularz.conditions_bool.checked)
	{
		alert("Brak zaznaczonego pola: Zgadzam się z regulaminem");
        return false;
	}
	
	//DANE OSOBOWE
	if(!document.formularz.personal_data_bool.checked)
	{
		alert("Brak zaznaczonego pola: Wyrażam zgodę na przechowywanie i przetwarzanie moich danych osobowych przez firmę Poland Gateway");
        return false;
	}

    return true;	
}

function zliczaj(nr_f, nr_l, nr_t, nr_chars) 
{ 
		var tekst = document.forms[0].elements[nr_t].value;
		var dl_tresc = document.forms[0].elements[nr_t].value.length;
		var maxlen = nr_chars;
		var prawdziwa = 0;
		var entery = 0; 
		
		for (i=0; i<dl_tresc; i++) 
		{ 
			if (tekst.charAt(i) == "\n") 
			{ 
				prawdziwa++; entery++;
			} prawdziwa++; 
		} // koniec for i 
		document.forms[0].elements[nr_l].value = maxlen - prawdziwa;
		
		if (prawdziwa>maxlen) 
		{  
			document.forms[0].elements[nr_t].value = document.forms[0].elements[nr_t].value.substring(0,maxlen-entery); 
				
			document.forms[0].elements[nr_l].value = 0; alert("Maksymalna długo¶ć to " + maxlen +" znaków!"); 
		} 
}