﻿/*
Funciones de paginador V2.0
CAMILO SANCHEZ R.
TVN.CL
*/

var Voy =0;
var div;
var Pages;

function pagerInit(numItems, maxItems, divPager1 , nombre, voy, Div) {
//  numItems es el total de items a paginar
//  maxItems es el numero de items por pagina
//  divPager1 y divPager2 son los paginadores superior e inferior
//  Nombre es el nombre del paginador para referenciarlo (debe haber una mejor manera de hacer esto)
//  voy siempre parte en 1
      if (parseInt(numItems) > parseInt(maxItems))
        {
   
    this.Items = numItems;   
    this.Max = maxItems;
    
    //arreglar si el resto de la division es 0 no hay que sumar un 1
    var resto = numItems % maxItems;
    if (resto == 0)
    {
    var numPages = parseInt(numItems/maxItems)
    }
    else
    {
    var numPages = parseInt(numItems/maxItems)+1;
    }
    Pages = numPages;
    Voy = voy;
    Nombre = nombre;
    div = Div;
    this.pagerNext = pagerNext;
    this.pagerPrev = pagerPrev;
    this.selectPage = selectPage;
    var div1 = document.getElementById(divPager1); 
  
 
    var txt1 = '<a href="javascript:void(0);" onclick="javascript:'+Nombre+'.pagerPrev('+(Voy-1) +',\''+ divPager1+'\',\''+Div+'\',\''+numItems+'\',\''+maxItems+'\',\''+Nombre+'\',\''+numPages+'\');">&#8249; anterior</a>';

    txt1 += '<input name="input" type="text" readonly="readonly" style="width:50px; " class="programa_formulario" id="numeroPagina" value=" ' + Voy + ' de ' + Pages + '" />'
    
    txt1 += '<a href="javascript:void(0);" onclick="javascript:'+Nombre+'.pagerNext('+(Voy+1) +',\''+ divPager1+'\',\''+Div+'\',\''+numItems+'\',\''+maxItems+'\',\''+Nombre+'\',\''+numPages+'\');">siguiente &#8250;</a>';
        
    div1.innerHTML=txt1;   
     //alert(txt1); 
    }
  
}

function pagerNext(page,div1,div3,numItems,maxItems,Nombre,numPages) {
     Voy++;
  
     if (page>numPages) { 
        Voy--; 
    } else{ 
          selectPage(page,div1,div3,numItems,maxItems,Nombre)       
    }
}
            
function pagerPrev(page,div1,div3,numItems,maxItems,NOmbre,numPages) {
    Voy--;
    if (Voy==0) { 
        Voy=1; 
    } else {
        selectPage(page,div1,div3,numItems,maxItems,Nombre) 
    }              
}
            
function selectPage(page,div1,div3,numItems,maxItems,Nombre) {  
     for (var i = 1; i <= numItems; i++) {
        if (i <= maxItems*(page-1)) document.getElementById(div3+i).style.display='none';
        if ((i > maxItems*(page-1)) && (i<=maxItems*page)) document.getElementById(div3+i).style.display='inline';
        if (i>maxItems*page) document.getElementById(div3+i).style.display='none';      
    }
   pagerInit(numItems, maxItems, div1, Nombre, page, div3);
}

