//Create neccessary variables 
var current = new Array();
var total	= new Array();
var loaded	= new Array();

//When dom is ready, initializa variables
$(document).ready(init);
function init()
{
	try {		
		if (shelfNames.length > 0) {
			for(var i=1; i < shelfNames.length; i++)
			{
				loaded[i] = new Array;
				loaded[i][1] = true;
				current[i] = 1;
				var target = $('#slider_' + i + ' .scrollContainer > div.panel');
				total[i] = target.length;
				$('#slider_' + i + ' > ul#pagination li a').each(function(index){
					var pg = index + 1;
					var no = i;
					$(this).click(function(){
						scroller(no, pg);
					});
					if (pg == 1) {
						$(this).addClass('bold');
					}
				});
			}
		}
	} catch($e) {
		return false;		
	}
}

function scroller (id, page)
{	
	var target = $('#slider_' + id + ' .scrollContainer > div.panel');
	
	if (parseInt(total[id]) < 0 || total[id] == undefined) {
		total[id] = target.length;
	}

	if (parseInt(current[id]) < 1 || current[id] == undefined) {
		current[id] = 1;
	}
	
	var desired = 1; 
	if (page == "next") {
		 desired = current[id] + 1;
	}
	else if (page == "prev") {
		if (current[id] - 1 > 0) {
			desired = current[id] - 1;
		}else{
			desired = 1;
		}
	}else{
		desired = parseInt(page);
	}

	if (parseInt(desired) < 1 || desired > total[id] || desired == current[id]) {
		 return false;
	}
	
	if (desired == 1) {
		$('#slider_' + id + ' > a.arrow-left').addClass('disleft');
		$('#slider_' + id + ' > a.arrow-right').removeClass('disright');
	}
	else if (desired == total[id]) {
		$('#slider_' + id + ' > a.arrow-left').removeClass('disleft');
		$('#slider_' + id + ' > a.arrow-right').addClass('disright');
	}else{
		$('#slider_' + id + ' > a.arrow-left').removeClass('disleft');
		$('#slider_' + id + ' > a.arrow-right').removeClass('disright');
	}
	
	if (loaded[id][desired] != true || loaded[id][desired] == undefined) {
		loaded[id][desired] = false;
	}
	if (loaded[id][desired] === false) {
		if (getAjaxRequest(shelfNames[id], id, page, desired, current[id])) {
			current[id] = desired;
			loaded[id][desired] = true;
		}
	}else{
		current[id] = desired;
		$("#slider_" + id + ' .scroll').scrollTo($('#pan_' + id + '_' + desired), 600, {axis:'x'});
		showActivePage(id, desired);
	}
	return false;
}

function getAjaxRequest(shelfName, id, page, desired, current)
{
	var opts = {
			url: "./",
			data: {ajxreq:1, action: shelfName, page: desired},
			async:true,
			timeout:12000,
			error:function (){
				$('#ajax-loader-' + id).fadeOut('slow');
				alert(error_msg[901]);
				return false;
			},
			beforeSend:function(){
				$('#ajax-loader-' + id).fadeIn('slow');
			},
			complete: function(req){
				if(req.status == 200){
					if(req.responseText.length > 0){
						document.getElementById('pan_' + id + '_' + desired).innerHTML = req.responseText;
						$('#ajax-loader-' + id).fadeOut('slow');
						$("#slider_" + id + ' .scroll').scrollTo($('#pan_' + id + '_' + desired), 600, {axis:'x'});
						showActivePage(id, desired);
						return true;
					}
				}
			}
		};
	return $.ajax(opts);
}

function showActivePage(id, current_page )
{
	$('#slider_' + id + ' #pagination li a').each(function(index){
		index+1 == current_page ?	$(this).addClass('bold')	:	$(this).removeClass('bold'); 	
	});
}

