﻿			function pagination(classActive,classNonActive,blocPagination,nbByPage,affichePagination,option,numpageSelect){

	            limit=Math.ceil($(blocPagination).size()/nbByPage);
	            retour = "";
	           
	            if(limit > 1) {
	            	if(option) {
	            		//retour='<a href="javascript:void(0);" name="First" class="'+classNonActive+'">&lt;&lt; Premier</a>';
	            		retour+='<a href="javascript:void(0);" name="Prev" class="'+classNonActive+'Option">&lt; Précédent</a>';
	            	}
	            	for(i=1;i<=limit;i++){
	            		if(numpageSelect == i) {
	            			retour+='<a href="javascript:void(0);" name="page'+i+'" class="'+classActive+'">'+i+'</a>';
	            		} else {
	            			retour+='<a href="javascript:void(0);" name="page'+i+'" class="'+classNonActive+'">'+i+'</a>';
	            		}
		            }
	            	if(option) {option
	            		retour+='<a href="javascript:void(0);" name="Next" class="'+classNonActive+'Option">Suivant &gt;</a>';
	            		//retour+='<a href="javascript:void(0);" name="Last" class="'+classNonActive+'">Dernier &gt;&gt;</a>';
	            	}
	            }	
	            
	            affichePagination.empty();	
	            affichePagination.html(retour);	     
	        }
			
			function selectPage(el,affichePagination,classActive,classNonActive,nbByPage,blocPagination){
                var element=affichePagination.children("a[name^='page']");
                if(element.html()!=null){
                    show(el,nbByPage,blocPagination);
                }
            }
			
			function show(el,nbByPage,blocPagination){ 
                var size=nbByPage;
                var deb=((el-1)*size);
                var fin=(el*size);
                affiche(blocPagination,deb,fin);
            }
            
            function affiche(el,deb,fin){
                $(el).css("display","none");
                $(el+":lt("+fin+")").css("display","");
                $(el+":lt("+deb+")").css("display","none");
            }

	
			function pagine(affichePagination,blocPagination,nbByPage,classActive,classNonActive,option) {			
			   show(1,nbByPage,blocPagination);
		       pagination(classActive,classNonActive,blocPagination,nbByPage,$(affichePagination),option,1);
		            
		       $(affichePagination).children("a[name^='page']").click(function() {
		           var page=$(this).attr('name').substr(4);
		           selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
		          
		           $(affichePagination).children("a[name^='page']").attr("class",classNonActive);
		           $(this).attr("class",classActive);
		       });
		       
		       
		      
		       
		       
		       $(affichePagination).children("a[name='Prev']").click(function() {
		           var page=parseInt($(affichePagination+" ."+classActive).attr('name').substr(4))-1;

		           if(page>0) {
		        	   selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
                       $(affichePagination).children($("."+classActive)).attr("class",classNonActive);
                       $(affichePagination).children("a[name='Next']").attr("class",classNonActive+'Option');
                       $(affichePagination).children("a[name='Prev']").attr("class",classNonActive+'Option');
		        	   $(affichePagination).children("a[name^='page"+page+"']").attr("class",classActive);	
		           }
		       });
		       
		       $(affichePagination).children("a[name='Next']").click(function() {
		           var page=parseInt($(affichePagination+" ."+classActive).attr('name').substr(4))+1;
		           
		           limit=Math.ceil($(blocPagination).size()/nbByPage);
		           if(page<=limit) {
		        	   selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);		        	   
                       $(affichePagination).children($("."+classActive)).attr("class",classNonActive);
                       $(affichePagination).children("a[name='Next']").attr("class",classNonActive+'Option');
                       $(affichePagination).children("a[name='Prev']").attr("class",classNonActive+'Option');
		        	   $(affichePagination).children("a[name^='page"+page+"']").attr("class",classActive);
		           }
		       });
		       
		       
		       
		       $(affichePagination).children("a[name='First']").click(function() {
		           var page=1;

		          selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
		          $(affichePagination).children($("."+classActive)).attr("class",classNonActive);
		          $(affichePagination).children("a[name^='page"+page+"']").attr("class",classActive);	
		       });
		       
		       $(affichePagination).children("a[name='Last']").click(function() {
		           var page=Math.ceil($(blocPagination).size()/nbByPage);
		           
		           selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
		           $(affichePagination).children($("."+classActive)).attr("class",classNonActive);
		           $(affichePagination).children("a[name^='page"+page+"']").attr("class",classActive);
		       });
			}
			
			
			
			
			
			
			function pagineAndSelectPage(affichePagination,blocPagination,nbByPage,classActive,classNonActive,option,index,ancre) {			
				   
				  
				   pageSelect = parseInt($(blocPagination).index($(index))/nbByPage)+1;
				   show(pageSelect,nbByPage,blocPagination);
			       pagination(classActive,classNonActive,blocPagination,nbByPage,$(affichePagination),option,pageSelect);
			       window.location.hash = ancre;

			       
			       $(affichePagination).children("a[name^='page']").click(function() {
			           var page=$(this).attr('name').substr(4);
			           selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
			          
			           $(affichePagination).children("a[name^='page']").attr("class",classNonActive);
			           $(this).attr("class",classActive);
			       });
			       
			       
			      
			       
			       
			       $(affichePagination).children("a[name='Prev']").click(function() {
			           var page=parseInt($(affichePagination+" ."+classActive).attr('name').substr(4))-1;

			           if(page>0) {
			        	   selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
			        	   $(affichePagination).children($("."+classActive)).attr("class",classNonActive);
			        	   $(affichePagination).children("a[name^='page"+page+"']").attr("class",classActive);	
			           }
			       });
			       
			       $(affichePagination).children("a[name='Next']").click(function() {
			           var page=parseInt($(affichePagination+" ."+classActive).attr('name').substr(4))+1;
			           
			           limit=Math.ceil($(blocPagination).size()/nbByPage);
			           if(page<=limit) {
			        	   selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
			        	   $(affichePagination).children($("."+classActive)).attr("class",classNonActive);
			        	   $(affichePagination).children("a[name^='page"+page+"']").attr("class",classActive);
			           }
			       });
			       
			       
			       
			       $(affichePagination).children("a[name='First']").click(function() {
			           var page=1;

			          selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
			          $(affichePagination).children($("."+classActive)).attr("class",classNonActive);
			          $(affichePagination).children("a[name^='page"+page+"']").attr("class",classActive);	
			       });
			       
			       $(affichePagination).children("a[name='Last']").click(function() {
			           var page=Math.ceil($(blocPagination).size()/nbByPage);
			           
			           selectPage(page,$(affichePagination),classActive,classNonActive,nbByPage,blocPagination);
			           $(affichePagination).children($("."+classActive)).attr("class",classNonActive);
			           $(affichePagination).children("a[name^='page"+page+"']").attr("class",classActive);
			       });
				}
		
		
