
$(document).ready(function() {

    if ($('#mycarousel').length > 0) {

		$('#mycarousel').jcarousel({
			visible: 4,
			scroll : 4,

			buttonNextHTML: null,
			buttonPrevHTML: null

		});
    }

    if ($("#search_field").length > 0) {

	$("#search_field").autocomplete('/custom/shop/ajaxHelper.php', {
	    matchContains: true,
	    minChars: 0,
	    extraParams: {
		action: 3
	    },
	    highlight: false

	}).result(function(event, data, formatted) {

	    location.href = '/' + data[1];
		
	});

    }
    
    if ($("#sortandfilter").length > 0) {
		$("#sortandfilter select[name='sort']").change(filterCategory);
		$("#sortandfilter select[name='man']").change(filterCategory);
		$("#sortandfilter input[name='stock']").click(filterCategory);

    }

    $(".shop_front_button a").click(addToCart);
    $("#PROD_info_buybutton a").click(addToCart);
    $(".rel_prod_buylink a").click(addToCart);
	$(".search_div_7_button a").click(addToCart);

    if ($.jGrowl) {
		$.jGrowl.defaults.position = "center";
		$.jGrowl.defaults.life = 4000;
		$.jGrowl.defaults.closer = false;
    }

    $("#PROD_info_thumbs a").click(switchImage);


    $("#productimage_link").click( function() {
		
		var object = $("#imagegallery a.selected");

		if (object.length == 1) {
			$(object).get(0).onclick();

		}

		return false;
		
    });

    if ($("#persnr4").length > 0) {

		$("#persnr4").blur(updateAddress);
    }

    if ($("#persnr5").length > 0) {

		$("#persnr5").blur(updateAddress);
    }

    $("#PROD_info_link a").click(showMore);

	$("#PROD_info_headers div a").click(showSpecification);


    var interval = setInterval(keepSession, 60000*5);


});


function externalLinks() {
    if (!document.getElementsByTagName) return;
    var anchors = document.getElementsByTagName("a");
    for (var i=0; i<anchors.length; i++) {
	var anchor = anchors[i];
	if (anchor.getAttribute("href") &&
	    anchor.getAttribute("rel") == "external")
	    anchor.target = "_blank";
    }
	
}


function filterCategory() {

    var sort	= 0;
    var man		= 0;
    var stock	= 0;

    sort = $("#sortandfilter select[name='sort']").val();

    man = $("#sortandfilter select[name='man']").val();

    if ($("#sortandfilter input[name='stock']").attr('checked')) {
		stock = 1;
    } else {
		stock = 0;
    }

    window.location.search = '?sort=' + sort + '&man=' + man + '&stock=' + stock;
}


function addToCart() {
    var href = $(this).attr('href');
    var query = href.substring(href.lastIndexOf('?')+1).split('&');

    var querystring = new Object();

    for (var i = 0; i < query.length; i++) {

	var temp = query[i].split('=');
	querystring[temp[0]] = temp[1];

    }

    $.post('/custom/shop/ajaxHelper.php',
    {
		action: querystring.action,
		type:	querystring.type,
		value:	querystring.value
    },
    function(data) {
		$("#BODY_cart_text span").html(data.sum);
		var string = '<b>' + data.string + '</b><br/>' + data.product + '<br/>' ;
		//var test = Math.round(Math.random());


		if ($.jGrowl) {
			$.jGrowl(string, {
			sticky: false
			});
		}
    },

    'json');

    return false;
}


function switchImage(event) {
	
    var first	= $(this).attr('href').substring(0, $(this).attr('href').lastIndexOf('_')+1);
    var last	= $("#productimage_link").attr('href').substring($("#productimage_link").attr('href').lastIndexOf('_')+1);

    var imglast = $("#productimage_link img").attr('src').substring($("#productimage_link img").attr('src').lastIndexOf('_')+1);

    $("#productimage_link img").attr('src', first + imglast);

    $("#productimage_link").attr('href', first + last);


    $("#PROD_info_thumbs a").each(
	function (intIndex){

	    $(this).removeClass('selected');
			
	});


    $(this).addClass('selected');
    var selectedind = 0;

    $("#PROD_info_thumbs a").each(
	function (intIndex){
	    if($(this).hasClass('selected')) {
			selectedind = intIndex;
			return false;
			//$(this).removeClass('selected');
	    }

	});


    $("#imagegallery a").each(
	function (intIndex){

	    $(this).removeClass('selected');

	});

    $("#imagegallery a").each(
	function (intIndex) {
	    //console.log('i ' + intIndex + ' : ' + $(this).attr('href'));
	    if (intIndex == selectedind) {
			$(this).addClass('selected');
			//console.log('Found: ' + intIndex);
			return false;

	    }
	}
	);

    $(this).addClass('selected');
	
    return false;
}

function updateAddress() {

    if ($(this).val().length > 0) {

	$.post('/custom/shop/ajaxHelper.php',
	{
	    action: 2,
	    type:	1,
	    value:	$(this).val()
	},
	function(data) {
	    if (data.name != '') {
		$("#bname").html(data.name);
		$("#baddress2").html(data.address2);
		$("#bpostaddress").html(data.postaddress);
	    }
	},

	'json');

    }
}

function keepSession() {
    $.ajax({
	type: "GET",
	data: ({
	    action : 99
	}),
	url: '/custom/shop/ajaxHelper.php',
	cache: false

    });

}

function showMore() {
    $("#PROD_moreinfo_text").toggle();
    return false;
}

function showSpecification() {
	
	$("#PROD_info_details").toggle();
	$("#PROD_info_facts").toggle();
	$("#PROD_info_headers div").each(function(intIndex) {
		if ($(this).hasClass('PROD_info_header')) {
			$(this).removeClass('PROD_info_header');
			$(this).addClass('PROD_info_header_off');
		} else {
			$(this).removeClass('PROD_info_header_off');
			$(this).addClass('PROD_info_header');
		}
	});
	
	return false;
}