/*
----------------------------------------------------------------------
	CAFFEINE rev 1.0
	Author: Eric Shiarla
	Employed By: Pendergraphics
	
	ABOUT
	Caffeine javascript functions.
	
	NOTE
	The following are required library files for some of the 
	functions included in this page:
	
		- prototype.lite.js
		- moo.fx.js
		- moo.fx.pack.js
		- moo.ajax.js

----------------------------------------------------------------------	
*/

var pollid;



function showEmailRegistration(){
	document.getElementById('emailRegistration').style.display = "block";
}

function hideEmailRegistration(){
	document.getElementById('emailRegistration').style.display = "none";
}


function updatePoll(obj){

  	for (var i=0; i < obj.answer.length; i++) {
	   	if (obj.answer[i].checked)
			var answer = obj.answer[i].value;
   	}
	
	pollid = obj.id.value;
	
	if (obj.cookieexists.value == "false") {
		alert('We\'re sorry, to secure the validity of the poll you must have cookies enabeled.');
		return false;
	}
	

	var options = {
		method : 'get',
		onComplete : updatePollComplete
	};	
	
	var url = 'assets/libraries/lib_xmlPollsVote.php?id='+pollid+'&answer='+answer;
	
	var myAjax = new ajax (url, options);

  	return false;

}

function updatePollComplete(obj){
	
		if(obj.responseText == "false")
			alert('We\'re sorry, we were unable to record your vote at this time.  Please try again later.');	
		else {
			
			var pollForm = document.getElementById('pollForm');
			pollForm.style.display = "none";
			
			var pollResults = document.getElementById('pollResults');
			pollResults.style.display = "block";
		
			/*  Set voter cookie */
			var cookieName = 'BartlesvilleVoter_'+pollid;
			var cookieValue = 'Javascript';
			var nDays = 60;
			SetCookie(cookieName,cookieValue,nDays);

			/*  Update the poll's vote percentages */
			var url = 'assets/libraries/lib_xmlPollsGetVotesPercent.php';
			new ajax(url, {postBody: 'answer=1&id='+pollid, update: $('Answer1Display')});
			new ajax(url, {postBody: 'answer=2&id='+pollid, update: $('Answer2Display')});
			new ajax(url, {postBody: 'answer=3&id='+pollid, update: $('Answer3Display')});
			new ajax(url, {postBody: 'answer=4&id='+pollid, update: $('Answer4Display')});
			
			/*  Now update the poll's graphs */
			new ajax(url, {postBody: 'answer=1&id='+pollid+'&sign=no', onComplete: updateGraph1});
			new ajax(url, {postBody: 'answer=2&id='+pollid+'&sign=no', onComplete: updateGraph2});
			new ajax(url, {postBody: 'answer=3&id='+pollid+'&sign=no', onComplete: updateGraph3});
			new ajax(url, {postBody: 'answer=4&id='+pollid+'&sign=no', onComplete: updateGraph4});			

		}
}

function updateGraph1(obj){
	if (obj.responseText != "false") {
		var graphic = document.getElementById("Answer1Graph");
		graphic.style.width = obj.responseText+"px";
	}
}

function updateGraph2(obj){
	if (obj.responseText != "false") {
		var graphic = document.getElementById("Answer2Graph");
		graphic.style.width = obj.responseText+"px";
	}
}

function updateGraph3(obj){
	if (obj.responseText != "false") {
		var graphic = document.getElementById("Answer3Graph");
		graphic.style.width = obj.responseText+"px";
	}
}

function updateGraph4(obj){
	if (obj.responseText != "false") {
		var graphic = document.getElementById("Answer4Graph");
		graphic.style.width = obj.responseText+"px";
	}
}



//
// decode()
// Takes an encoded php string and returns the decoded form.
//
function decode(encoded){

  var encodedArray = encoded.split('/');	
  var decoded;
  
  for (var i = 0; i < (encodedArray.length-1); i++) {
  	
	if (i == 0)
		decoded = String.fromCharCode((encodedArray[i]-1));
	else
		decoded += String.fromCharCode((encodedArray[i]-1));
		
  }	

  return document.write(decoded);

}

//
// Dreamweaver jump menu script
//
function MM_jumpMenu(targ,selObj,restore){ //v3.0
	eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
	if (restore) selObj.selectedIndex=0;
}


//
// Sets a cookie
//
function SetCookie(cookieName,cookieValue,nDays) {
 var today = new Date();
 var expire = new Date();
 if (nDays==null || nDays==0) nDays=1;
 expire.setTime(today.getTime() + 3600000*24*nDays);
 document.cookie = cookieName+"="+escape(cookieValue)
                 + ";expires="+expire.toGMTString();
}

