// Global variable definitions
// DB column numbers
var OPT_ID = 0;
var OPT_TITLE = 1;
var OPT_VOTES = 2;

var votedID;
var ID_POLL_LEFT;
var ID_POLL_RIGHT;

function start_left(id_poll)
{
	ID_POLL_LEFT = id_poll;
	
	$(document).ready(function(){
	  $("#poll-container_"+ID_POLL_LEFT+' :submit').click(formProcess_left); // setup the submit handler
	  
	  if ($("#poll-results_"+ID_POLL_LEFT).length > 0 ) {
	    animateResults_left();
	  }
	  
	  if ($.cookie('vote_id['+id_poll+']')) {
	    votedID = $.cookie('vote_id');
	    //$.getJSON(HOST_MAIN+"poll.php?vote=none",loadResults);
		$.getJSON(HOST_TOWN+"ajax/method/poll/vote/none/id/"+ID_POLL_LEFT,loadResults_left);
	  }
	});
}

function results_left()
{
	$.getJSON(HOST_TOWN+"ajax/method/poll/vote/none/id/"+ID_POLL_LEFT,loadResults_left);
}


function formProcess_left(event){
  event.preventDefault();

  var id = $("#poll-container_"+ID_POLL_LEFT+" input[@name='poll']:checked").attr("value");
  id = id.replace("opt",'');
  
  
  $("#poll-container_"+ID_POLL_LEFT).show("slow",function(){
	$("#poll-container_"+ID_POLL_LEFT+" .content").append("<div class='loader'></div>");
    votedID = id;
    $.getJSON(HOST_TOWN+"ajax/method/poll/vote/"+id+"/id/"+ID_POLL_LEFT,loadResults_left);
	//$.getJSON(HOST_MAIN+"poll.php?vote="+id,loadResults);	 
  
    $.cookie('vote_id['+ID_POLL_LEFT+']', ID_POLL_LEFT, {expires: 365});
    });
}

function animateResults_left(){
  $("#poll-results_"+ID_POLL_LEFT+" div").each(function(){
      var percentage = $(this).next().text();
      $(this).css({width: "0%"}).animate({
				width: percentage}, 'slow');
  });
}

function loadResults_left(data) {
  var total_votes = 0;
  var percent;

  for (id in data) {
    total_votes = total_votes+parseInt(data[id][OPT_VOTES]);
  }   
  
  var results_html = "<div class='header2'>Wyniki sondy</div>";
  results_html = results_html+"<div class='poll_results' id='poll-results_"+ID_POLL_LEFT+"'>\n";
  results_html = results_html+'<h3>'+$("#poll-container_"+ID_POLL_LEFT+" #question").html()+'</h3>';
  
  if (total_votes == 0) {
  	results_html = results_html + "<dt class='red' style='margin: 5px'>Jeszcze nikt nie zagłosował w sondzie</dt>";
  }
  else 
  {
  	results_html = results_html + "<dl class='graph'>\n";
  	for (id in data) {
  		percent = Math.round((parseInt(data[id][OPT_VOTES]) / parseInt(total_votes)) * 100);
  		if (data[id][OPT_ID] !== votedID) {
  			results_html = results_html + "<dt class='bar-title'>" + data[id][OPT_TITLE] + "</dt><dd class='bar-container'><div id='bar" + data[id][OPT_ID] + "'style='width:0%;'>&nbsp;</div><strong>" + percent + "%</strong></dd><dt class='clear'></dt>\n";
  		}
  		else {
  			results_html = results_html + "<dt class='bar-title'>" + data[id][OPT_TITLE] + "</dt><dd class='bar-container'><div id='bar" + data[id][OPT_ID] + "'style='width:0%;background-color:#0066cc;'>&nbsp;</div><strong>" + percent + "%</strong></dd><dt class='clear'></dt>\n";
  		}
  	}
  	results_html = results_html + "</dl><p class='votes'>Suma głosów: " + total_votes + "</p></div>\n";
  }

  $("#poll-container_"+ID_POLL_LEFT).html(results_html).fadeIn("slow",function(){
    animateResults_left();});
}









function start_right(id_poll)
{
	ID_POLL_RIGHT = id_poll;
	
	$(document).ready(function(){
	  $("#poll-container_"+ID_POLL_RIGHT+' :submit').click(formProcess_right); // setup the submit handler
	  
	  if ($("#poll-results_"+ID_POLL_RIGHT).length > 0 ) {
	    animateResults_right();
	  }
	  
	  if ($.cookie('vote_id['+id_poll+']')) {
	    votedID = $.cookie('vote_id');
	    //$.getJSON(HOST_MAIN+"poll.php?vote=none",loadResults);
		$.getJSON(HOST_TOWN+"ajax/method/poll/vote/none/id/"+ID_POLL_RIGHT,loadResults_right);
	  }
	});
}

function results_right()
{
	$.getJSON(HOST_TOWN+"ajax/method/poll/vote/none/id/"+ID_POLL_RIGHT,loadResults_right);
}


function formProcess_right(event){
  event.preventDefault();

  var id = $("#poll-container_"+ID_POLL_RIGHT+" input[@name='poll']:checked").attr("value");
  id = id.replace("opt",'');
  
  
  $("#poll-container_"+ID_POLL_RIGHT).show("slow",function(){
	$("#poll-container_"+ID_POLL_RIGHT+" .content").append("<div class='loader'></div>");
    votedID = id;
    $.getJSON(HOST_TOWN+"ajax/method/poll/vote/"+id+"/id/"+ID_POLL_RIGHT,loadResults_right);
	//$.getJSON(HOST_MAIN+"poll.php?vote="+id,loadResults);	 
  
    $.cookie('vote_id['+ID_POLL_RIGHT+']', ID_POLL_RIGHT, {expires: 365});
    });
}

function animateResults_right(){
  $("#poll-results_"+ID_POLL_RIGHT+" div").each(function(){
      var percentage = $(this).next().text();
      $(this).css({width: "0%"}).animate({
				width: percentage}, 'slow');
  });
}

function loadResults_right(data) {
  var total_votes = 0;
  var percent;

  for (id in data) {
    total_votes = total_votes+parseInt(data[id][OPT_VOTES]);
  }   
  
  var results_html = "<div class='header2'>Wyniki sondy</div>";
  results_html = results_html+"<div class='poll_results' id='poll-results_"+ID_POLL_RIGHT+"'>\n";
  results_html = results_html+'<h3>'+$("#poll-container_"+ID_POLL_RIGHT+" #question").html()+'</h3>';
  
  if (total_votes == 0) {
  	results_html = results_html + "<dt class='red' style='margin: 5px'>Jeszcze nikt nie zagłosował w sondzie</dt>";
  }
  else 
  {
  	results_html = results_html + "<dl class='graph'>\n";
  	for (id in data) {
  		percent = Math.round((parseInt(data[id][OPT_VOTES]) / parseInt(total_votes)) * 100);
  		if (data[id][OPT_ID] !== votedID) {
  			results_html = results_html + "<dt class='bar-title'>" + data[id][OPT_TITLE] + "</dt><dd class='bar-container'><div id='bar" + data[id][OPT_ID] + "'style='width:0%;'>&nbsp;</div><strong>" + percent + "%</strong></dd><dt class='clear'></dt>\n";
  		}
  		else {
  			results_html = results_html + "<dt class='bar-title'>" + data[id][OPT_TITLE] + "</dt><dd class='bar-container'><div id='bar" + data[id][OPT_ID] + "'style='width:0%;background-color:#0066cc;'>&nbsp;</div><strong>" + percent + "%</strong></dd><dt class='clear'></dt>\n";
  		}
  	}
  	results_html = results_html + "</dl><p class='votes'>Suma głosów: " + total_votes + "</p></div>\n";
  }

  $("#poll-container_"+ID_POLL_RIGHT).html(results_html).fadeIn("slow",function(){
    animateResults_right();});
}



/**
 * funkcja sprawia ze gdy zaznaczymy dodanie sony do calej sieci to pozostale pola(miasta i poradnik) znikaja oraz sie odznaczaja
 */
function check_all_town()
{
	if($("input[@name='all_town']").attr('checked'))
	{
		//odznaczamy i usuwamy wszystkie
		$("div .id_town input[@type=checkbox]").removeAttr('checked');				
		$(".id_town").hide();
	}
	else
	{
		$(".id_town").show();
	}		
}

function delete_poll(id)
{
	advAJAX.post({
	   	url : HOST_TOWN+'/ajax',	
	   	parameters : {
	   	"method" : "delete_poll",
		"id_poll" : id		
	},	   
	onInitialization: function(obj) {
		$('#wrap_table').append('<div class="loader"></div>');
	}, 	     	
	onSuccess : function(obj) {
		if(obj.responseText == 'yes')
		{
			$('#row'+id).remove();
			var text = 'Sonda została usunięta';	
		}
		else
			var text = 'Sonda nie może zostać teraz usunięta';
			
		show_message(text);			
	},
	onFinalization : function(obj) {
		$('.loader').remove();
	},		
	onError : function(obj) { alert("Error: " + obj.status); }	                    
   	});		
}

function valid()
{
	var error = 'false';
	
	if($('#poll_question').val() == '')
	{
		$('#poll_question_error').html('Wpisz pytanie do sondy').show();
		error = 'true';
	}
	else
	{
		$('#poll_question_error').hide();
	}
	
	if($('#poll_answer1').val() == '')
	{
		$('#poll_answer1_error').html('Musisz wpisać co najmniej dwa warianty odpowiedzi').show();
		error = 'true';
	}
	else
	{
		$('#poll_answer1_error').hide();
	}
	
	if($('#poll_answer2').val() == '')
	{
		$('#poll_answer2_error').html('Musisz wpisać co najmniej dwa warianty odpowiedzi').show();
		error = 'true';
	}
	else
	{
		$('#poll_answer2_error').hide();
	}	
	
	//sprawdzamy czy zaznaczono chociaz jedna wartosc miejsca
	if($("input[@name='all_town']:checked").val() != 'all_town')
	{
		var checked = 'false';
		var checkbox = document.form['id_town[]'];

		if(checkbox.length == undefined)
		{ 
			if($('input[name="id_town[]"]').attr('checked')) checked = 'true';
		}
		else
		{
			for(var counter=0; counter < checkbox.length; counter++ )
			{
				if(checkbox[counter].checked)
				{
					checked = 'true';
					continue;
				}
			}
		}
			
		if (checked == 'false')
		{			
			$('#id_town_error').html('Musisz wybrać co najmniej jedno miejsce').show();
			error = 'true';
		}
		else
		{
			$('#id_town_error').hide();
		}
	}
	
	if(error == 'true')
	{
		scroll(0,0);
		return false;
	}
	
	return true;		
}
