document.write('<script language="javascript" src="ajax/lithos.js"></script>');

function jsUpdateFrequencyDivs()
{
	// si esta checked, pone los divs en visible, sino hidden!
	/*
	if (document.formVote && document.formVote.checkFrequent)
	{
		if (document.formVote.checkFrequent.checked)
		{
			document.getElementById("divFrequency").style.visibility = "visible";
			document.getElementById("divFrequencySel").style.visibility = "visible";
		}
		else
		{
			document.getElementById("divFrequency").style.visibility = "hidden";
			document.getElementById("divFrequencySel").style.visibility = "hidden";
		}
	}
	*/
	
	// radio button!
	if (document.formVote && document.formVote.RadioGroupFreq)
	{		
		if (document.formVote.RadioGroupFreq[0].checked) // == "radioFreqYes")
		{
			document.getElementById("divFrequency").style.visibility = "visible";
			document.getElementById("divFrequencySel").style.visibility = "visible";
		}
		else
		{
			document.getElementById("divFrequency").style.visibility = "hidden";
			document.getElementById("divFrequencySel").style.visibility = "hidden";
		}
	}	
}

// boolCastVote > true: votar | false: no votar y sacar solo los datos de informacion
function jsVote()
{
	var xmlHttp = GetXmlHttpObject()
	
	if (xmlHttp == null)
	{
		alert ("Browser does not support HTTP Request")
		return
	}
	
	// 1. Hay que mandar el voto si esta registrado o no (por ahora todos unregistered)
	var vote = document.formVote.selVote.value;
	//var chkFreq = document.formVote.checkFrequent.value;
	var freq = document.formVote.selFrequent.value;
	
	//alert(chkFreq);
	
	//if (document.formVote.checkFrequent.checked) //chkFreq == "on")
	if (document.formVote.RadioGroupFreq[0].checked) //chkFreq == "on")
		var url = "ajax/votes.php?q=vote" + "&webID=" + jsWebsiteID + "&val=" + vote + "&freq=" + freq + "&sid=" + NumberMS();
	else
		var url = "ajax/votes.php?q=vote" + "&webID=" + jsWebsiteID + "&val=" + vote + "&sid=" + NumberMS();
	
	// 2. Poner ajax-casting vote
	SetHTML("divVote", '<div align="center" height="100%" vertical-align="middle" ><span class="style91"><img src="images/layout/ajax_loader.gif" width="16" height="16" /> Casting your vote...</span></div>');
	
	// 3. el valor de retorno tiene el ACK, VotosAVG, VotosCount, FreqAVG, FreqCount
	xmlHttp.onreadystatechange = function()
	{
		if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
		{
			//SetHTML("divVote",
			var response = xmlHttp.responseText;
			//alert(response);
			
			var arrayReceivedData = response.split(",");

			// PORQUE NO ESTA SIRVIENDO ESTO? :S
			if (arrayReceivedData[0] != 1) //(false) // arrayReceivedData[0] != "1" || arrayReceivedData[0] != 1)
			{
				SetHTML("divVote", "There was an error. Please refresh your browser");
				//alert("error: " + arrayReceivedData[0] + ":" + response);
				return;
			}
			else // parsear los datos
			{
				document.getElementById("divVoteResult2").style.opacity = 0; //tag.style.opacity + 0.05;
				document.getElementById("divVoteResult2").style.filter = "alpha(opacity = 0)";
				
				if (arrayReceivedData[1] != 10)
					SetHTML("divVoteVal", arrayReceivedData[1]);
				else // para quitar el .0!
					SetHTML("divVoteVal", "10");

				/// OJO por ahora si no tiene mas de 50 votos no sale!
				if (arrayReceivedData[2] >= 50 || jsShowVotes == 1)
					SetHTML("divVoteCount", arrayReceivedData[2] + " VOTES");
				else
					SetHTML("divVoteCount", "&nbsp;");
				
				/*
				if (arrayReceivedData[2] != 1)
					SetHTML("divVoteCount", arrayReceivedData[2] + " VOTES");
				
				else
					SetHTML("divVoteCount", arrayReceivedData[2] + " VOTE");
				*/
				
				// freq
				var freqVal = arrayReceivedData[3];
				
				if (freqVal != -1)
				{
					// crear arreglo
					var freqStr = new Array(8);
					
					freqStr[0] = "ALMOST NEVER";
					freqStr[1] = "ONCE IN A YEAR";
					freqStr[2] = "TWICE A YEAR";
					freqStr[3] = "MONTHLY";
					freqStr[4] = "TWICE A MONTH";
					freqStr[5] = "WEEKLY";
					freqStr[6] = "TWICE A WEEK";
					freqStr[7] = "DAILY";

					SetHTML("divFreqVal", "&nbsp;" + freqStr[parseInt(arrayReceivedData[3])] + "&nbsp;");

					if (arrayReceivedData[4] >= 50 || jsShowVotes == 1)
						SetHTML("divFreqCount", "By " + arrayReceivedData[4] + " voters who already knew this website");
					else
						SetHTML("divFreqCount", "&nbsp;");
					
					/*
					if (arrayReceivedData[4] != 1)
						SetHTML("divFreqCount", "By " + arrayReceivedData[4] + " voters who already knew this website");
					
					else
						SetHTML("divFreqCount", "By " + arrayReceivedData[4] + " voter who already knew this website");
					*/
					
				}
				else // no hay votos
				{
					SetHTML("divFreqVal", "&nbsp;NO INFORMATION&nbsp;");
					SetHTML("divFreqCount", "&nbsp;");
				}

				/*
				// 5. Refrescar, fade in
				SetHTML("divVote", '<div align="center" height="100%" vertical-align="middle" >' + 
						'<span class="style91"> Your vote has been casted!<br /><br />' + 
						  '<div id="divTimeRefresh" class="style88">You will be redirected to the next random website in 10 seconds.</div>' +
						  "<span class='style88'><a href='http://www.websoda.net'>Click here if you don't want to wait!</a></span></span></div>");
				*/

				SetHTML("divVote", '<div align="center" height="100%" vertical-align="middle" >' + 
						'<span class="style91"> Your vote has been casted!<br /><br />' + 
						  '<div id="divTimeRefresh" class="style88">You will be redirected to the next random website in <span style="font-size:1.5em"><b>10</b></span> seconds.</div>' +
						  "<span class='style88'><a href='http://www.websoda.net'>Click here if you don't want to wait!</a></span></span>" +
						  '<div align="right"><p><a href="http://www.websoda.net">' +
						  '<img src="images/layout/skip_submit.gif" alt="Skip &gt;" width="103" height="47" border="0" /></p>' +
						  "</div></div>");
						  
				//alert("hola1");
				
				//SetHTML("divVoteResult", document.getElementById("divVoteResult2").innerHTML);	
				
				document.getElementById("divVoteResult").style.display = "none";
				document.getElementById("divVoteResult2").style.display = "block";
				
				iRefreshCounterCountDown(10);
				
				fadeInCountDown("divVoteResult2", 0);
				
				// 5. Set el cookie de que ya voto!
				// ya hay cookie?
				var cookieVote = getCookie("v_votes");
				
				// OJO > OJO > se supone que NUNCA puede votar por un website que ya voto, asi que no importa si se repiten
				// los valores la vdd.
				if (cookieVote != null)
					setCookie("v_votes", cookieVote + "," + jsWebsiteID, 30);
				
				else
					setCookie("v_votes", jsWebsiteID, 30);
				
			}
		}
	}
	
	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);
}

function jsGetVoteInfo(boolIPVote)
{
	var xmlHttp = GetXmlHttpObject()
	
	if (xmlHttp == null)
	{
		alert ("Browser does not support HTTP Request")
		return
	}
	
	var url = "ajax/votes.php?q=voteInfo" + "&webID=" + jsWebsiteID + "&sid=" + NumberMS();
	
	// 2. Poner ajax-casting vote
	SetHTML("divVote", '<div align="center" height="100%" vertical-align="middle" ><span class="style91"><img src="images/layout/ajax_loader.gif" width="16" height="16" /> Loading website info...</span></div>');
	
	// 3. el valor de retorno tiene el ACK, VotosAVG, VotosCount, FreqAVG, FreqCount
	xmlHttp.onreadystatechange = function()
	{
		if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
		{
			//SetHTML("divVote",
			var response = xmlHttp.responseText;
			//alert(response);
			
			var arrayReceivedData = response.split(",");

			// PORQUE NO ESTA SIRVIENDO ESTO? :S
			if (arrayReceivedData[0] != 1) //(false) // arrayReceivedData[0] != "1" || arrayReceivedData[0] != 1)
			{
				SetHTML("divVote", "There was an error. Please refresh your browser");
				//alert("error: " + arrayReceivedData[0]);
				return;
			}
			else // parsear los datos
			{
				document.getElementById("divVoteResult2").style.opacity = 0; //tag.style.opacity + 0.05;
				document.getElementById("divVoteResult2").style.filter = "alpha(opacity = 0)";
				
				if (arrayReceivedData[1] != 10)
					SetHTML("divVoteVal", arrayReceivedData[1]);
				else // para quitar el .0!
					SetHTML("divVoteVal", "10");

				/// OJO por ahora si no tiene mas de 50 votos no sale!
				if (arrayReceivedData[2] >= 50 || jsShowVotes == 1)
					SetHTML("divVoteCount", arrayReceivedData[2] + " VOTES");
				else
					SetHTML("divVoteCount", "&nbsp;");
				
				/*
				if (arrayReceivedData[2] != 1)
					SetHTML("divVoteCount", arrayReceivedData[2] + " VOTES");
				
				else
					SetHTML("divVoteCount", arrayReceivedData[2] + " VOTE");
				*/
				
				// freq
				var freqVal = arrayReceivedData[3];
				
				if (freqVal != -1)
				{
					// crear arreglo
					var freqStr = new Array(8);
					
					freqStr[0] = "ALMOST NEVER";
					freqStr[1] = "ONCE IN A YEAR";
					freqStr[2] = "TWICE A YEAR";
					freqStr[3] = "MONTHLY";
					freqStr[4] = "TWICE A MONTH";
					freqStr[5] = "WEEKLY";
					freqStr[6] = "TWICE A WEEK";
					freqStr[7] = "DAILY";

					SetHTML("divFreqVal", "&nbsp;" + freqStr[parseInt(arrayReceivedData[3])] + "&nbsp;");
					
					/// OJO por ahora si no tiene mas de 50 votos no sale!
					if (arrayReceivedData[4] >= 50 || jsShowVotes == 1)
						SetHTML("divFreqCount", "By " + arrayReceivedData[4] + " voters who already knew this website");
					else
						SetHTML("divFreqCount", "&nbsp;");
					
					/*
					if (arrayReceivedData[4] != 1)
						SetHTML("divFreqCount", "By " + arrayReceivedData[4] + " voters who already knew this website");
					
					else
						SetHTML("divFreqCount", "By " + arrayReceivedData[4] + " voter who already knew this website");
					*/
				}
				else // no hay votos
				{
					SetHTML("divFreqVal", "&nbsp;NO INFORMATION&nbsp;");
					SetHTML("divFreqCount", "&nbsp;");
				}
							
				// 5. Refrescar, fade in
				
				// si NO es de tipo IPVote, puede ser cookie o logged in user!
				if (!boolIPVote)
				{
					/*
					SetHTML("divVote", '<div align="center" height="100%" vertical-align="middle" >' + 
						'<span class="style91"> You already voted for this website.<br /><br />' + 
						  "<span class='style88'><a href='http://www.websoda.net'>Click here to see the next random website...</a></span></div>");
					*/
					
					// con boton!
					
					SetHTML("divVote", '<div align="center" height="100%" vertical-align="middle" >' + 
						'<span class="style91"> You already voted for this website.<br /><br />' + 
						  "<span class='style88'><a href='http://www.websoda.net'>Click here to see the next random website...</a></span>" +
						  '<div align="right"><p><a href="http://www.websoda.net">' +
						  '<img src="images/layout/skip_submit.gif" alt="Skip &gt;" width="103" height="47" border="0" /></p>' +
						  "</div></div>");			
				}
				else
				{
/*
SetHTML("divVote", '<div align="center" height="100%" vertical-align="middle" >' + 
						'<span class="style91"> Your IP address already voted for this website.<br /><br />' + 
						  '<div id="divTimeRefresh" class="style88> If you are not registered, an IP address can only vote for a website once. Login or register if you haven' + "'" + 't voted yet! </div>' +
						  "<span class='style88'><a href='http://www.websoda.net'>Click here to see the next random website...</a></span></span></div>");
*/

					// con boton!

					SetHTML("divVote", '<div align="center" height="100%" vertical-align="middle" >' + 
						'<span class="style91"> Your IP address already voted for this website.<br /><br />' + 
						  '<div id="divTimeRefresh" class="style88"> If you are not registered, an IP address can only vote for a website once. Login or register if you haven' + "'" + 't voted yet! </div>' +
						  "<span class='style88'><a href='http://www.websoda.net'>Click here to see the next random website...</a></span></span>" +
						  '<div align="right"><p><a href="http://www.websoda.net">' +
						  '<img src="images/layout/skip_submit.gif" alt="Skip &gt;" width="103" height="47" border="0" /></p>' +
						  "</div></div>");				
				}
				
				document.getElementById("divVoteResult").style.display = "none";
				document.getElementById("divVoteResult2").style.display = "block";
				
				//iRefreshCounterCountDown(10);
				
				fadeInCountDown("divVoteResult2", 0);				
			}
		}
	}
	
	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);
}


// Counter!
//var iRefreshCounter = 10;

function iRefreshCounterCountDown(iRefreshCounter) 
{
	if(iRefreshCounter > 0)
	{
		//document.forms[0].elements[0].value=i;
		iRefreshCounter--; //= i-1;
		
		var c = window.setTimeout("iRefreshCounterCountDown(" + iRefreshCounter + ")", 1000);
		
		SetHTML("divTimeRefresh", "You will be redirected to the next random website in <b><span style='font-size:1.5em'>" + iRefreshCounter + "</span></b> seconds.");
	}
	
	else // se acabo!
		document.location.href = "http://www.websoda.net";
}


// counter
//var iFadeIn = 0;

function fadeInCountDown(tag, iFadeIn)
{
	// ya termino?
	if (iFadeIn++ == 20) //(tag.style.opacity == 1 || tag.style.filter == "alpha(opacity = 100)")
		return; // game over!
		
	else // no esta opaco...
	{
		if (iFadeIn > 0)
		{
			document.getElementById(tag).style.opacity = iFadeIn * 0.05; //tag.style.opacity + 0.05;
			document.getElementById(tag).style.filter = "alpha(opacity = " + iFadeIn * 5 + ")";
		}
		
		// recall...
		setTimeout("fadeInCountDown('" + tag + "', " + iFadeIn + ")", 33);
	}
}

function hideLogin()
{
	document.getElementById("divTopLogin").style.display = "none";
	document.getElementById("divTopNavi").style.display = "block";
}

function showLogin()
{
	document.getElementById("divTopNavi").style.display = "none";
	document.getElementById("divTopLogin").style.display = "block";
}