var searchTimer = 0;

document.onclick = docClick;
function docClick () {
	closeSearchList(null);
}
//******************************************************************************************************************************

/* ===== custom getElementsByClass ==== */
function getElementsByClass (object, tag, className) {
	var o = object.getElementsByTagName(tag);
	for ( var i = 0, n = o.length, ret = []; i < n; i++)
		if (o[i].className == className) ret.push(o[i]);
	//if (ret.length == 1) ret = ret[0];
	return ret;
}
//******************************************************************************************************************************
function goToLink(url){
	window.location.href = url;
}
//******************************************************************************************************************************
function changeSearchInput(e, select_id){
	
	var the_options = document.getElementById("options_"+select_id);
	if (the_options.style.display == "none"){
		the_options.style.display = "block";
	}else{
		the_options.style.display = "none";
	}
	
	
	closeSearchList(the_options);
	
	if (!e) var e = window.event;
	e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();
		
}
//******************************************************************************************************************************
function closeSearchList(the_options){
	
	var objSearch = document.getElementById("searchEngine");
	
	var itms = getElementsByClass(objSearch, 'div', 'options');
	for (var i = 0, o; o = itms[i]; i++) {
		if (the_options){
			if (o != the_options){
				o.style.display = "none";
			}
		}else{
			o.style.display = "none";
		}
	}

}

//******************************************************************************************************************************
function doSearchFromList(select_id, option_id){
	
	//alert(select_id + ' - ' + option_id);	
	var the_options = document.getElementById("options_"+select_id);
	the_options.style.display = "none";
	
	var the_select = document.getElementById("select_"+select_id);
	var the_value = document.getElementById("value_"+select_id);
	var the_content = document.getElementById("content_"+select_id);
	var the_option = document.getElementById("option_"+select_id+"_"+option_id);
	
	
	the_value.value = option_id;
	if (option_id == 0){
		the_select.className = "select";
	}else{
		the_select.className = "select_sel";
	}
	the_content.innerHTML = the_option.innerHTML;
	
	
	//setSearchTimer();
	//searchForm.submit();
	//window.setTimeout("setSearchTimer(3)", 100);
		
}
//******************************************************************************************************************************
	function setSearchTimer(){
		if (searchTimer == 0){
			searchTimer = 10;
			setInterval(function () {
				startSearch()
			}, 300);
		}else{
			searchTimer = 10;
		}
		
		
	}
//******************************************************************************************************************************
	function startSearch(){
		searchTimer--;
		if (searchTimer <= 0){
			searchForm.submit();
		}
	}
//******************************************************************************************************************************
function addToBasket(ajaxUrl, iPos, pid){
	
	$('#basketWidget').load(
		ajaxUrl,
		{ product_id: pid }
	  );
	
	
	var productImage = document.getElementById("productImage_"+iPos+"_"+pid);
	var panier = document.getElementById("basketWidget");
	
	
	var pos1 = getPosition(productImage);
	
	
	var img = document.createElement('img');
	img.id = "moveobject";
	img.src = productImage.src;
	img.style.position = 'absolute';
	img.style.left = pos1[0] + 'px';
	img.style.top = pos1[1] + 'px';
	img.style.width = productImage.width + 'px';
	img.style.height = productImage.height + 'px';
	document.body.appendChild(img);
	
	lepas = 20;

	var pos2 = getPosition(panier);
//alert(pos2);
	pasX = ((pos2[0]+100) - pos1[0])/lepas;
	pasY = ((pos2[1]+20) - pos1[1])/lepas;
	
	pasW = img.offsetWidth / lepas;
	pasH = img.offsetHeight / lepas;
	
	//moveObj(img.id, pasX, pasY, pasW, pasH,  lepas);	
	
	$("#moveobject").animate({ 
    width: "0px",
	opacity: 0.8,
	height: "0px",
	top: pos2[1]+20+'px',
	left:pos2[0]+55+'px'
  }, 350, function() {
    document.body.removeChild(img);
  });
}
//******************************************************************************************************************************
function moveObj(id, pasX, pasY, pasW, pasH, max){
	obj = document.getElementById(id);
	if (max > 1){
		max = max - 1;
		obj.style.left = parseInt(obj.style.left) + pasX + 'px';
		obj.style.top = parseInt(obj.style.top) + pasY + 'px';
		obj.style.width = parseInt(obj.style.width) - pasW + 'px';
		obj.style.height = parseInt(obj.style.height) - pasH + 'px';
		alert("moveObj('" +id+ "', " +pasX+ ", " +pasY+ ", " +pasW+ ", " +pasH+ ", " +max+ ")");
		window.setTimeout("moveObj('" +id+ "', " +pasX+ ", " +pasY+ ", " +pasW+ ", " +pasH+ ", " +max+ ")", 30);
	}else{
		
		document.body.removeChild(obj);
	}
}
//******************************************************************************************************************************
function getPosition(obj){
	var curleft = curtop = 0;

	if (obj.offsetParent) {
		do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);

	}
	return [curleft,curtop];
}
//******************************************************************************************************************************
/*function setOnglet(cur, max){
	
	for(var i=1;i<=max;i++){
		var elm = document.getElementById('onglet_' + i);
		elm.className = 'onglet0';
		var cont = document.getElementById('onglet_content_' + i);
		cont.style.display = 'none';
	}
	var elm = document.getElementById('onglet_' + cur);
	elm.className = 'onglet1';
	var cont = document.getElementById('onglet_content_' + cur);
	cont.style.display = 'block';
	
}*/
//******************************************************************************************************************************
function displayDeliveryAddress(ajaxUrl){
	var elm = document.getElementById('delivery_address');
	var aid = elm.value;
	

	$('#DeliveryAddressDetails').load(
		ajaxUrl,
		{ address_id: aid }
	);
}
//******************************************************************************************************************************
function displayBillingAddress(ajaxUrl){
	var elm = document.getElementById('billing_address');
	var aid = elm.value;
	

	$('#BillingAddressDetails').load(
		ajaxUrl,
		{ address_id: aid }
	);
}
//******************************************************************************************************************************
function setAddress(url){
	var elm = document.getElementById('address');
	var aid = elm.value;
	
	window.location.href = url + '?address_id=' + aid;
}
//******************************************************************************************************************************
function setChild(url){
	var elm = document.getElementById('child');
	var aid = elm.value;
	
	window.location.href = url + '?child_id=' + aid;
}
//******************************************************************************************************************************
function prodblShowExtra1(bid){
  $("#prodbl_extra"+bid).animate({ 
    width: "131px",
	opacity: 0.8,
	height: "27px",
    fontSize: "11px"
  }, 150 );
}
//******************************************************************************************************************************
function prodblHideExtra1(bid){
  $("#prodbl_extra"+bid).animate({ 
    width: "0px",
	opacity: 0.0,
	height: "0px",
    fontSize: "0em"
  }, 150 );
}
//******************************************************************************************************************************
function prodShDescToggle(readTxt, maskTxt){

	var elm = document.getElementById('prodDescription');
	var btn = document.getElementById('openDesc');
	var mheight = elm.scrollHeight;
	var nheight = elm.offsetHeight;
	
	if (nheight == mheight){
		btn.innerHTML = readTxt;
		$("#prodDescription").animate({ 
    		height: "180px"
  		}, 150 );
	}else{
		btn.innerHTML = maskTxt;
		$("#prodDescription").animate({ 
			height: mheight + "px"
		}, 150 );
	}
  
}

//******************************************************************************************************************************
function basketSetQtty(basketWidgetUrl, basketTabUrl, lineNum, addQtty){
	
		
	var qtty = parseInt(document.getElementById("qtty_"+lineNum).value);
	
	if (addQtty > 0){
		document.getElementById("qtty_"+lineNum).value = qtty + addQtty;
		changeBasketQuantity(basketWidgetUrl, basketTabUrl, lineNum);
	}else if(addQtty < 0 && qtty > 1){
		document.getElementById("qtty_"+lineNum).value = qtty + addQtty;
		changeBasketQuantity(basketWidgetUrl, basketTabUrl, lineNum);
	}else if (addQtty == 0){
		document.getElementById("qtty_"+lineNum).value = 0;
		changeBasketQuantity(basketWidgetUrl, basketTabUrl, lineNum);
	}
	
	
}
//******************************************************************************************************************************
function changeBasketQuantity(basketWidgetUrl, basketTabUrl, lineNum){
	
	showBasketLoader();
		
	var elm = document.getElementById('qtty_' + lineNum);
	var classes = (elm.className).split(" ");
	var tmp = classes[1].split("_");
	var pid = tmp[1];
	
	if (!(parseInt(elm.value)>=0)){
		elm.value = '1';
	}
	
	var qtty = 0;
	var basketTab = document.getElementById('basketTab');
	var o = basketTab.getElementsByTagName('input');
	for ( var i = 0, n = o.length, ret = []; i < n; i++)
		if (o[i].className == 'quantity prodid_'+pid){
			qtty += parseInt(o[i].value);
		}
	
		
	$('#basketWidget').load(
		basketWidgetUrl,
		{ product_id: pid, product_quantity: qtty },
		function(){
			refreshBasket(basketTabUrl);
		}
	);
}
//******************************************************************************************************************************
function refreshBasket(basketTabUrl){
	
	showBasketLoader();
	
	var country = document.getElementById('country');
	$('#basketTab').load(
		basketTabUrl,
		{country_id: country.value},
		function() { $('#loader').hide(); }
	);
	
}
function addPromoCode(promoCodeUrl, basketTabUrl){
	
	showBasketLoader();
	
	var elm = document.getElementById('promocode');
	
	
	$('#basketWidget').load(
		promoCodeUrl,
		{ promo_code: elm.value },
		function(){
			refreshBasket(basketTabUrl);
		}
	);
	
}
//******************************************************************************************************************************
function remPromoCode(promoCodeUrl, basketTabUrl, code){
	
	showBasketLoader();
	
	
	$('#basketWidget').load(
		promoCodeUrl,
		{ promo_code: code },
		function(){
			refreshBasket(basketTabUrl);
		}
	);
	
}
//******************************************************************************************************************************
function showBasketLoader(){
	
	var loader = document.getElementById('loader');
	var img_loader = document.getElementById('img_loader');
	var basketTab = document.getElementById('basketTab');
	
	
	loader.style.width = basketTab.offsetWidth + 'px';
	loader.style.height = basketTab.offsetHeight + 'px';
	
	img_loader.style.top = ((basketTab.offsetHeight/2) -50)+ 'px';
	
	$('#loader').show();
	
}
//******************************************************************************************************************************
function buttonOver(obj, state){
	
	var add = 0;
	if (state){
		add = 3;
	}
	
	var o = obj.getElementsByTagName('div');
	for ( var i = 0; i < o.length; i++){
		var cname = o[i].className;
		switch (cname) {
			case 'buttonleft':
				o[i].style.backgroundPosition = "0px -"+((add+0)*20)+"px";
				break;
			case 'buttoncontent':
				o[i].style.backgroundPosition = "0px -"+((add+1)*20)+"px";
				break;
			case 'buttonright':
				o[i].style.backgroundPosition = "0px -"+((add+2)*20)+"px";
				break;
		}
		
	}
}
//******************************************************************************************************************************
function setProdThumbPage(ajaxUrl, bid, page, c_type){
	
	//alert(ajaxUrl + "++" + bid  + "++" + page);
	
	var elm1 = document.getElementById('pager_' + bid + "_" + page + '_1');
	var elm2 = document.getElementById('pager_' + bid + "_" + page + '_2');
	var src = elm1.src;
	var tmp = src.split("/");
	
	var path = src.substring(0, src.length - tmp[tmp.length-1].length);
	var tmp2 = tmp[tmp.length-1].split(".");
	var imgname = tmp2[0].substr(0, tmp2[0].length-1);
	var ext = tmp2[1];
	var state = tmp2[0].substr(tmp2[0].length-1, 1);
	
	if (state == '0'){
	
	
		var obj1 = document.getElementById('pagination_' + bid + '_1');
	
		var o = obj1.getElementsByTagName('img');
		for ( var i = 0; i < o.length; i++){
			if (o[i].className == 'pager_spot_' + bid){
				o[i].src = path + imgname + '0.' + ext;
			
			}
		}
	
		elm1.src = path + imgname + '1.' + ext;
		
		var obj2 = document.getElementById('pagination_' + bid + '_2');
	
		var o = obj2.getElementsByTagName('img');
		for ( var i = 0; i < o.length; i++){
			if (o[i].className == 'pager_spot_' + bid){
				o[i].src = path + imgname + '0.' + ext;
			
			}
		}
	
		elm2.src = path + imgname + '1.' + ext;

//alert(bid + "," + c_type);

		$('#loader_'+bid).show();
		$('#prodblock_'+bid).load(
			ajaxUrl,
			{ container_id: bid, page_num: page, c_type: c_type },
	        function() { $('#loader_'+bid).hide(); }
		);
	}
}
//******************************************************************************************************************************
function scrollProdThumbPage(ajaxUrl, bid, dir, max){
	
	if (!pthumbs[bid]){
		pthumbs[bid] = 1;
	}
	
	if (dir == 1){
		if (pthumbs[bid] < max){
			pthumbs[bid]++;
		}else{
			pthumbs[bid] = 1;
		}
	}else{
		if (pthumbs[bid] > 1){
			pthumbs[bid]--;
		}else{
			pthumbs[bid] = max;
		}
	}
	
	
	$('#loader_'+bid).show();
	$('#prodblock_'+bid).load(
		ajaxUrl,
		{ container_id: bid, page_num: pthumbs[bid] },
        function() { $('#loader_'+bid).hide(); }
	);
	
}
//******************************************************************************************************************************
function setProdResultPage(ajaxUrl, page){
	
	showSearchLoader();
			
	var elm = document.getElementById('pager_' + page);
	var src = elm.src;
	var tmp = src.split("/");
	
	var path = src.substring(0, src.length - tmp[tmp.length-1].length);
	var tmp2 = tmp[tmp.length-1].split(".");
	var imgname = tmp2[0].substr(0, tmp2[0].length-1);
	var ext = tmp2[1];
	var state = tmp2[0].substr(tmp2[0].length-1, 1);
	
		
	if (state == '0'){
	
	
		var obj = document.getElementById('pagination');
	
		var o = obj.getElementsByTagName('img');
		for ( var i = 0; i < o.length; i++){
			if (o[i].className == 'pager_spot'){
				o[i].src = path + imgname + '0.' + ext;
			
			}
		}
	
		elm.src = path + imgname + '1.' + ext;
	
		$('#loader').show();
		$('#search_results').load(
			ajaxUrl,
			{ page_num: page },
	        function() { $('#loader').hide(); }
		);
	}
}
//******************************************************************************************************************************

function setSearchPage(page){
	
	document.getElementById('search_page').value = page;
	searchForm.submit();
}
//******************************************************************************************************************************
function showSearchLoader(){
	
	var loader = document.getElementById('loader');
	var img_loader = document.getElementById('img_loader');
	var searchTab = document.getElementById('search');
	
	
	loader.style.width = searchTab.offsetWidth + 'px';
	loader.style.height = searchTab.offsetHeight + 'px';
	
	img_loader.style.top = ((searchTab.offsetHeight/2) -50)+ 'px';
	
	$('#loader').show();
	
}
//******************************************************************************************************************************

function flipProduct(){
	
	$('.quickflip-wrapper').quickFlipper();
		
}
//******************************************************************************************************************************
function switchSale(elm, sid){
	
	
	var src = elm.src;
	var tmp = src.split("/");
	
	
	
	var path = src.substring(0, src.length - tmp[tmp.length-1].length);
	var tmp2 = tmp[tmp.length-1].split(".");
	var imgname = tmp2[0].substr(0, tmp2[0].length-1);
	var ext = tmp2[1];
	var state = tmp2[0].substr(tmp2[0].length-1, 1);
	
	if (state == '0'){
		elm.src = path + imgname + '1.' + ext;
		document.getElementById('saleDetail_'+sid).style.display = "block";
	}else{
		elm.src = path + imgname + '0.' + ext;
		document.getElementById('saleDetail_'+sid).style.display = "none";
	}
	
	
}
//******************************************************************************************************************************
function sendfriend(ajaxUrl){
	
	var your_email = document.getElementById('myproductsendfriend_your_email').value;
	var your_firstname = document.getElementById('myproductsendfriend_your_firstname').value;
	var friend_email = document.getElementById('myproductsendfriend_friend_email').value;
	var friend_firstname = document.getElementById('myproductsendfriend_friend_firstname').value;
	var message = document.getElementById('myproductsendfriend_message').value;
	var pid = document.getElementById('myproductsendfriend_pid').value;
	var product_url = document.getElementById('myproductsendfriend_product_url').value;
	
			
	$('#sendToFriend').load(
		ajaxUrl,
		{ your_email: your_email, your_firstname: your_firstname, friend_email: friend_email, friend_firstname: friend_firstname, message:message , pid: pid, product_url: product_url }
	);
	
	//sendfriend_form.submit();
}
//******************************************************************************************************************************
function prodremind(ajaxUrl){
	
	var email = document.getElementById('myproductreminder_email').value;
	var firstname = document.getElementById('myproductreminder_firstname').value;
	var pid = document.getElementById('myproductreminder_pid').value;
	
	
	
				
	$('#prodReminder').load(
		ajaxUrl,
		{ firstname: firstname, email: email, pid: pid }
	);
	
	//sendfriend_form.submit();
}
//******************************************************************************************************************************
function validateBasketAddresses(addressOk, curl){
	
	var elm = document.getElementById('cgv');
	
	ok = 1;
	
	if (addressOk == 0){
		ok = 0;
		$.nyroModalManual({
			url: '#checkAddressesMod',
			minHeight:0
		});
	}
	
	if (elm.checked == false){
		ok = 0;
		$.nyroModalManual({
			url: '#checkCGVmod',
			minHeight:0
		});
	}
	
	if (ok){
		goToLink(curl);
	}
	
}
//******************************************************************************************************************************
function validateBasketIndex(qtty, down, curl){
	
		
	if (qtty < 1){
		$.nyroModalManual({
			url: '#basketEmptyMod',
			minHeight:0
		});
	}else if (down == 1){
		$.nyroModalManual({
			url: '#basketHasDownloadMod',
			minHeight:0
		});
	}else{
		goToLink(curl);
	}
	
	
}
//******************************************************************************************************************************
var hasClick_validatePaymentMethod = false;
function validatePaymentMethod(curl){
	
	var ok = false;
	var elm = document.getElementById('paymentmethods');
	var val = elm.pm;
	
	if (val.checked == true){
		ok = true;
	}else{
		for (i=0; i<val.length; i++){
			if (val[i].checked == true)
				ok = true;
		}
	}
		
	if (ok == false){
		$.nyroModalManual({
			url: '#checkChoosePaymentmod',
			minHeight:0
		});
	}else{
		if (hasClick_validatePaymentMethod == false){
			hasClick_validatePaymentMethod = true;
			elm.submit();
		}
	}
	
	
}
//******************************************************************************************************************************
function prodReminderModal(){
	$.nyroModalManual({
		url: '#prodReminderMod'
	});
}
//******************************************************************************************************************************
function openSaleDetails(token){
	$.nyroModalManual({
		url: '#sd_'+token
	});
}
//******************************************************************************************************************************
function createAccountMod(){
	$.nyroModalManual({
		url: '#accountCreateMod'
	});
}
//******************************************************************************************************************************



