function scroll (slider_id, direction, callAjax)
{
	if (parseInt(total[slider_id]) < 0 || typeof total[slider_id] == 'undefined') {
		total[slider_id] = target.length;
	}

	if (parseInt(current[slider_id]) < 1 || typeof current[slider_id] == 'undefined') {
		current[slider_id] = 1;
	}
	var desired = 1;
	if (direction == "next") {
		 desired = current[slider_id] + 1;
	}
	else if (direction == "prev") {
		if (current[slider_id] - 1 > 0) {
			desired = current[slider_id] - 1;
		}else{
			desired = 1;
		}
	}else{
		return false;
	}

	if (parseInt(desired) < 1 || desired > total[slider_id] || desired == current[slider_id]) {
		return false;
	}
	checkArrows(slider_id, desired);

	if (callAjax == undefined) {
		var callAjax = true;
	}else{
		var callAjax = false;
	}

	if (loaded[slider_id][desired] === false && callAjax === true) {
		if (gatherData(sections[slider_id], slider_id, desired, current[slider_id])) {
			current[slider_id] = desired;
			loaded[slider_id][desired] = true;
		}
	}else{
		current[slider_id] = desired;
		$("#slider_" + slider_id + ' .scroll').scrollTo($('#pan_' + slider_id + '_' + desired), 600, {axis:'x'});
		showActivePage(slider_id, desired);
	}
	return false;
}

function getUrlParameter (name)
{
	name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
	var regexS = "[\\?&]"+name+"=([^&#]*)";
	var regex = new RegExp( regexS );
	var results = regex.exec( window.location.href );
	if( results == null )
		return "";
	else
		return results[1];
}

function getControllerName()
{
	controllerName = 'index';
	pathArray = window.location.pathname.split( '/' );
	pathArrayFiltered = Array();
	for ( i = 0; i < pathArray.length; i++ )
	{
		if(pathArray[i] != "") {
			pathArrayFiltered[pathArrayFiltered.length] = pathArray[i];
		}
	}

	if(pathArrayFiltered.length > 0) {
		if (pathArrayFiltered[0].substr(0, 1) == 8) {
			if (pathArrayFiltered.length > 1) {
				controllerName = pathArrayFiltered[0] + "/" + pathArrayFiltered[1];
			} else {
				controllerName = pathArrayFiltered[0] + "/index";
			}
		} else {
			controllerName = pathArrayFiltered[0];
		}
	}
	return controllerName;
}

function gatherData(section, slider_id, desired, current)
{
	controllerName =  getControllerName();
	var opts = {
			url: '/'+controllerName+'/ajax/',
			//url: "./",
			data: { ajax: 1,section: section, page: desired, id: getUrlParameter('id'), idcat: getUrlParameter('idcat'), key: getUrlParameter('key'),keysearch: getUrlParameter('keysearch'), value: getUrlParameter('value'), channel: getUrlParameter('channel')},
			type: "POST",
			async:true,
			timeout:45000,
			error:function (){
				$('#ajax-loader-' + slider_id).fadeOut('slow');
				alert('System error!');
				return false;
			},
			beforeSend:function(){
				$('#ajax-loader-' + slider_id).fadeIn('slow');
			},
			complete: function(req){
				if(req.status == 200){
					if(req.responseText.length > 0){
						document.getElementById('pan_' + slider_id + '_' + desired).innerHTML = req.responseText;
						$('#pan_' + slider_id + '_' + desired).show();
						$('#ajax-loader-' + slider_id).fadeOut('slow');
						$("#slider_" + slider_id + ' .scroll').scrollTo($('#pan_' + slider_id + '_' + desired), 600, {axis:'x'});
						showActivePage(slider_id, desired);
						return true;
					}
				}
			}
		};
	return $.ajax(opts);
}

function showActivePage(slider_id, current_page)
{
	$('#pagination_' + slider_id + ' a.current_page').text(current_page);
}

function checkArrows(slider_id, desired)
{
	if (desired > 1) {
		$("#slider_" + slider_id + ' > a.arrow-left').removeClass('disleft');
		$("#pagination_" + slider_id + ' > a.prev_page').removeClass('NoActive');
	}
	if (desired == 1) {
		$("#slider_" + slider_id + ' > a.arrow-left').addClass('disleft');
		$("#pagination_" + slider_id + ' > a.prev_page').addClass('NoActive');
	}
	if (desired == total[slider_id]) {
		$("#slider_" + slider_id + ' > a.arrow-right').addClass('disright');
		$("#pagination_" + slider_id + ' > a.next_page').addClass('NoActive');
	}
	if (desired < total[slider_id]) {
		$("#slider_" + slider_id + ' > a.arrow-right').removeClass('disright');
		$("#pagination_" + slider_id + ' > a.next_page').removeClass('NoActive');
	}
	if (loaded[slider_id][desired] != true || typeof loaded[slider_id][desired] == 'undefined') {
		loaded[slider_id][desired] = false;
	}
}