var puntajeAnterior;

// Load HTML snippet with AJAX and insert it into the Hiddenresult element
// When the HTML has loaded, call initPagination to paginate the elements        
$(document).ready(function(){      
	//initPagination();
	$(".califica").show();	
});

$(function() {

	$(".califica").stars({
		inputType: "select",
		cancelShow: false,

		callback: function(ui, type, value)
		{
			var promedioActualizado,totalActualizado,comentarioActualizado

			var codBeneficio = value.substr(0,value.length-1);
			var puntaje = value.substr(value.length-1);
			var nombreCookie = "votacion" + codBeneficio
			
			if(ReadCookie(nombreCookie)){
				alert("Solo se permite una calificacion diaria por beneficio");
				$("#select"+codBeneficio).stars("select",codBeneficio+puntajeAnterior);
			}
			else
			{
				var param ="CODBENEFICIO="+codBeneficio+"&CALIFICACION="+puntaje;
			
				$.ajax({
					timeout: 5000000,
					type: "POST",				
					url: "http://bancajoven.inperdible.cl/votacion.asp",
					data: param,
					async:true,
					complete: function(objeto, exito){
						if(exito=="success"){
							if (objeto.responseText==''){
								alert("El servicio no responde");
							}
							else {
								var arrRespuesta = objeto.responseText.split(":");
								if(arrRespuesta[0]!="OK"){
									alert("no se ha realizado la votacion");								
								}
								else{
									comentarioActualizado=arrRespuesta[1];
									totalActualizado=arrRespuesta[2];
									promedioActualizado=arrRespuesta[3];
									$("#select"+codBeneficio).stars("select",codBeneficio+promedioActualizado);
									$("#totalCalif"+codBeneficio).html("("+totalActualizado+")");
									$("#comentCalif"+codBeneficio).html(comentarioActualizado+" comentarios");
									SetCookie(nombreCookie,1,1);								
								}
							}
						}
					},
					error: function(objeto, quepaso, otroobj){
						alert("Se Produjo el siguiente error: "+quepaso);
					}
				});
			}		
		}
	});

	$("#listado form").quickpaginate({
		perpage: 10,
		pager : $("#paginacion") 
	});	

    $(".califica").mouseover(function () {
		var puntaje = $(this).find("input").val();
		puntajeAnterior = puntaje.substr(puntaje.length-1);
    });
	
	// Make it available in DOM tree
	//$caption.appendTo(".califica");
  });

/******************************* Definición funciones paginación **********************************/
  
/** 
 * Callback function for the AJAX content loader.
 */
function initPagination() {
	var num_entries = $('#listado2 div.beneficio').length;
	// Create pagination element
	$("#paginacion").pagination(num_entries, {
		num_edge_entries: 2,
		num_display_entries: 4,
		callback: pageselectCallback,
		items_per_page:10,
		prev_text:"Anterior",
		next_text:"Siguiente"
	});
 }

/**
 * Callback function that displays the content.
 *
 * Gets called every time the user clicks on a pagination link.
 *
 * @param {int}page_index New Page index
 * @param {jQuery} jq the container with the pagination links as a jQuery object
 */
function pageselectCallback(page_index, jq){
	var items_per_page = 10;
	var num_entries = $('#listado2 div.beneficio').length;
	var new_content;
	
	var max_elem = Math.min((page_index+1) * items_per_page, num_entries);
	$('#listado').empty();
					
	for(var i=page_index*items_per_page;i<max_elem;i++)
	{
		new_content = $('#listado2 div.beneficio:eq('+i+')').clone();
		$('#listado').append(new_content);
	}
	return false;
}

/***************************************************************************************************/

function getBeneficio(i)
{
	document.forms[i].action = "iframe_interior_beneficio1.asp";
	document.forms[i].submit();
}

function SetCookie(cookieName,cookieValue,nDays) {
	var today = new Date();
	var expire = new Date();
	if (nDays==null || nDays==0) nDays=1;
	expire.setTime(today.getTime() + 3600000*24*nDays);
	document.cookie = cookieName+"="+escape(cookieValue) + ";expires="+expire.toGMTString();
}

function ReadCookie(cookieName) {
	var theCookie=""+document.cookie;
	var ind=theCookie.indexOf(cookieName);
	if (ind==-1 || cookieName=="") return ""; 
	var ind1=theCookie.indexOf(';',ind);
	if (ind1==-1) ind1=theCookie.length; 
	return unescape(theCookie.substring(ind+cookieName.length+1,ind1));
}

/*function cargarIframe(i,CodBeneficio) {

	var destino = "iframe"+i
	var target = document.getElementById(destino);
	var newFrame = document.createElement("iframe");
	newFrame.setAttribute("src", "calificar.asp?codBeneficio="+CodBeneficio);
	target.appendChild(newFrame);
}*/