﻿
UltimizePoll = new Object();
UltimizePoll.Poll = new Object();
UltimizePoll.Poll.id = 0;
UltimizePoll.Polls = new Array();

UltimizePoll.vote = function (pollid, type) {
	var answers = "";
	var validated = false;
	if (type == 0) {
		var radiobuttons = $("input:radio[name=ultimizepoll_" + pollid + "]:checked");
		if (radiobuttons.length === 1) {
			var answers = radiobuttons.val();
			validated = true;
		}
		else {
			alert("Der er ikke valgt et svar!");
		}
	}
	else if (type == 1) {
		var checkboxes = $("input:checkbox[name=ultimizepoll_" + pollid + "]:checked");
		if (checkboxes.length >= 1) {
			checkboxes.each(function (i, o) {
				answers = answers + $(o).val();
				if (i < checkboxes.length - 1) {
					answers = answers + ",";
				}
			});
			validated = true;
		}
		else {
			alert("Der er ikke valgt et svar!");
		}
	}

	if (validated === true) {
		$.ajax({
			dataType: "json",
			url: "/Cms_Files/plugins/polls/AjaxPage.ashx",
			data: { job: "vote", poll: pollid, answer: answers },
			success: function (JSON) {
				if (JSON[0] == true) {
					UltimizePoll.RenderStats(pollid);
				}
			},
			error: function (s, ss, sss) {
				alert(s);
				alert(ss);
				alert(sss);
			}
		});
	}

	return false;
}

UltimizePoll.RenderStats = function (pollid) {
	$.ajax({
		dataType: "json",
		url: "/Cms_Files/plugins/polls/AjaxPage.ashx",
		data: { job: "stats", poll: pollid },
		success: function (JSON) {
			if (JSON[0] == true) {
				var container = $("#pollcontainer_" + pollid);
				container.html("");
				var stats = JSON[1];
				var oTitle = $("<span></span>").addClass("question").html(stats.Question);
				var oUl = $("<ul></ul>");
				var oTotalVotes = $("<div></div>").addClass("totalvotes");
				oTotalVotes.append(
										$("<span></span>").addClass("totalvotestext").html("Stemmer i alt: ")
									).append(
										$("<span></span>").addClass("totalvotesvotes").html(stats.TotalVotes)
									);

				var alt = false;
				for (var i = 0; i < stats.Answers.length; i++) {
					var astat = stats.Answers[i];
					var votetext = "stemmer";
					if (astat.Votes == 1) votetext = "stemme";
					var oli = $("<li></li>");
					if (alt === true) {
						oli.addClass("alt");
						alt = false;
					}
					else {
						alt = true;
					}
					oli.append(
											$("<span></span>").addClass("percentbar").attr("title", astat.Votes + " " + votetext).attr("style", "width: " + astat.VotesInPercent + "%;").html(astat.Text)
										);
					oli.append(
											$("<span></span>").addClass("votes").html(astat.VotesInPercent + "%")
										);
					oUl.append(oli);
				}

				container.append(oTitle);
				container.append(oUl);
				container.append(oTotalVotes);

			}

		},
		error: function (s, ss, sss) {
			alert(s);
			alert(ss);
			alert(sss);
		}
	});
}

