//FUNCION AUXILIAR DE VERIFICACION DEL NAVEGADOR
function verificIE()
{
	var gko = navigator.userAgent.toLowerCase();
	if (gko.indexOf('gecko')!=-1){	
		return true; //obj.setAttribute("onClick","validarEvento('"+meso+"','"+x+"','"+kdi+"');"); 
	}
	else{
		return false; //obj['onclick']=new Function("validarEvento('"+meso+"','"+x+"','"+kdi+"');");//creamos en setAttribute de esta forma
	}
}
//NUMERO DE DECIMALES PARA UN NUMERO TIPO FLOTANTE
function clipFloat_DocList(sVal, nDec){
    var n = parseFloat(sVal);
    var s;
    n = Math.round(n * Math.pow(10, nDec)) / Math.pow(10, nDec);
    s = String(n) + "." + String(Math.pow(10, nDec)).substr(1);
    s = s.substr(0, s.indexOf(".") + nDec + 1);
    return s;
} 

//CONSTRUCTOR DE OBJETOS TIPO ENLACE
function documentItem(k,titulo,descripcion,archivo,extension,tamArchivo,campviw)
{
	this.k=k;
	this.titulo=titulo;	
	this.descripcion=descripcion;
	this.archivo=archivo;
	this.extension=extension;
	this.tamArchivo=tamArchivo;
	
	this.html=function(){
		var extensionArch=""; if(extension) extensionArch=extension;
		
		var tanFinish=0; var Etk="B";
		if(tamArchivo>0){
			if(tamArchivo>1024){ tanFinish=tamArchivo/1024; Etk="KB"; }
			if(tanFinish>1024){ tanFinish=tanFinish/1024; Etk="MB"; }
			var contarpuntos = tanFinish.toString();
			contarpuntos = contarpuntos.split(".");
			if (contarpuntos[1])
			{
				if (contarpuntos[1].length >1){
					tanFinish=clipFloat_DocList(tanFinish, 2);
				}
			}
		}else tanFinish=1;
		
		var HTML='<div id="Archivos'+k+'" class="cadaPost">';
		HTML+='	<div class="imgList '+extension+'" title="'+titulo+'" onclick="location.href=\''+archivo+'\'"></div>';
		HTML+=' <div class="contentList">';
		HTML+='	<h2 class="titular"><a href="'+archivo+'" target="_blank">'+titulo+'</a></h2>';
		if (campviw.indexOf("descripcion",0) >= 0) HTML+='	<div class="resumen">'+descripcion+'</div>';
		HTML+='	<div class="botones">';
		HTML+='		<div class="btn4">';
		HTML+='			<div class="L"></div>';
		HTML+='			<div class="R"><a href="'+archivo+'">'+mostrar_mensaje('39')+'</a></div>';
		HTML+='		</div>';
		if (campviw.indexOf("extension",0) >= 0) HTML+='		<div class="ext"><span>'+extensionArch+'</span></div>';
		if (campviw.indexOf("tamanio",0) >= 0) HTML+='		<div class="peso">'+tanFinish+' '+Etk+'</div>';
		HTML+='	</div>';
		HTML+=' </div>';
		HTML+='</div>';
		return HTML;
	}
}

//FUNCION DE PINTADO Y PAGINACION
function printDocumentItems(pagepos,dkey)
{
	//VECTOR DE ITEMS DE COMPONENTES
	var myarray= eval("documentItems"+dkey);
	//CONTENEDOR DE ITEMS DEL LISTADO
	var idcontainer="";	
	if(myarray.length>0)
	{
		
		var myitem= eval("nitem"+dkey);
		//var mybullet=eval("bullet"+dkey);		
		var paginacion=eval("numitems"+dkey);
		var maskpage=pagepos+1;		
		if(paginacion == "null"){ paginacion= myarray.length; }else{ paginacion=parseInt(paginacion); }
		var initval=pagepos*paginacion;
		var top=initval+paginacion;
		if(top >=myarray.length){ top= myarray.length; }
		var npages=Math.ceil(myarray.length/paginacion);		
		var liclass="";
		
		//GENERAMOS LOS ITEMS DEL LISTADO		
		for(var i=initval;i<top;i++)
		{
			idcontainer+=myarray[i].html(); 
		}
		document.getElementById("nodata"+dkey).className="generica ocultar";
		document.getElementById("simpleList"+dkey).className="list";
		document.getElementById("simpleList"+dkey).innerHTML=idcontainer;
		
		//SI EL NUMERO DE REGISTROS EN EL VECTOR ES MENOR O IGUAL AL DE LISTADO EN PAGINACION OCULTAMOS EL PAGINADO
		if(myarray.length<=paginacion){
			document.getElementById("paginacionsecundaria"+dkey).className="paginacion2 ocultar"; 
		}
		
		//PAGINACION
		if(npages>1)
		{
			//GENERAMOS EL MOSTRANDO DESDE - HASTA
			if(myarray.length>0)
			{
				var cpatern="aeiou";
				var terminacion=myitem.substring(myitem.length -1);
				if(cpatern.indexOf(terminacion)>=0 || (idiomajs == "en")){myitem+="s.";}
				else{myitem+="es.";}
			}						
			document.getElementById("showingFromTo"+dkey).innerHTML="<strong>"+((pagepos*parseInt(paginacion))+1)+"</strong> "+mostrar_mensaje('45')+" <strong>"+top+"</strong> "+mostrar_mensaje('47') +" <strong>"+myarray.length+"</strong> "+myitem+"</div>";				
						
			//ACTULIZAMOS LA FUNCION DEL BOTON DE PAGINA ANTERIOR
			if (pagepos>0)
			{
				var prevpage=pagepos-1;
				document.getElementById("primerapag"+dkey).className="Pprev";
				document.getElementById("paganterior"+dkey).className="prev";
				
				if(verificIE()){
					document.getElementById("paganterior"+dkey).setAttribute("onclick","printDocumentItems("+prevpage+","+dkey+")");
				}else{
					document.getElementById("paganterior"+dkey)['onclick']=new Function("printDocumentItems("+prevpage+","+dkey+")");
				}			
			}
			else
			{
				document.getElementById("primerapag"+dkey).className="Pprev ocultar";
				document.getElementById("paganterior"+dkey).className="prev ocultar";			
			}			
			
			//GENERACION DE NUMEROS DE PAGINA
			var clase=''; var inicio = 0; var fin = npages;			
			var maxPaginas = 5;
			//VALIDACION DE LIMITE DE NUMERACION
			if(npages>maxPaginas) 
			{
				// Cuando las paginas son mas del limite
				fin = maxPaginas;
				var limInternoInf = Math.floor(maxPaginas / 2);
				var limInternoSup = npages - Math.ceil(maxPaginas / 2);
				if(pagepos>limInternoInf && pagepos<limInternoSup)
				{
					inicio = pagepos - Math.floor(maxPaginas / 2);
					fin = pagepos + Math.ceil(maxPaginas / 2);
				}
				else if(pagepos>=limInternoSup)
				{
					inicio = npages - maxPaginas;
					fin = npages;
				}
			}
			//CONTENEDOR DE NUMEROS DE PAGINA
			var numerospagina="";			
			//GENERACION DE PAGINAS
			for (var i=inicio;i<fin;i++)
			{
				if (i==pagepos){clase='class="selected"';}
				else{clase='';}
				numerospagina+='<div '+clase+' onClick="printDocumentItems('+i+','+dkey+')"><span class="cursor" onclick="javascript:;">'+(i+1)+'</span></div>';
			}
			document.getElementById("numerosdepagina"+dkey).innerHTML=numerospagina;
			
			//ACTULIZAMOS LA FUNCION DEL BOTON DE PAGINA SIGUIENTE Y ULTIMA PAGINA			
			if (npages>(pagepos+1))  
			{
				document.getElementById("pagsiguiente"+dkey).className="next";
				document.getElementById("ultimapag"+dkey).className="Nnext";
				if(verificIE()){
					var auxop=pagepos+1;			
					document.getElementById("pagsiguiente"+dkey).setAttribute("onclick","printDocumentItems("+auxop+","+dkey+")");
					auxop=npages-1;
					document.getElementById("ultimapag"+dkey).setAttribute("onclick","printDocumentItems("+auxop+","+dkey+")");
				}else{
					var auxop=pagepos+1;				
					document.getElementById("pagsiguiente"+dkey)['onclick']=new Function("printDocumentItems("+auxop+","+dkey+")");
					auxop=npages-1;
					document.getElementById("ultimapag"+dkey)['onclick']=new Function("printDocumentItems("+auxop+","+dkey+")")
				} 
			}			 
			else
			{
				document.getElementById("pagsiguiente"+dkey).className="next ocultar";
				document.getElementById("ultimapag"+dkey).className="Nnext ocultar";
			}			
		}
	}
	else
	{
		document.getElementById("nodata"+dkey).className="generica";
		document.getElementById("simpleList"+dkey).className="list ocultar";
		document.getElementById("paginacionsecundaria"+dkey).className="paginacion2 ocultar";
	}
}

