var questions;
var numQuestForPage = 5;
var currentPage = 1;
var numOfPages;
var firstTime = true;
var IsPrevious = false;
var TestLanguages = new Array();
TestLanguages['ErrorChecked'] = "Debe contestar las preguntas para pasar de página.";
TestLanguages['ErrorSubmit'] = "Debe contestar todas las preguntas";

$(document).ready(function(){
	questions = $("div#test ol li");
	numOfPages = questions.length / numQuestForPage;
	buildPaginator(numOfPages);
	showPage(currentPage);
	$("div.paginator input#paginatorNext").click(function(event){
		showNextPage(event);
	});
	
	$("form").submit(function(event){
		if($("form input[@type='radio']:checked").length != questions.length){
			event.preventDefault();
			alert(TestLanguages['ErrorSubmit']);
		}
	});
});

function buildPaginator(numOfPages){
	var list = $("<ul></ul>");
	for(i=0;i<numOfPages;i++){
		page = i+1;
		list.append("<li id='page-" + page + "'><input type='button' class='paginatorPage' onclick='showPage(" + page + ");' value='" + page + "' /></li>");
	}
	$("div#paginator").prepend(list);
	$("div#paginator").prepend("<input type='button' id='paginatorPrev' value='Prev' onclick='showPrevPage();' />");
	$("div#test").append($("div#paginator"));
}

function showNextPage(event){
	if(currentPage != numOfPages){
		showPage(currentPage + 1);
		event.preventDefault();
	}
}

function showPrevPage() {
	IsPrevious = true;
	showPage(currentPage - 1);
}

function showPage(page){
	//check is checked
	if($("div#test ol li:visible input:checked").length == 5 || firstTime || IsPrevious) {
		firstTime = false;
		IsPrevious = false;
		if(page != 0 && page <= numOfPages) {
			$("div#paginator ul li#page-" + currentPage).removeClass("selected");
			$("div#paginator ul li#page-" + page).addClass("selected");
			questions.hide();
			for(i=0;i<numQuestForPage;i++){
				pos = i + ((page - 1) * 5);
				$(questions[pos]).show();
			}
			currentPage = page;
		}
	}
	else
	{
		alert(TestLanguages['ErrorChecked']);
	}
}
