var CurrentPage = 0;

$.fn.upcomingupdates = function(options){
	
	var CurrObj = $(this);
	
	var settings = {
		PagerMessage:"",
		FirstPage:'<<...',
		LastPage:'... >>',
		AnchorName:'',
		HandlySelected:{
		},
		Files:"Files",
		Size:"",
		MissingJS:"<strong>We are sorry, your browser is too old or you hace disable javascript execution wich is required to see this content</strong>"
	}
	
	if(options){
		$.extend(settings,options);
	}
	
	//try {
	  
		// Check upcoming_gal_updates
		if(upcoming_gal_updates!=undefined){
			
			// Prepare layout
			var html = "";
			html += "<div id='Images'></div>";
			html += "<div class='pager'></div>";
			
			// Write
			$(CurrObj).html(html);
		
			// Check upcoming_gal_updates
			if(upcoming_gal_updates!=undefined){
			  
				if(upcoming_gal_updates.pages!=undefined){
				
					var html = "<div class='pagermessage'>"+settings.PagerMessage+"</div>";
					
					for(var i=1;i<=upcoming_gal_updates.pages;i++){
						
					  html += "<span class='pagerlink' title='"+i+"'>";
						
						if(i==1){
							html += settings.FirstPage;
						}else if(i==upcoming_gal_updates.pages){
							html += settings.LastPage;
						}else{
							html += i;
						}
						
						html += "<\/span>";
						
					}
					
					html += "<div class='clear'><\/div>";
					
					$('.pager').html(html);
					
				}
				
		
			
			// Pages links	
			$('.pagerlink').css({
				cursor:'pointer'
			})
			
			if ($('.pagerlink').length<2) {
			  $('.pager').css('display','none');
			};
			
			$('.pagerlink').click(function(){
				
				// retrive id
				var id = $(this).attr('title');
				
				// set j
				var j = Math.floor(id)-1;
				
				// hide all pagerilnks
				var pagerlink = $('.pagerlink').get();
				
				// start and end
				var leftLimit = (j-4>=0) ? (j-4) : 0;
				var rightLimit = leftLimit+9;
				
				// show all
				$('.pagerlink').show();
				
				// hide the rest
				//$($('.pagerlink').gt(rightLimit)).hide();
				//$($('.pagerlink').lt(leftLimit)).hide(); $('li:gt(2)') or $('li').slice(3)
				$($('.pagerlink').slice(rightLimit+1)).hide();
				$($('.pagerlink').slice(0,leftLimit)).hide();

				
				// show first and last always...
				$('.pagerlink:first,.pagerlink:last').show();
				
				// prepare out
				var html = "";
				
				// fetch object
				for(var i=0;i<=upcoming_gal_updates.table[j].length-1;i++){
				
					// retrive date value
					var date = upcoming_gal_updates.table[j][i].date;
				
					// create block for this element
					html += "<div class='thumb'>";
					
					if(settings.Size!=""){
					  upcoming_gal_updates.table[j][i].img = upcoming_gal_updates.table[j][i].img.split("_com_").join(settings.Size);
					}
					
					if(settings.HandlySelected[date]==undefined){
						html += "	<div class='img'><img src='"+upcoming_gal_updates.table[j][i].img+"' alt='"+date+"' \/><\/div>";
					}else{
						html += "	<div class='img'><img src='"+settings.HandlySelected[date]+"' alt='"+date+"' \/><\/div>";
					}
					
					html += " <div class='details'>";
					html += "	 <div class='date'>"+upcoming_gal_updates.table[j][i].date+"<\/div>";
					html += "	 <div class='name'>"+upcoming_gal_updates.table[j][i].name+"<\/div>";
					html += "	 <div class='files'>"+(upcoming_gal_updates.table[j][i].files>0?(upcoming_gal_updates.table[j][i].files+" "+settings.Files):'&nbsp;')+"<\/div>";
					html += " <\/div>";
					html += "<\/div>";
					
				}
				
				html += "<div class='clear'><\/div>";
				
				// write images
				$('#Images').html(html);
				
				// remove last clicked
				$('.clicked').removeClass('clicked').addClass('normal');
				
				// set last clicked
				$(this).removeClass('normal').addClass('clicked');
			
				// move scroll to top
				if(j!="0"){
					  location.href='#'+settings.AnchorName;
					}
				
			});
			
			// Display 0 at start
			$('.pagerlink:first').click();
			
			}else{
			
				$('#Images').html('upcoming_gal_updates not found');
			
			}
		}
	
	//}catch(error){
		//$(CurrObj).html(settings.MissingJS);
	//}
}