// this file is used for creating the gallery system (collapsable gallery items)

shgal_settings={};
shgal_settings.pages=6;
shgal_settings.threshold=3;
shgal_settings.page=1;

function bootstrapgallery()
{
	gogalimg('1');
}

function gogalimg(number)
{
	var max=$('div.gallery div.galimg').length;
	if(number<=0 || number>max)
		return false;
	resetgal(number);
}

function resetgal(number)
{	
	var gal=$('div.gallery div.galimg');
	if(!gal.length) return;
	
	if($('div.gallery ul.pager').length)
	{
		$('div.gallery ul.pager').empty();
		var pager=$('div.gallery ul.pager');
	}
	else
	{
		$('div.gallery').prepend('<ul class="pager"></ul>');
		var pager=$('div.gallery ul.pager');
		// assigning the onClick event to the paging device
		pager.click
		(
			function(ev)
			{
				var target=$(ev.target);
				if(target.attr('rel'))
					gogalimg(target.attr('rel'));
			}
		);
	}
	
	// determining and normalising the minimum and maximum page
	var min=number-shgal_settings.threshold < 1 ? 1 : number-shgal_settings.threshold ;
	var max=min+shgal_settings.pages-1;
	min=max > gal.length ? gal.length - shgal_settings.pages + 1 : min;
	max=max > gal.length ? gal.length : max;
	
	// gating at the beginning
	if(number>1)
		pager.append('<li><a href="javascript: void(0);" class="gate" rel="'+(number-1)+'">&lt;Prev</a></li>');
	else
		pager.append('<li><a href="javascript: void(0);" class="gate disabled" rel="'+(number-1)+'">&lt;Prev</a></li>');
	
	var i=0;
	gal.each
	(
		function()
		{
			i++;
				
			$(this).hide();
			
			if(i > max || i<min)
				return;
				
			if(i == number)
				$(this).fadeIn(100);
			pager.append('<li><a href="javascript: void(0);" class="'+(i == number ? 'sel' : '')+'" rel="'+i+'">'+(i)+'</a></li>');
		}
	);
	
	if(max<gal.length)
	{
		pager.append('<li><a href="javascript: void(0);" class="disabled" style="color:black !important">...</a></li>');
		pager.append('<li><a href="javascript: void(0);" rel="'+gal.length+'">'+(gal.length)+'</a></li>');
	}
	
	number=(number-1)+1;
	// gating at the end
	if(number<gal.length)
		pager.append('<li><a href="javascript: void(0);" class="gate" rel="'+(number+1)+'">Next&gt;</a></li>');
	else
		pager.append('<li><a href="javascript: void(0);" class="gate disabled" rel="'+(number+1)+'">Next&gt;</a></li>');
}
