//-------------------------------------------------
//		Quick Pager jquery plugin
//		www.geckonewmedia.com
//-------------------------------------------------

(function($) {
	    
	$.fn.quickPager = function(options) {
	
		  var defaults = {
        pageSize: 10,
        currentPage: 1,
        elementId: "",
        holder: ""
    	};
    	var options = $.extend(defaults, options);
	  	
		//leave this
		var selector = $(this);
		var totalRecords = $(this).children().length;
		var pageCounter = 1;

		selector.children().each(function(i){
			if(i < pageCounter*options.pageSize && i >= (pageCounter-1)*options.pageSize) {
				$(this).addClass("page"+pageCounter);
			}
			else {
				$(this).addClass("page"+(pageCounter+1));
				pageCounter ++;
			}	
		});
		 
		//show/hide the appropriate regions 
		selector.children().hide();
		$(".page"+options.currentPage).show();
		
		//first check if there is more than one page. If so, build nav
		if(pageCounter > 1) {
			
			//Build pager navigation
			var pageNav = '<UL class="pageNav" id="pagenavigation'+options.elementId+'">';	
			for (i=1;i<=pageCounter;i++){
				
								
				if (i==options.currentPage) {
					pageNav += '<LI class="currentPage"><A rel="'+i+'" href="#">'+i+'</A></LI>';	
				}
				else {
					pageNav += '<LI class="pageNav'+i+'"><A rel="'+i+'" href="#">'+i+'</A></LI>';
				}
				
			}

			pageNav += "</UL>";
			
			if(options.holder == "") {
				selector.after(pageNav);
			}
			else {
				$(options.holder).append(pageNav);
			}
						
			//pager navigation behaviour
			$("#pagenavigation"+options.elementId+" a").live("click", function() {			
				//grab the REL attribute 
				var clickedLink = $(this).attr("rel");
				options.currentPage = clickedLink;
				//remove current current (!) page
				$("#pagenavigation"+options.elementId+" li.currentPage").removeClass("currentPage");
				//Add current page highlighting
				$(this).parent("#pagenavigation"+options.elementId+" li").addClass("currentPage");
				//hide and show relevant links				
				selector.children().hide();			
				selector.find(".page"+clickedLink).show();
				return false;
			});
			
		}
			  
	}
	

})(jQuery);

