// All part of the Dynamic Star Rating by Jordan Boesch!

// PRE-LOAD IMAGES -----------------------------

if (document.images){
  pic1 = new Image(220,19); 
  pic1.src = "/Asset/img/rating_loading.gif"; 

  pic2 = new Image(16,69);
  pic2.src = "/Asset/img/rating_star.gif"; 

  pic3 = new Image(16,69);
  pic3.src = "/Asset/img/rating_star_2.gif"; 
  
  pic4 = new Image(16,13);
  pic4.src = "/Asset/img/rating_tick.gif";
  
  pic5 = new Image(14,14);
  pic5.src = "/Asset/img/rating_warning.gif";
}

// AJAX ----------------------------------------

var xmlHttp

function GetXmlHttpObject(){

var xmlHttp = null;

	try {
	  // Firefox, Opera 8.0+, Safari
	  xmlHttp = new XMLHttpRequest();
	  }
	catch (e) {
	  // Internet Explorer
	  try {
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
	  catch (e){
			xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
	  }
	  
	return xmlHttp;

}

// Calculate the rating
function rate(rating,id,show5,showPerc,showVotes,loggedIn){
    var loader = document.getElementById('loading_'+id);
    var uldiv = document.getElementById('ul_'+id);
	

	xmlHttp = GetXmlHttpObject()
	
	if(xmlHttp == null){
		alert ("Your browser does not support AJAX!");
		return;
	  }

	  xmlHttp.onreadystatechange = function() {
	      var loader = document.getElementById('loading_' + id);
	      var uldiv = document.getElementById('ul_' + id);



	      if (xmlHttp.readyState == 4) {

	          //loader.style.display = 'none';
	          var res = xmlHttp.responseText;
	          //alert(res);

	          if (res == 'already_voted') {

	              //loader.style.display = 'block';
	              //loader.innerHTML = '<div class="voted_twice" style="width: 150px;"> You have already voted!</div>';

	          } else {

	              //loader.style.display = 'block';
	              //loader.innerHTML = '<div class="voted">Thanks for voting!</div>';

	              //if(showVotes == true){
	              //if(1 == 1){	
	              //var votediv = document.getElementById('showvotes_'+id).firstChild.nodeValue;
	              //var splitted = votediv.split(' ');
	              //alert(votediv);
	              //var newval = parseInt(splitted[0]) + 1;
	              //if(newval == 1){
	              //document.getElementById('showvotes_'+id).innerHTML = newval+' Vote';
	              //} else {
	              //document.getElementById('showvotes_'+id).innerHTML = newval+' Votes';
	              //}
	              //}


	              if (show5 == true) {
	                  var out = document.getElementById('currentVote_' + id).value;
	                  var calculate = res / 20;
	                  out.innerHTML = Math.round(calculate * 100) / 100; // 3.47;
	                  //out.innerHTML = Math.round((calculate*2),0)/2; // 3.5;
	              }

	              //if(showPerc == true){
	              if (true == false) {
	                  var perc = document.getElementById('percentage_' + id);
	                  //var newPerc = Math.round(Math.ceil(res/5))*5;
	                  var newPerc = res;
	                  perc.innerHTML = newPerc + '%';
	              }

	              else if (showPerc == false) {
	                  var newPerc = res;
	              }
	              var newPerc = Math.round(Math.ceil(res * 20));


	              var ulRater = document.getElementById("rater_" + id);
	              ulRater.className = "star-rating2";

	              var all_li = ulRater.getElementsByTagName("li");

	              for (var i = 1; i < all_li.length; i++) {
	                  all_li[i].getElementsByTagName("a")[0].onclick = "return false;";
	                  all_li[i].getElementsByTagName("a")[0].href = "javascript: function(){return false;}";
	              }

	              if (navigator.appName == 'Microsoft Internet Explorer') {
	                  uldiv.style.setAttribute('width', newPerc + '%'); // IE
	              } else {
	                  uldiv.setAttribute('style', 'width:' + newPerc + '%'); // Everyone else
	              }

	          }
	      } else {
	          //loader.innerHTML = '<img src="/asset/img/rating_loading.gif" alt="loading" />';	
	      }

	  }
	  var idArray = id.split("_",2);
	  
	var url = "/VoteHandler.aspx";
	var params = "entrant="+idArray[0]+"&rating="+rating;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.setRequestHeader("Content-length", params.length);
	xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(params);

}

function hideCurrentVote(voteDivID) {
    var liToHide = document.getElementById(voteDivID);
    liToHide.style.display="none";
}
function showCurrentVote(voteDivID) {
    var liToHide = document.getElementById(voteDivID);
    liToHide.style.display = "";
}