
jQuery.fn.paginIt=function(settings){settings=jQuery.extend({perPage:10,currentPage:1,nbVisiblePages:5,pager:null,container:null,clPrev:"clPrev",clNext:"clNext",clPage:"clPage",clSegment:"clSegment",nextLabel:"next &raquo;",prevLabel:"&laquo; previous",processor:"normal",onPageChange:null,onPageChangePaginKey:"default",anchorNameOnPageChange:"top"},settings);var total;var nbPages;var items=jQuery(this);var nextbut;var prevbut;var init=function()
{items.show();total=items.size();nbPages=Math.ceil(total/settings.perPage);if(nbPages>1)
{setNav();goPage(settings.currentPage);}
else
jQuery(settings.pager).hide();settings.container.show();};var goNext=function()
{goPage(settings.currentPage+1);};var goPrev=function()
{goPage(settings.currentPage-1);};var goPage=function(target)
{if(isNaN(target))
return;settings.pager.find("a.currentPage").text(''+settings.currentPage);settings.pager.find("a.currentPage").removeClass("currentPage");settings.currentPage=parseInt(target);if(settings.currentPage>nbPages)settings.currentPage=nbPages;if(settings.currentPage<1)settings.currentPage=1;var b1=Math.max(0,((settings.currentPage-1)*settings.perPage));var b2=Math.min(total,(settings.currentPage*settings.perPage));items.hide();if(settings.processor=="normal"){items.slice(b1,b2).show();}else{if(typeof(settings.processor)=="function"){settings.processor(items,b1,b2,total);}else{items.slice(b1,b2).show();}}
if(settings.currentPage==1)
jQuery("div.intro-liste,div.intro-liste-choix").show();else
jQuery("div.intro-liste,div.intro-liste-choix").hide();settings.pager.find("a."+settings.clPage+settings.currentPage).addClass("currentPage");settings.pager.find("a.currentPage").text("["+settings.currentPage+"]")
manageAccess();sendPageChange();};var setNav=function()
{if(settings.pager===null)
{settings.pager=jQuery('<div class="clPager"></div>');items.eq(items.size()-1).after(settings.pager);}
var linkText="#";if(settings.anchorNameOnPageChange!==null)
linkText=linkText+settings.anchorNameOnPageChange;var contentPager='<ul><li><a class="'+settings.clPrev+'" href="'+linkText+'">'+settings.prevLabel+'</a></li>';for(var i=1;i<=nbPages;i++)
contentPager=contentPager+'<li><a class="'+settings.clPage+i+'" href="'+linkText+'">'+i+'</a></li>';contentPager=contentPager+'<li><a class="'+settings.clNext+'" href="'+linkText+'">'+settings.nextLabel+'</a></li></ul>';jQuery(settings.pager).append($(contentPager));settings.pager.find("a[class^='"+settings.clPage+"']").each(function(i){jQuery(this).click(function(){goPage(jQuery(this).text());return true;});});nextbut=settings.pager.find("a."+settings.clNext);prevbut=settings.pager.find("a."+settings.clPrev);nextbut.click(function(){goNext();return true;});prevbut.click(function(){goPrev();return true;});};var manageAccess=function()
{if(nbPages>1){if(prevbut&&settings.currentPage<=1)
prevbut.hide();else
prevbut.show();if(nextbut&&settings.currentPage==nbPages)
nextbut.hide();else
nextbut.show();if(nbPages>settings.nbVisiblePages){var dB1=Math.ceil(settings.nbVisiblePages/2);var dB2=settings.nbVisiblePages-dB1;var b1=1;var b2=nbPages;if(settings.currentPage-dB1<=0){b1=1;b2=settings.nbVisiblePages;}else if(settings.currentPage+dB2>=nbPages){b1=nbPages-settings.nbVisiblePages+1;b2=nbPages;}else{b1=settings.currentPage-dB1+1;b2=settings.currentPage+dB2;}
settings.pager.find("a[class^='"+settings.clPage+"']").hide();for(var i=b1;i<=b2;i++)
settings.pager.find("a."+settings.clPage+i).show();}
manageSegments();}}
var manageSegments=function()
{if(nbPages>1){settings.container.find("ol."+settings.clSegment+"").show();settings.container.find("ol."+settings.clSegment+"").filter(function(index){var c=$(this).children("li:visible");if(c)return c.length==0
else return true;}).hide();settings.container.find("h2."+settings.clSegment+"").hide();settings.container.find("ol."+settings.clSegment+":visible").prev("h2."+settings.clSegment+"").show();}}
var sendPageChange=function()
{if(settings.onPageChange!=null){var _dataToPost={};_dataToPost["paginDHTMLCurrentPage("+settings.onPageChangePaginKey+")"]=settings.currentPage;_dataToPost["paginDHTMLNbLinePerPage("+settings.onPageChangePaginKey+")"]=settings.perPage;_dataToPost["paginDHTMLNbVisiblePageNumber("+settings.onPageChangePaginKey+")"]=settings.nbVisiblePages;_dataToPost["paginDHTMLInitialized("+settings.onPageChangePaginKey+")"]=true;$.ajax({url:settings.onPageChange,global:false,type:"POST",data:_dataToPost,dataType:"html"});}}
init();manageAccess();};
