//maneja la paginacion del listado de las notas pertenecientes a un especial en particular
//y la informacion dinamica de un especial
//Es una clase singleton, o en el lenguaje tradicional estatica, no se puede intanciar y para usarla simplemente
//se hace referencia a la misma (ver especial.php)
//Notar q dentro de la funcion resultante del XHR las llamadas a los metodos y miembros de la misma clase
//se hacen referenciando a su nombre y no a this.
//Javier Alpizar, 21 de Ago

var  especial =  
{
	paginaActual : 0,
	totalPaginas : 0,
	totalRegistros : 0,
	id_tema : 0,
	regxPag : 10,
	init : function(id_tema)
	{
		//alert(this.regxPag);
		//this.paginaActual = 1;
		//this.regxPag = 10;
		//alert(this.regxPag);
		this.id_tema = id_tema;
    	dojo.xhrGet(
    	{
    		url:"especialCtrl.php?tipo=totalNotas&id_tema="+id_tema,
    		handleAs:"text",
    		load: function(data,args)
    			  {
    			  	//alert("hi"+data);
    			  	//alert(especial.totalRegistros);
    			  	//alert(especial.regxPag);
    			  	especial.totalRegistros = parseInt(data);
    			  	especial.totalPaginas = Math.ceil(especial.totalRegistros / especial.regxPag);
    			  	//alert(especial.totalRegistros);
    			  	//alert(especial.regxPag);
    			  	//alert(especial.totalPaginas);
    			  	especial.paginaActual = 1;
    			  	console.log("pags total esp:"+especial.totalPaginas);
    			  	//siguiente();
    			  	//desde el php hace la llamada a la pagina 1, por eso este este comentado
    			  	especial.obtenDatos(especial.paginaActual);
    			  }
    	});
	
	},
	obtenDatos : function(pagina)
	{
		
		//si el handleAs es json la info recibida ya no es necesario parsearla, DOjo ya lo ve como json
		//pero entonces no puede traer lo del /*. */, porque si lo trae y el handle es json se produce un error
		//si se manda con los /* */ entonces el handle debe ser text, se deben quitar de la cadena
		// loc comentarios y entonces
		//parsearlo con eval o con el parser incluyendo el script json2
		//finalmente (y asi es como se usa) uno de los dessarrolladores sugiere anteceder al codigo json
		//un {}&& que suupuestamente elimina el problema de la seguridad y dojo lo reconoce como un objeto
		//json valido por lo que no es necesario quitarle la cadena ni parsearlo
		dojo.xhrGet(
		{
			url:"especialCtrl.php?tipo=obtener&id_tema="+this.id_tema+"&pagina="+pagina+"&regsxpag="+this.regxPag,
			handleAs:"json",
			load: function(data,args)
					{
						//No es necesario parsear a data, dojo ya lo ve como json
						//alert(data);
						//var espObj = JSON.parse( data.substring(data.indexOf("\/\*")+2, data.lastIndexOf("\*\/")));
						//var espObj = JSON.parse(data);
						//var espObj = dojo.toJson(data);
						////data = data.substring(data.indexOf("\/\*")+2, data.lastIndexOf("\*\/"));
						//alert(data);
						//var espObj = eval(data);
						////var espObj = JSON.parse(data);
						console.info("data:"+data);
						
						var i =0;
						while (i++ < especial.regxPag)
							dojo.byId("espl_secc"+i).style.display = "block";
							
						for(i=0;i<data.length;i++)
						{
							dojo.byId("espl_hora"+(i+1)).innerHTML = data[i].hora;
							dojo.byId("espl_nota"+(i+1)).href = "especial.php?id_tema="+especial.id_tema+"&id_nota="+data[i].id_nota;
							dojo.byId("espl_nota"+(i+1)).innerHTML = data[i].titulo;
						}
						while (i++ < especial.regxPag)
							dojo.byId("espl_secc"+i).style.display = "none";
						
						
												
						especial.paginador();
					},
			error: function(error,args)
					{
						console.warn("error:",error);
					}
		});
	
						
	},
	paginador : function()
	{
		console.info("paginador am, paginaActual="+this.paginaActual);
		//var pagSigLink = dojo.byId("espl_siguiente");
		//var pagSigLink =  dojo.query("#pagSiguiente");
		dojo.byId("espl_anterior").style.display = "block";
		dojo.byId("espl_siguiente").style.display = "block";
		if (this.paginaActual == this.totalPaginas)  //ultima pagina
		{
			dojo.byId("espl_siguiente").style.display = "none";
		}
		if (this.paginaActual <=1)
		{
			dojo.byId("espl_anterior").style.display = "none";
		}
	},
	siguiente : function()
	{
		this.paginaActual++;
		this.obtenDatos(this.paginaActual);
	},
	anterior : function()
	{
		this.paginaActual--;
		this.obtenDatos(this.paginaActual);
	},
	prueba : function(id_nota)
	{
		alert(id_nota);
	},
	prueba2 : function(id_nota)
	{
		alert("prueba2"+id_nota);
	}
	

	
	
	
}

function prueba2(x)
{
alert("x");
}
/*
var especial = 
{
	paginaActual : 0,
	totalPaginas : 0,
	totalRegistros : 0,
	id_tema : 0,
	init : function(id_tema)
			{
				this.id_tema = id_tema;
				this.obtenDatos();
			},
	obtenDatos : function()
			{
				alert("id_tema:"+this.id_tema);
			}
};
var especial2 = 
{
	id_tema : 20
};

*/	