var activePris = 0;
var activeKampanjPris = 0;
var valAlternativSelects;	//byggs i visa_produkt_content.asp
var kombinationer;	//byggs i visa_produkt_content.asp
var lagerGrans = 0;
var reallager = 0;
var ejrabatt = 0;

$(document).ready(function()
{
	bytbild(document.visaProdSettings.bild.value, document.visaProdSettings.storbild.value);
	
	 $("a.fancyBoxLink").fancybox({
		'centerOnScroll':false
		}); 
		
	$("a.ytlink").fancybox({
		'type':'iframe',
		'titleShow':false,
		'width':786,
		'height':587});
	
	reallager = parseInt($("#reallager").val());
	ejrabatt = parseInt($("#ejrabatt").val());
		
	try
	{
		lagerGrans=parseInt(document.visaProdSettings.lagergrans.value);
		updateValSum();
	}
	catch(err){}
});


function bytbild(x,storBild)
{
	if (x == "blank.gif")
		return;

	document.getElementById("currentBild").style.backgroundImage="url('/images/"+x+"')";
	document.getElementById("klickbarBildLank").href = "/images/"+storBild;
	try
	{
		Lightbox.updateImageList();
	}
	catch(err){}
}

function Recensera() {
	document.getElementById('rdiv').style.display='block';
	document.recensionsform.txt.focus();
}

function plussa(i)
{
	if (document.getElementById("plus"+i).style.visibility=="hidden")
		document.getElementById("plus"+i).style.visibility="visible";
	else
		document.getElementById("plus"+i).style.visibility="hidden";
}

function getValValue(nr)
{
	var result = 0;
	try
	{
		var d = document.getElementById("val"+nr);
		var id = d.options[d.selectedIndex].value;
		result = parseInt(document.getElementById("valalternativ"+id).value);
	}
	catch(err)
	{
	}
	return result;
}

function finnsAntaletILager(doAlert)
{
	
	var afshop = parseInt(document.getElementById("afshop").value);
	
	if (afshop == 1)
		return true;
	
	if (document.addToBasketForm.antal.value=='' || document.addToBasketForm.antal.value=='0')
		document.addToBasketForm.antal.value='1';		
		
	var onskatAntal = parseInt(document.addToBasketForm.antal.value);
	
	var iFound = getKombinationIndex();
	
	if (kombinationer[iFound].lagertyp == 1 || kombinationer[iFound].lagret >= onskatAntal)
		return true;
	else
	{
		if (doAlert)
			alert(getPhrase("js_outofstock",''+kombinationer[iFound].lagret));
	
		return false;	
	}
}

function checkVisaProdSubmit()
{
	
	
	
	if (finnsAntaletILager(true))
		return true;
	else
		return false;
}


function updateDelaUppSumma(x)
{
	var XMLHttpRequestObject=false;
	if(window.XMLHttpRequest)
	{
		  XMLHttpRequestObject=new XMLHttpRequest();
	}
	else if(window.ActiveXObject)
	{
		  //Internet Explorer
		  XMLHttpRequestObject=new ActiveXObject("Msxml2.XMLHTTP");
	}
	else
	{
		  alert("Your Browser is not compatible");
	}
	
	var XMLHttpRequestObject = false;
	if (window.XMLHttpRequest)
	{
		XMLHttpRequestObject = new XMLHttpRequest();
	}
	else if (window.ActiveXObject)
	{
		XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
	}
	if(XMLHttpRequestObject)
	{
		XMLHttpRequestObject.open("POST","ajax_visaprod_delaupp.asp?summa=" + x, true);

		XMLHttpRequestObject.onreadystatechange = function()
		{
			if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200)
			{
				try
				{
					document.getElementById("delauppruta").innerHTML = XMLHttpRequestObject.responseText;
				}
				catch(err){}
			}
		}
		XMLHttpRequestObject.send('');
	}
}

function getKombinationIndex()
{
	var iFound;
	if (parseInt(document.addToBasketForm.hasValalternativ.value)==1)
	{
		// Kolla vilka valalternativ som är valda.
		var valdaAlternativ = new Array();
		for (i = 0; i < valAlternativSelects.length; i++)
		{
			var objSelect = document.getElementById(valAlternativSelects[i]);
			valdaAlternativ[i] = parseInt(objSelect.options[objSelect.selectedIndex].value);
		}
		
		valdaAlternativ.sort();
		
		// Kolla vilken kombination som stämmer överens med det.
		// De två arrayerna är sorterade så samma alternativ bör
		// dyka upp i samma ordning med rätt kombination.
		
		iFound = -1;
		var hittade = false;
		for (i = 0; i < kombinationer.length; i++)
		{
			hittade = true;
			for (j = 0; j < valdaAlternativ.length; j++)
			{
				if (kombinationer[i].alternativ[j] != valdaAlternativ[j])
				{
					hittade = false;
					break;
				}
			}
			if (hittade)
			{
				iFound = i;
				break;
			}
		}
		
		document.addToBasketForm.valdKombination.value=kombinationer[iFound].dbid;
	}
	else
	{
		//Inga valalternativ, men alla produkter har en "kombination".
		iFound = 0;
	}
	return iFound;
}

function updateValSum()
{
	var afshop = parseInt(document.getElementById("afshop").value);
	var moms = parseInt(document.getElementById("moms").value);
	
	var iFound = getKombinationIndex();
	
	activePris = kombinationer[iFound].pris;
	activeAFPris = kombinationer[iFound].afpris;
	activeKampanjPris = kombinationer[iFound].kampanjpris;
		
	var reservlager = kombinationer[iFound].reservlager;
	
	document.getElementById("articleno").innerHTML = kombinationer[iFound].artno;
	
	
	var ean = kombinationer[iFound].ean;
	if (ean.length > 1)
	{
		$("#eanruta").show().html("<b>EAN: </b><br>" + ean);
	}
	else
	{
		$("#eanruta").hide();
	}
	
	/*try
	{
		$('.stafflandetabell').css('display','none');
		document.getElementById("stafflande"+kombinationer[iFound].dbid).style.display='block';
	} catch(err) {}*/
	
	try
	{
		if (afshop == 0)
		{	
			document.getElementById("prisruta").innerHTML = myFormatCurrency(activePris);
			document.getElementById("prisstrike").innerHTML = "";
			document.getElementById("dusparar").innerHTML = "";
			document.getElementById("duspararDiv").style.display='none';
		
			if (document.addToBasketForm.inKampanj.value == "1" && activeKampanjPris != activePris)
			{
				document.getElementById("prisruta").innerHTML = '&nbsp;' + myFormatCurrency(activeKampanjPris);
				document.getElementById("prisstrike").innerHTML = myFormatCurrency(activePris);
					
				document.getElementById("dusparar").innerHTML = getPhrase("visaprod_dusparar","") + " " + myFormatCurrency(activePris - activeKampanjPris) + " (" + Math.round(100 * (activePris - activeKampanjPris) / activePris) + "%)";
				document.getElementById("duspararDiv").style.display='block';
				
				updateDelaUppSumma(activeKampanjPris);
			}
			else
				updateDelaUppSumma(activePris);
		}
		else
		{
			document.getElementById("prisrutarek").innerHTML = '&nbsp;' + myFormatCurrency(activePris);
			document.getElementById("prisrutaaf").innerHTML = '&nbsp;' + myFormatCurrency(activeAFPris);
			
			
			
			try
			{
				if (ejrabatt == 0)
					document.getElementById("prisrutaertpris").innerHTML = '&nbsp;' + myFormatCurrency(myRound(activePris / parseFloat(document.addToBasketForm.afprocent.value), 0));
				else
					document.getElementById("prisrutaertpris").innerHTML = '&nbsp;' + myFormatCurrency(activeAFPris);
					
			} catch(err){}
			
			
		}
		
	} catch(err) {}
		
	try
	{
		document.getElementById("lagerstatusFinns").style.display='none';
		document.getElementById("lagerstatusFinnsExakt").style.display='none';
		document.getElementById("lagerstatusFinnsEj").style.display='none';
		document.getElementById("lagerstatusFinnsNagra").style.display='none';
	}
	catch(err){}
	
	
	if (afshop == 1)
	{
		if (kombinationer[iFound].lagertyp == 1 || kombinationer[iFound].lagret > reservlager)
		{
			if (reallager == 0)
				document.getElementById("lagerstatusFinns").style.display='block';
			else
				$("#lagerstatusFinnsExakt").show().html(getPhrase("js_exaktlager", "" + (kombinationer[iFound].lagret - reservlager)));
			
		}
		else
		{
			document.getElementById("lagerstatusFinnsEj").style.display='block';
			
		}
		
	}
	else
	{	
		if (kombinationer[iFound].lagertyp == 1 || kombinationer[iFound].lagret > lagerGrans)
		{
			if (reallager == 0)
				document.getElementById("lagerstatusFinns").style.display='block';
			else
				$("#lagerstatusFinnsExakt").show().html('<img src="/design/ilager.gif" align="absmiddle">' + getPhrase("js_exaktlager", "" +kombinationer[iFound].lagret));
			
			
			try
			{
				document.getElementById("divkopknapp").style.display='block';
				document.getElementById("divantalruta").style.display='block';
			} catch(err) {}
		}
		else if (kombinationer[iFound].lagret <= 0)
		{
			document.getElementById("lagerstatusFinnsEj").style.display='block';
			try
			{
				document.getElementById("divkopknapp").style.display='none';
				document.getElementById("divantalruta").style.display='none';
			} catch(err) {}
		}
		else
		{	
			try
			{
				document.getElementById("divkopknapp").style.display='block';
				document.getElementById("divantalruta").style.display='block';
			} catch(err) {}
			document.getElementById("lagerstatusFinnsNagra").getElementsByTagName('span')[0].innerHTML = getPhrase("visaprod_lager_finns_få",""+kombinationer[iFound].lagret);
			document.getElementById("lagerstatusFinnsNagra").style.display='block';
		}
	}
}
function meddelaKomb(kid)
{
	$('#kombslutform'+kid).css('display','block');
}

function kombSlutSubmit(objForm, kid)
{
	$.ajax(
	{
		url: 'slutkomb.asp',
		type: 'POST',
		data: 'epost='+objForm.epost.value + '&kid=' + kid,
		success: function()
		{
			$('#kombslutform'+kid).html('<span style="color:#00cc00;font-weight:bold;font-size:14px;">OK!</span>').hide(1000);
		}
	});	
	return false;
}

function doljBetalInfo()
{
	$('#betalningsinfo').css('display','none');
}
function visaBetalInfo()
{
	$('#betalningsinfo').css('display','block');
}

function myRound(x,y)	//rundar x till y decimaler. Vid 0.5, runda alltid uppåt.
{
	var tmp = x * Math.pow(10,y);	
	if (Math.floor(tmp) == tmp)
		return tmp / Math.pow(10,y);
	else if (Math.floor(tmp * 2) == tmp * 2)
		return (tmp + 0.5) / Math.pow(10,y);
	else
		return Math.round(tmp) / Math.pow(10,y);
}
