// JavaScript Document

/*
	QNavigation 0,1
	
	/script/jquery/jquery.qnavigation.js
	
	
	Uitbreiden met:
	- skins
	- vorige volgende
	- callbacks
	
*/

jQuery.fn.qnavigation = function(options) {

	var settings = jQuery.extend({
		visible: 10,
		text: 'Bladeren'
	}, options);
	
	return this.each(function(){
		$this = $(this);
		
		if(settings.visible < $this.find('li').length){
		
			var pages = Math.ceil( $this.find('li').length / settings.visible );
			
			var start = 0;
			var end = 0;
			var container = '<div class="qnavigation"></div>';
			var list = '';
			var nav = settings.text+'<ul class="qnav">';
			var active = 1;
			var liClass = '';
			var ulClass = '';
			
			for(x=0; x<$this.find('li').length; x++){
				if($this.find('li').eq(x).hasClass('active')){
					active = Math.ceil((x+1) / settings.visible);
				}
			}
			
			for(i=1; i<=pages; i++){

				if(i==1){ 
					liClass += ' first ';
				}
				else if(i==pages){
					liClass += ' last ';
				}
				else{
					liClass += '';
				}
				
				if(i == active){
					ulClass = 'block';
				}
				else{
					ulClass = 'none';
				}
				
				
				nav += '<li class="' + liClass + '"><a href="#">' + i + '</a></li>';
				list += '<ul class="qlist" style="display:'+ulClass+';">';
				
				for(j=(i*settings.visible)-settings.visible; j<(i*settings.visible); j++){
					if(j<$this.find('li').length){
						list += '<li class="' + liClass + ' ' + $this.find('li').eq(j).attr('class') + '" >' + $this.find('li').eq(j).html() + '</li>';
					}
				}
				
				list += '</ul>';
			}
			
			nav += '</ul>';
			
			$this.replaceWith( container );
			
			$('div.qnavigation').html( list ).append( nav ).find('ul.qnav li a').click(function(){
																								
				$('div.qnavigation > ul.qlist').css('display','none');
				$('div.qnavigation > ul.qlist').eq(parseInt($(this).text())-1).css('display','block');
				
				$('div.qnavigation > ul.qnav li').removeClass('active');
				$(this).parent().addClass('active');
				
				
				fix_height(175);
				
				return false;
			});
		
		}
		
	});

};

