var store;


$(function() {

	var pollManager = new sky.api.PollManager();

	$("img[title='VOTA']").click(function(e) { //solo per sondaggio-partecipa
		e.preventDefault();
		var radio = $("input:radio:checked");
		if(radio.size() == 0) {
			showError("Attenzione per votare devi aver selezionato una delle opzioni!");
			return;
		}
		var poll = getCurrentPoll();
		pollManager.voteQuestion({
			pollId: poll.id,
			questionId: poll.questionList[0].id,
			answer: $("input:radio:checked").val(),
			callback: function(success) {
				if(success) {
					if(document.location.href.indexOf("partecipa") != -1 || document.location.href.indexOf("risultati") != -1) {
						document.location = "/sondaggio-risultati.html?id="+poll.id;
					} else {
						document.location = "/sondaggio-risultati.html?id="+poll.id+"&intcmp=box_home_sondaggio_risultati_2_3";
					}
				} else {
					showError("Attenzione voto non valido! Riprova!");
				}
			}
		});
	});
	
	pollManager.getPollList({
		section: "cielo",
		callback: function(success, data) {
			if(success) {
				store = data;
				if(document.location.href.indexOf("partecipa") != -1 || document.location.href.indexOf("risultati") != -1) {
					creaArchivio();
					creaDettaglio();
				} else {
					creaBrick();
				}
			}
		}
	});	
	
});

var showError = function(e) {
	$("#sondaggio-error-MSG p").html(e);
	setTimeout(function() {
		$("#sondaggio-error-MSG p").html("");
	}, 3000);
}

var creaBrick = function() {
	var poll = getCurrentPoll();
	$(".sondaggio-results h4").html(poll.questionList[0].description);
	var toAppend = "";
	for(var i = 0; i<poll.questionList[0].answerList.length; i++) {
		var a = poll.questionList[0].answerList[i];
		toAppend += "<tr><td class='answ'>";
		toAppend += a.description+"</td><td class='percent_image'>";
		toAppend += "<img width='"+a.percent+"%' height='16' alt='' src='/static/images/layout/bar-sondaggio.gif'></td><td class='percent'>";
		toAppend += a.percent+"%";
		toAppend += "<td><input type='radio' id='A"+a.id+"' name='answer' value='"+a.id+"'/>";
		//toAppend += "<label class='no-border' for='A"+a.id+"'><input type='radio' value='"+a.id+"' name='answers' id='A"+a.id+"'></label>";
		//toAppend += "</li>";
	}
	$(".sondaggio-results table").append(toAppend);
}

var creaArchivio = function() {
	var toAppend = "";
	var mesi = "Gennaio Febbraio Marzo Aprile Maggio Giugno Luglio Agosto Settembre Ottobre Novembre Dicembre".split(" ");
	for(var i = 0; i<store.length; i++) {
		var poll = store[i];
		toAppend += "<li><div class='archivio-sondaggi-list'>";
		toAppend += "<h3>"+poll.title+"</h3>";
		toAppend += "<a href='sondaggio-risultati.html?id="+poll.id+"' title='sondaggio'>";
		toAppend += poll.startDate.getDate() + " " + mesi[poll.startDate.getMonth()] + " " +(parseInt(poll.startDate.getFullYear(), 10));
		toAppend += "</a></div></li>";
	}
	$(".archivio-sondaggi ul").append(toAppend);
}

var creaDettaglio = function() {
	var poll = getCurrentPoll();
	$("#poll-title").html(poll.questionList[0].description);
	$("h2").css("zoom",1); //IE6 hack
	var toAppend = "";
	for(var i = 0; i<poll.questionList[0].answerList.length; i++) {
		var a = poll.questionList[0].answerList[i];
		toAppend += "<li><div class='sond-CNT no-border'>";
		toAppend += "<h4>"+a.description+"</h4>";
		toAppend += "<img width='"+a.percent+"%' height='16' alt='' src='/static/images/layout/bar-sondaggio.gif'><span>"+a.percent+"%</span>";
		toAppend += "</div>";
		if(document.location.href.indexOf("partecipa") != -1) {
			toAppend += "<label class='no-border' for='A"+a.id+"'><input type='radio' value='"+a.id+"' name='answers' id='A"+a.id+"'></label>";
		}
		toAppend += "</li>";
	}
	$("#sondaggio-error-MSG").before(toAppend);
}

var getCurrentPoll = function() {
	var poll, id = $.jqURL ? $.jqURL.get('id') : null; 
	if(id) {
		for(var i = 0; i<store.length; i++) {
			if(store[i].id == id) {
				poll = store[i];
				break;
			}
		}
		if(!poll) poll = store[0];
	} else {
		poll = store[0];
	}
	return poll;
}

