var xmlHttp = createXmlHttpRequestObject();
var wiadomosc;
var wiadomoscus;
var hello;
var halologin;
var cohaslo;



function loading() 
{
// poladowaniu
var oDivtab = document.getElementById("tabone");
oDivtab.style.visibility = "visible";
var oDivlo = document.getElementById("loading");
oDivlo.style.visibility = "hidden";	
}

function pczat() {
var oDive = document.getElementById('czatbox');
oDive.style.visibility = 'visible';
}
function cczat() {
var oDive = document.getElementById('czatbox');
oDive.style.visibility = 'hidden';
}

function dwa() {

var oknoDivok2 = document.createElement("div");
		var oknoText2 = document.createTextNode("Oddałeś już swój głos. Nie możesz głosować dwa razy...");
		oknoDivok2.appendChild(oknoText2);
		oknoDivok2.className= "tip";
		document.body.appendChild(oknoDivok2);
		setTimeout(function() {document.body.removeChild(oknoDivok2); 
		},3000);

}


function okno() {
var oknoDiv = document.createElement("div");
var oknoText = document.createTextNode("To nie jest poprawny adres e-mail, wpisz swój adres e-mail i spróbuj ponownie...");
oknoDiv.appendChild(oknoText);
oknoDiv.className= "tip";
document.body.appendChild(oknoDiv);

setTimeout(function() {document.body.removeChild(oknoDiv); },3000);

}

function sMail()
{
if (isValidEmail(document.getElementById("lostmail").value)) { 
process4();
setTimeout(function() {
					
					if(cohaslo!="sendm") 
					
					{
		
		var oknoDivok1 = document.createElement("div");
		var oknoText1 = document.createTextNode("Uzytkownik o podanym loginie i adresie nie istnieje...spróbuj ponownie");
		oknoDivok1.appendChild(oknoText1);
		oknoDivok1.className= "tip";
		document.body.appendChild(oknoDivok1);
		setTimeout(function() {document.body.removeChild(oknoDivok1); 
		},3000);
		document.getElementById("lostmail").focus(); document.getElementById("lostmail").select();
		document.getElementById("subp").disabled=false;
					
					
					
					
					}
					
					else 
					
					{
					
		var oknoDivok1 = document.createElement("div");
		var oknoText1 = document.createTextNode("Haslo zostalo wyslane na podany mail...");
		oknoDivok1.appendChild(oknoText1);
		oknoDivok1.className= "tip";
		document.body.appendChild(oknoDivok1);
		setTimeout(function() {document.body.removeChild(oknoDivok1); 
		},3000);
		

					}



					
					 },4000);


} else
		{
		
		var oknoDivok1 = document.createElement("div");
		var oknoText1 = document.createTextNode("To nie jest prawidlowy adres E-mail");
		oknoDivok1.appendChild(oknoText1);
		oknoDivok1.className= "tip";
		document.body.appendChild(oknoDivok1);
		setTimeout(function() {document.body.removeChild(oknoDivok1); 
		},3000);
		document.getElementById("lostmail").focus(); document.getElementById("lostmail").select();
		document.getElementById("subp").disabled=false;
		}

}


function isValidEmail(sText) {
var reEmail = /^(?:\w+\.?)*\w+@(?:\w+\.)+\w+$/;
return reEmail.test(sText);
}

function sSubs() {
// sprawdzenie na 1 miejscu dlugosci loginu
//----------------------------------------------------------------------------------------------------------------------
var loginpop = document.getElementById("flogin").value;
var loginlen = loginpop.length;

if ((loginlen)>2 && (loginlen)<11 ) {
var loginok = "tak";} else { 

var oknoDivok1 = document.createElement("div");
var oknoText1 = document.createTextNode("Login musi się składać minimalnie z 3 znaków");
oknoDivok1.appendChild(oknoText1);
oknoDivok1.className= "tip";
document.body.appendChild(oknoDivok1);
setTimeout(function() {document.body.removeChild(oknoDivok1); 
},3000);
document.getElementById("flogin").focus(); document.getElementById("flogin").select();
document.getElementById("sub").disabled=false;
}
// koniec sprawdzania loginu
//----------------------------------------------------------------------------------------------------------------------------
// sprawdzenie na 2 miejscu dlugosci hasla
//----------------------------------------------------------------------------------------------------------------------
if ((document.getElementById("fhaslo").value.length)>2 && (document.getElementById("fhaslo").value.length)<11 ) {
var passok = "tak";} else { 

var oknoDivok2 = document.createElement("div");
var oknoText2 = document.createTextNode("Hasło musi się składać minimalnie z 3 znaków");
oknoDivok2.appendChild(oknoText2);
oknoDivok2.className= "tip";
document.body.appendChild(oknoDivok2);
setTimeout(function() {document.body.removeChild(oknoDivok2); 
},3000);
document.getElementById("fhaslo").focus(); document.getElementById("fhaslo").select();
document.getElementById("sub").disabled=false;
}
// koniec sprawdzania hasla
//----------------------------------------------------------------------------------------------------------------------------
// sprawdzenie zgodnosci hasel
//--------------------------------------------------------------------------------------------------------------------------

if ((document.getElementById("fhaslo").value)==(document.getElementById("f2haslo").value)) {
var passdl = "tak";} else 
{ 

var oknoDivok3 = document.createElement("div");
var oknoText3 = document.createTextNode("Hasła muszą być takie same...");
oknoDivok3.appendChild(oknoText3);
oknoDivok3.className= "tip";
document.body.appendChild(oknoDivok3);
setTimeout(function() {document.body.removeChild(oknoDivok3); 
},3000);
document.getElementById("fhaslo").focus(); document.getElementById("fhaslo").select();
document.getElementById("sub").disabled=false;
}
//--------------------------------------------------------------------------------------------------------------------
if ((loginok=="tak") && (passok=="tak")) {

if (passdl=="tak")	 { 
// jezeli dl sa poprawne:


process3();
setTimeout(function() {
					//alert(hello);alert(halologin);
										  
										  
										  if(halologin=="dobry") { zapis(); }
           					else    {
	    					var oknoDivok4 = document.createElement("div");
							var oknoText4 = document.createTextNode("Formularz zwiera błędy, popraw dane i spobuj ponownie");
							oknoDivok4.appendChild(oknoText4);
							oknoDivok4.className= "tip";
							document.body.appendChild(oknoDivok4);
							setTimeout(function() {document.body.removeChild(oknoDivok4);},3000); }
							document.getElementById("sub").disabled=false;



										  
										  
										  
										  
										  },5000);

}





}







}













// ----------------------------------------------------------------------------------------------------------------------------

function zapis() 
		{


		//var oknoDivok = document.createElement("div");
		//var oknoText = document.createTextNode("Dziekujemy za rejestracje na stronie suchagora.pl");
		//oknoDivok.appendChild(oknoText);
		//oknoDivok.className= "tip";
		//document.body.appendChild(oknoDivok);
		var form = document.getElementById("logform");
		form.style.visibility = "hidden";
		form.style.position = "absolute";	
		var formok = document.getElementById("okmsg");
		formok.style.visibility = "visible";
process();
		//setTimeout(function() {document.body.removeChild(oknoDivok);},3000);


	}

//{ okno();  document.getElementById("fmail").style.backgroundColor='#FFFFCC'; document.getElementById("fmail").focus(); //document.getElementById("fmail").select(); }}



function createXmlHttpRequestObject()
   {
		var xmlHttp;
			 try
			 {
			      xmlHttp = new XMLHttpRequest();
		     }
			 catch (e)
			 {
			 			var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0",
														"MSXML2.XMLHTTP.5.0",
														"MSXML2.XMLHTTP.4.0",
														"MSXML2.XMLHTTP.3.0",
														"MSXML2.XMLHTTP",
														"Microsoft.XMLHTTP");
						for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++)
						{
							try
							{
								xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
							}
							catch (e) {}
						}
			
			 
			 }
		if(!xmlHttp)
		alert("Blad podczas tworzenia obiektu");
		else
		return xmlHttp;
	}
	
// wysylanie asynch zadania
function process()
    {
	// gdy obiekt nie jest zajety
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	       {
		   // pobieranie imienia z form
		   var pole1 = encodeURIComponent(document.getElementById("flogin").value);
		   var pole2 = encodeURIComponent(document.getElementById("fhaslo").value);
		   var pole3 = encodeURIComponent(document.getElementById("f2haslo").value);
		   var pole4 = encodeURIComponent(document.getElementById("fimie").value);
		   var pole5 = encodeURIComponent(document.getElementById("fnazwisko").value);
		   var pole6 = encodeURIComponent(document.getElementById("fmail").value);
		   // wykonuje enter.php
		   //xmlHttp.open("GET","enter.php?polea=" + pole1 +"&poleb=" + pole2 , true);
		   xmlHttp.open("POST","save.php", true);
		   // metoda obslugi odpowiedzi serwera
		   //xmlHttp.onreadystatechange = handleServerResponse;
		   // wysylanie zadanie do serwera
		   //xmlHttp.send(null);
		   xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;');
		   xmlHttp.send("polea="+pole1+"&poleb="+pole2+"&polec="+pole3+"&poled="+pole4+"&polee="+pole5+"&polef="+pole6);
		   }
		   else
		   // jesli zajete to proba po sek
		   setTimeout('process()', 1000);
    }

function loading() 
{
// poladowaniu
var oDivtab = document.getElementById("tabone");
oDivtab.style.visibility = "visible";
var oDivlo = document.getElementById("loading");
oDivlo.style.visibility = "hidden";	
}


function process2()
    {
	// gdy obiekt nie jest zajety
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	       {
		   // pobieranie imienia z form
		   name = encodeURIComponent(document.getElementById("flogin").value);
		   // password = encodeURIComponent(document.getElementById("myPass").value);
		   // wykonuje enter.php
		   xmlHttp.open("GET","enter2.php?name=" + name , true);
		   // metoda obslugi odpowiedzi serwera
		   xmlHttp.onreadystatechange = handleServerResponse;
		   // wysylanie zadanie do serwera
		   xmlHttp.send(null);
		   }
		   else
		   // jesli zajete to proba po sek
		   setTimeout('process2()', 1000);
    }

function process3()
    {
	// gdy obiekt nie jest zajety
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	       {
		   // pobieranie imienia z form
		   logintest = encodeURIComponent(document.getElementById("flogin").value);
		   // password = encodeURIComponent(document.getElementById("myPass").value);
		   // wykonuje enter.php
		   xmlHttp.open("GET","enter3.php?logintest=" + logintest , true);
		   // metoda obslugi odpowiedzi serwera
		   xmlHttp.onreadystatechange = handleServerResponse3;
		   // wysylanie zadanie do serwera
		   xmlHttp.send(null);
		   }
		   else
		   // jesli zajete to proba po sek
		   setTimeout('process3()', 1000);
    }


function process4()
    {
	// gdy obiekt nie jest zajety
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	       {
		   // pobieranie imienia z form
		   adres = encodeURIComponent(document.getElementById("lostmail").value);
		   lostlogin = encodeURIComponent(document.getElementById("lostlogin").value);
		   // password = encodeURIComponent(document.getElementById("myPass").value);
		   // wykonuje enter.php
		   xmlHttp.open("GET","pass.php?name=" + adres +"&lostlogin=" + lostlogin, true);
		   // metoda obslugi odpowiedzi serwera
		   xmlHttp.onreadystatechange = handleServerResponse4;
		   // wysylanie zadanie do serwera
		   xmlHttp.send(null);
		   }
		   else
		   // jesli zajete to proba po sek
		   setTimeout('process4()', 1000);
    }



function handleServerResponse3()
	{
	// tylko jesli jest wolny
	if (xmlHttp.readyState == 4)
		{
		// 200 pomyslnie zakonczony
		if (xmlHttp.status == 200)
				{
				// wyodrebnia wiadomosc XML wysylana z serwera
				xmlResponse = xmlHttp.responseXML;
				// pobiera element glowny ze struktury pliku XML
				xmlDocumentElement = xmlResponse.documentElement;
				// pobiera wiadomosc tekstowa pierwszego potomka elementu document
				halologin = xmlDocumentElement.firstChild.data;
				// aktualizuje dane wyswietlane klientowi 
				//document.getElementById("divMessage").innerHTML ='<i>' + hello+ '</i>';

				
				
				// ponawia sekwencje
				setTimeout('process3()', 1000);
				}
				// dla statusu innego niz 200 zgalasza blad
			else
				{ alert("Blad podczas uzyskiwania dostepu do serwera" + xmlHttp.statusText);
				}
		}
	}

function handleServerResponse4()
	{
	// tylko jesli jest wolny
	if (xmlHttp.readyState == 4)
		{
		// 200 pomyslnie zakonczony
		if (xmlHttp.status == 200)
				{
				// wyodrebnia wiadomosc XML wysylana z serwera
				xmlResponse = xmlHttp.responseXML;
				// pobiera element glowny ze struktury pliku XML
				xmlDocumentElement = xmlResponse.documentElement;
				// pobiera wiadomosc tekstowa pierwszego potomka elementu document
				cohaslo = xmlDocumentElement.firstChild.data;
				// aktualizuje dane wyswietlane klientowi 
				//document.getElementById("divMessage").innerHTML ='<i>' + hello+ '</i>';

				
				
				// ponawia sekwencje
				//setTimeout('process4()', 1000);
				}
				// dla statusu innego niz 200 zgalasza blad
			else
				{ alert("Blad podczas uzyskiwania dostepu do serwera" + xmlHttp.statusText);
				}
		}
	}


function handleServerResponse()
	{
	// tylko jesli jest wolny
	if (xmlHttp.readyState == 4)
		{
		// 200 pomyslnie zakonczony
		if (xmlHttp.status == 200)
				{
				// wyodrebnia wiadomosc XML wysylana z serwera
				xmlResponse = xmlHttp.responseXML;
				// pobiera element glowny ze struktury pliku XML
				xmlDocumentElement = xmlResponse.documentElement;
				// pobiera wiadomosc tekstowa pierwszego potomka elementu document
				hello = xmlDocumentElement.firstChild.data;
				// aktualizuje dane wyswietlane klientowi 
				if (hello==1) { var hellowiad="Login jest zajęty przez innego użytkownika"; } else { var hellowiad="Login jest wolny"; }
				document.getElementById("divMessage").innerHTML ='<i>' + hellowiad + '</i>';

				
				
				// ponawia sekwencje
				setTimeout('process2()', 1000);
				}
				// dla statusu innego niz 200 zgalasza blad
			else
				{ alert("Blad podczas uzyskiwania dostepu do serwera" + xmlHttp.statusText);
				}
		}
	}

//-------------------------------------------------------------------------------------------
function liveczatmsg() {

// gdy obiekt nie jest zajety
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	       {
		   // pobieranie nicku z form i tresci
		   var pole1 = encodeURIComponent(document.getElementById("czatmsg").value);
		   var pole2 = encodeURIComponent(document.getElementById("czatuser").value);
		   
		   // wykonuje enter.php
		   //xmlHttp.open("GET","enter.php?polea=" + pole1 +"&poleb=" + pole2 , true);
		   xmlHttp.open("POST","saveczat.php", true);
		   // metoda obslugi odpowiedzi serwera
		   //xmlHttp.onreadystatechange = handleServerResponse;
		   // wysylanie zadanie do serwera
		   //xmlHttp.send(null);
		   xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;');
		   xmlHttp.send("polea="+pole1+"&poleb="+pole2);
		   document.getElementById("czatmsg").value="";
		    
		   document.getElementById("sendms").disabled=false;
		   document.getElementById("czatmsg").focus();
		   }
		   else {
		   // jesli zajete to proba po sek
		   setTimeout('liveczatmsg()', 1000); }

}


function readmsg() {
	// gdy obiekt nie jest zajety
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	       {
		   // pobieranie imienia z form
		   //var cuse = "go";
		   var cuser = encodeURIComponent(document.getElementById("czatuser").value);
		   
		 
		
		   xmlHttp.open("GET","czat.php?last=" + cuser, true);
		   // metoda obslugi odpowiedzi serwera
		   xmlHttp.onreadystatechange = handleServerResponseczat;
		   // wysylanie zadanie do serwera
		   xmlHttp.send(null);
		   }
		   else
		   // jesli zajete to proba po sek
		   setTimeout('readmsg()', 1000);	
}
function handleServerResponseczat()
	{
	// tylko jesli jest wolny
	if (xmlHttp.readyState == 4)
		{
		// 200 pomyslnie zakonczony
		if (xmlHttp.status == 200)
				{
				// wyodrebnia wiadomosc XML wysylana z serwera
				xmlResponse = xmlHttp.responseXML;
				// pobiera element glowny ze struktury pliku XML
				xmlDocumentElement = xmlResponse.documentElement;
				// pobiera wiadomosc tekstowa pierwszego potomka elementu document
				wiadomosc = xmlDocumentElement.firstChild.data;
				// aktualizuje dane wyswietlane klientowi 
				wiadomosc = wiadomosc.replace(/brxcode/g,"<br>"); 
				document.getElementById("msgarea").innerHTML ="<i>" + wiadomosc + "</i>";
			    var objDiv = document.getElementById("msgarea");

				objDiv.scrollTop = objDiv.scrollHeight;


				
				//alert(wiadomosc);
				// ponawia sekwencje
				setTimeout('readmsg()', 1000);
				}
				// dla statusu innego niz 200 zgalasza blad
			else
				{ alert("Blad podczas uzyskiwania dostepu do serwera. Przepraszamy");
				}
		}
	}
function readusers() {
	// gdy obiekt nie jest zajety
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
	       {
		   // pobieranie imienia z form
		   //var cuse = "go";
		   var freea = "1"
		   
		 
		
		   xmlHttp.open("GET","czaton.php?last=" + freea, true);
		   // metoda obslugi odpowiedzi serwera
		   xmlHttp.onreadystatechange = handleServerResponsereadusers;
		   // wysylanie zadanie do serwera
		   xmlHttp.send(null);
		   }
		   else
		   // jesli zajete to proba po sek
		   setTimeout('readusers()', 1000);	
}
function handleServerResponsereadusers()
	{
	// tylko jesli jest wolny
	if (xmlHttp.readyState == 4)
		{
		// 200 pomyslnie zakonczony
		if (xmlHttp.status == 200)
				{
				// wyodrebnia wiadomosc XML wysylana z serwera
				xmlResponse = xmlHttp.responseXML;
				// pobiera element glowny ze struktury pliku XML
				xmlDocumentElement = xmlResponse.documentElement;
				// pobiera wiadomosc tekstowa pierwszego potomka elementu document
				wiadomoscus = xmlDocumentElement.firstChild.data;
				// aktualizuje dane wyswietlane klientowi 
				wiadomoscus = wiadomoscus.replace(/brxcode/g,"<br>"); 
				document.getElementById("onu").innerHTML = wiadomoscus;
			   


				
				//alert(wiadomosc);
				// ponawia sekwencje
				setTimeout('readusers()', 1000);
				}
				// dla statusu innego niz 200 zgalasza blad
			else
				{ alert("Blad podczas uzyskiwania dostepu do serwera. Przepraszamy");
				}
		}
	}


