
/***********
Script para controle de paginação gerada pelo FCKEditor no PWA
Desenvolvedor: Marcus Floriano
Data: 29/06/2007
Desenvolvimento Web
************/

/** Criação do objeto Pagination **/
Pagination = function () {
this.Pagination = Pagination;
this.name = 'Pagination';
this.version = '1.0v';

//Se houver somente uma página exibir navegação.
this.navigation_one_page = false;

// Caractere que separa os numeros da página
this.sepchar = ' | ';

// Formato dos numeros para as páginas
this.linkpage = '<a href="#" onclick="javascript:p.topage($NP$);void(0);">$NP$</a>';

// Formado do numero da página selecionada
this.linkpageselected = '$NP$';

// Total de numeros de página
this.numberpages = pwa_pagination_number_pages;

// ID da tag DIV do HTML para impressão da paginação
this.dividnavigation = 'nav_pagination';

// Página de inicio da paginação
this.pagestart = 0;
}

/** Atalho para objeto interno **/
var pgt = Pagination.prototype;

/** método para a impressão da navegação da paginação **/
pgt.print_navigation = function() {
if(!this.numberpages){return '';}
if(this.numberpages == 1 && !this.navigation_one_page){return '';}
var objnav = document.getElementById(this.dividnavigation) ;
if(objnav){
var nav = "";
for(var i=0;i<this.numberpages;i++){
if(i!=0){
nav += this.sepchar;
}

if(i == this.pagestart){
nav += this.linkpageselected.replace(/\$NP\$/g,(i+1));
} else {
nav += this.linkpage.replace(/\$NP\$/g,(i+1));
}

}
objnav.innerHTML = nav;
} else {
alert('Desculpe, a tag <DIV> com o id ' + this.dividnavigation + ' não existe. Crie a tag para a inclusão da navegação da paginação, obrigado.') ;
}
}

/** método para apresetar a página selecionada **/
pgt.topage = function(page)  {
var pageselected = document.getElementById('pagination_'+this.pagestart) ;
var pagetoselected = document.getElementById('pagination_'+(page-1)) ;

if(pageselected && pagetoselected){
this.pagestart = page-1;
pageselected.style.display = 'none';
pagetoselected.style.display = 'block';
this.print_navigation();
} else {
alert('Desculpe, contacte o administrador e informe o erro PG001.');
}

}

/** trecho para iniciar a páginação **/
var p = new Pagination();
p.print_navigation();


