﻿$(document).ready(function(){
	$.ajax({					
		async: true,
		type: 'GET',
		dataType: "xml",
		url: 'interface/epoll/epoll_answer.ashx' + '?reqPollID=' + escape(document.getElementById('hid_pollID').value),
		success: function(output){
			answer_populate(output);
		}						
	});
	
	var id = $('[id*="epoll_id_"]').attr('id');	
	var ck = getCookie(id);
	var ck_submited = getCookie('submitted_' + id);	
		
	if(ck == 'true'){
		$('.pnl_result').show();
		$('.pnl_submission').hide();
		
		//todo: add what you have submitted
		document.getElementById('lbl_chosen').innerHTML = ck_submited;
		$('#change_pnlsubmission').hide();	
	}
	else{
		var isActivePollPeriodValid =  document.getElementById('hid_IsPollPeriodValid').value;
		if (isActivePollPeriodValid == 'False'){
			//	alert('show result');
			//alert(document.getElementById('hid_pollID').value);
			//if active but period expiry then show result, hide submission & back to submission link
			$('.pnl_result').show();
			$('.pnl_submission').hide();
			$('#change_pnlsubmission').hide();
			
			if (id == null) {
				//alert("id");
				//document.getElementById('lbl_chosen').innerHTML = "No poll at the moment, please come back later!";
			}
		} else {
			//if active but period havent expire then show submission, hide result
			$('.pnl_result').hide();
			$('.pnl_submission').show();
		}
		
		$('#change_pnlsubmission').bind('click', anchorClick_submission);
		$('#change_pnlresult').bind('click', anchorClick_result);
	}
});


function getCookie(c_name){
	var i,x,y,ARRcookies=document.cookie.split(";");
	
	for (i=0;i<ARRcookies.length;i++){
		x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
		y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
		x=x.replace(/^\s+|\s+$/g,"");
		if (x==c_name){
			return unescape(y);
		}
	}
}

function setCookie(c_name,value,exdays){
	var exdate = new Date();
	exdate.setDate(exdate.getDate() + exdays);
	
	var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
	document.cookie = c_name + "=" + c_value;

}

function delCookie(){     
	var cookies = document.cookie.split(";");      
	for (var i = 0; i < cookies.length; i++) {         
		var cookie = cookies[i];         
		var eqPos = cookie.indexOf("=");         
		var name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;
		//alert(name);         
		document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";     
	} 
}

function anchorClick_result(){	
	$('.pnl_submission').slideUp('slow', function() {
		$('.pnl_result').fadeIn('slow');
	});
}

function anchorClick_submission(){
	$('.pnl_result').slideUp('slow', function() {
		$('.pnl_submission').fadeIn('slow');
	});
}

function onSubmit(){
	var myStatus = chkRadioBtnValidation();
	
	if(myStatus == false){
		$('#error_message').html('Please choose an option');
		$('.pnl_error').show();
		return myStatus;
	}
	else{

		$.ajax({
			async: false,
			type: 'POST',
			url: 'interface/epoll/epoll.ashx?reqAnsID=' + escape(myStatus),
			success: function(result){
				//testing
				//$('body').remove('#wp_submit_debug');
				//$('body').append('<div id="wp_submit_debug" style="position: absolute; top: 0px; border: solid 1px red; background: yellow; color: red;">' + result + '</div>');
				
				var statusNumber = result.substring(0, 1);
				if (statusNumber == 0) {				
					$('#error_message').html('');
					$('.pnl_error').hide();
					
					//setCookie for epoll submitted
					var id = $('[id*="epoll_id_"]').attr('id');			
					setCookie(id, true, 365);		
					
					//setCookie for what was chosen
					var myOption = 'You have chosen: ' + document.getElementById('lbl_ans' + myStatus).innerHTML;
					setCookie('submitted_' + id, myOption, 365);
					$('#lbl_chosen').html(getCookie('submitted_' + id)); 
					
					$.ajax({					
						async: true,
						type: 'GET',
						dataType: "xml",
						url: 'interface/epoll/epoll_answer.ashx' + '?reqPollID=' + escape(document.getElementById('hid_pollID').value),
						success: function(output){
							answer_populate(output);
						}						
					});
					
					$('#btn_submit').bind('click', anchorClick_result);
					$('.pnl_submission').slideUp('slow', function() {
						$('.pnl_result').fadeIn('slow');
					});
					$('#change_pnlsubmission').hide();
					
				}
				else {
					$('#error_message').html('Sorry, poll error.');
					$('.pnl_error').show();
				}
			}
		});
		
	}
}

function chkRadioBtnValidation(){
	
  var radioButtons = document.getElementsByName("epoll");
  var myChecked = -1;
  
  for (var x = 0; x < radioButtons.length; x++) {
    if (radioButtons[x].checked) {
			myChecked = radioButtons[x].value;
    }
  }

  if (myChecked == -1){ return false; }
  else{ return myChecked; }
}

//function dispChart(){
//		var data = [ 
//      ['jan', 10], ['feb', 50], ['mar', 30] ,
//      ['apr', 100]  
//  ];
//  
//  document.getElementById("demo").innerHTML = '<table border="0">';
//  for (var i=0; i < data.length; ++i)
//    document.getElementById("demo").innerHTML = '<tr><td>' + data[i][0]
//          +'<td><hr id="red" style="height: .8em; '
//          + 'background-color: red; color: red; '
//          + 'margin-left: 0; text-align: left; '
//          + 'width: ' + data[i][1] + '%"/><td>' + data[i][1];
//  document.getElementById("demo").innerHTML = '</tr></table>';
//}

function answer_populate(output){
//alert('output');
//alert(output);
	//clear answer area
	$('.result').html('');
	var maxCount;
	
	$('item', output).each(function(index){
		if (index == 0){
			maxCount = $.trim($('total_counts', this).text());
			maxCount = parseInt(maxCount);
		}
		else{
			var checkCount = $.trim($('total_counts', this).text());
			checkCount = parseInt(checkCount);
			
			if(maxCount < checkCount){
				maxCount = checkCount;
			}
		}
	});
	
	$('item', output).each(function(index){
		
		var answer_id = $('answer_id', this).text();
		var answer = $('answer', this).text();
		var total_counts = $('total_counts', this).text();
		
		total_counts = parseInt(total_counts);		
		var getWidth = (total_counts / maxCount) * 100;
		if (getWidth == 0){
			getWidth = 1;
		}	
		
		var html_result = '<label id="' + answer_id + '">' + answer + '<label>' + 
											'<div style=" margin-bottom: 10px;background-color: #d2d2d2; width: 100%"><div style="font-size: 11px; height: 13px;  padding-top:2px; padding-bottom: 2px; color: #d6675e; background-color: #44ffff; width: ' + getWidth + '%">&nbsp;&nbsp;'+ total_counts +'&nbsp;votes</div></div>';
													
		$('.result').append(html_result);
	});	
}
