function opdaterForm(v, z)
{
//	alert('v:' + v + ', z:' +z);
	void(d=document);
	//z--;
	t = "artikel" + z;
	//alert(v + " fyldes i plads " + z);	
	//alert(d.getElementById(t).value);
	if (d.getElementById(t).value == "")
		d.getElementById(t).value=v;
	else
		d.getElementById(t).value="";
	delete d, t, v, z;
}
function selectAll()
{
	void(d=document);
	void(eArr=d.getElementsByTagName('INPUT'));
	for(i=0;i<eArr.length;i++)
		void(eArr[i].checked=1);	
	opdaterFormAlle();
}
function opdaterFormAlle()
{
	// her skal alle form elementerne opdateres ligesom i opdaterForm()
	void(d=document);
	antal = d.getElementById("antalFakturaer").value;
	//alert(antal);
	
	for (i=0; i < antal; i++)
	{
		t = "faktura" + i;
		u = "check" + (i+1);
		d.getElementById(t).value=d.getElementById(u).value;
	}
	delete d;
}
function bookmark()
{
	
	if (navigator.appName == 'Microsoft Internet Explorer' && parseInt(navigator.appVersion) >= 4) 
	{ 
		document.write('<a href=\"javascript:window.external.AddFavorite(\'http://www.puslekassen.dk\',document.title)\">'); 
		document.write('<U>Gem Puslekassen i foretrukne...</U></a>'); 
	}
	else 
	{
		var msg = "Gem Puslekassen i foretrukne..."; 
		if(navigator.appName == "Netscape") msg += " (CTRL-D)"; 
		document.write(msg); 
	}
}

function showHideChkBox(theTable)
{
	if (document.getElementById(theTable).style.display == 'block')
		document.getElementById(theTable).style.display = 'none';
	else
		document.getElementById(theTable).style.display = 'block';
	/*if (chkBox.checked)
	{ 
		document.getElementById(theTable).style.display = 'block';
	}
	else
	{
		document.getElementById(theTable).style.display = 'none';
		document.getElementById("chkBoxAll").checked = false;
	}*/
}

function showHideAll(chkBox,idpart)
{
	var display;
	if(chkBox.checked) 
	{ 
		display = "block";
	}
	else
	{
		display = "none";
	}

    	var tables = document.getElementsByTagName("TABLE");
    	var checkb = document.getElementsByTagName("INPUT");

    	var i;
	for(i = 0; i < tables.length; i++)
	{
		if(tables[i].id.indexOf(idpart) == 0) 
			tables[i].style.display = display;
	}
	for(i = 0; i < checkb.length; i++)
	{
		if(checkb[i].name == "chkBox")
			checkb[i].checked = chkBox.checked;
	}

}

function fangReturn()
{
	if (confirm("skal din ordre sendes ?"))
	{
		document.levering.action = "testBestilling.asp";
		//document.levering.onsubmit=true;
		document.levering.submit();
	}
		
	else
	{
		document.levering.action="";
		//document.levering.onsubmit=false;
		document.levering.afsted.focus();
		return false;
	}
}	

function komma(tal)
{
	if (tal.indexOf(".") != -1)
	{
		var tmpStr = new String();
		start = tal.substring(0, tal.indexOf("."))
		slut = tal.substring(tal.indexOf(".")+1, tal.length)
		tmpStr = start + "," + slut;
	}
	
	return tmpStr;
}
function udregnSubtotal(a, b, c)
{
	if (!a || !b)
		eval("document.levering.pris" + c + ".value = visSomValuta(0)");
	else
		eval("document.levering.pris" + c + ".value = visSomValuta(a*b)");
}
function visSomTal(tal)
{
	var tmpStr = new String(tal);

	// hvis intet punktum, dvs helt tal
	if (tmpStr.indexOf(",") > -1)
	{
		start = tmpStr.substring(0, tmpStr.indexOf(","));
		slut = tmpStr.substring(tmpStr.indexOf(",") + 1, tmpStr.length)
		tmpStr = start + "." + slut;
	}
	return parseFloat(tmpStr);
}
	
function visSomValuta(tal)
{
	var tmpStr = new String(tal);
	var nummer = new String(tal);		
	
	
	// hvis intet punktum, dvs helt tal
	if (nummer.indexOf(".") == -1)
		tmpStr += ",00";
	
	// hvis kun een decimal
	else if (nummer.indexOf(".") == (nummer.length - 2))
	{
		tmpStr = tal + "0";
		
		start = tmpStr.substring(0, tmpStr.indexOf("."));
		slut = tmpStr.substring(tmpStr.indexOf(".")+1, tmpStr.length);
		tmpStr = start + "," + slut;
	}
	
	// hvis der er 2 decimaler	
	else if (nummer.indexOf(".") == (nummer.length - 3))
	{
		start = tmpStr.substring(0, tmpStr.indexOf("."));
		slut = tmpStr.substring(tmpStr.indexOf(".")+1, tmpStr.length);
		tmpStr = start + "," + slut;
	}
	
	// der er 3 eller flere decimaler
	else if (nummer.indexOf(".") < (nummer.length - 3))
	{
		start = tmpStr.substring(0, tmpStr.indexOf("."));
		start += ",";
		slut = tmpStr.substring((tmpStr.indexOf(".") +1), (tmpStr.indexOf(".") +3));
		start += slut;
		
		/*temp = new String(tmpStr.substring(0, tmpStr.length -1));
		Response.Write("her er temp: " + temp)
		start = temp.substring(0, temp.indexOf("."));
		slut = temp.substring(temp.indexOf(".")+1, temp.length);
		tmpStr = start + "," + slut;
		*/
		
		tmpStr = start;
	}
	return tmpStr;
}

function SCRopdaterFelt(nr, tekst, id)
{
	if(nr > 0)
	{
		pris = tekst.substring(tekst.indexOf(":") + 1, tekst.length);
		eval("document.levering.pris" + id + ".value = pris");
		//document.prisArr[id] = pris;
	}
	else
	{
		eval("document.levering.pris" + id + ".value = visSomValuta(0)");
		//document.prisArr[id] = 0;
	}
	udregn();
	
}
function SCRopdaterKassePris(nr, tekst, id)
{
	feltPris = (eval("document.levering.indexPris" + id + ".value"));
	//alert(feltPris);
	if(nr > 0)
	{
		if (!(tekst.indexOf("+") == -1))
		{
			pris = tekst.substring(tekst.indexOf("+") + 1, tekst.length - 1);
			
			//if (document.levering.visPriser.value == "ja")
				(eval("document.levering.pris" + id + ".value = visSomValuta(visSomTal(feltPris)+visSomTal(pris))"));
			// WAS: nyTotal = ((visSomTal(document.levering.pakkeTotalRefPris.value) - visSomTal(pris)));
			//nyTotal = ((visSomTal(document.levering.pakkeTotalPris.value) - visSomTal(pris)));
			if (document.levering.rabatsats.value > 0)
			{
				document.levering.rabat.value = visSomValuta(nyTotal/document.levering.rabatsats.value);
				nyTotal -= visSomTal(document.levering.rabat.value);
			}
			
			//document.levering.pakkeTotalPris.value = visSomValuta(nyTotal);	
		}
		else
		{
			//if (document.levering.visPriser.value == "ja")
				(eval("document.levering.pris" + id + ".value = visSomValuta(visSomTal(feltPris))"));
			//	alert(feltPris);
			//document.levering.pakkeTotalPris.value = visSomValuta(visSomTal(document.levering.pakkeTotalPris.value) + visSomTal(feltPris));
			if (document.levering.rabatsats.value > 0)
			{
				document.levering.rabat.value = visSomValuta(visSomTal(document.levering.pakkeTotalRefPris.value) / document.levering.rabatsats.value);
				document.levering.pakkeTotalPris.value = visSomValuta(visSomTal(document.levering.pakkeTotalPris.value) - visSomTal(document.levering.rabat.value));
			}
		}
	}
	udregnKasse();
}
		

function opdaterFelt(pris, styk, id)
{
	
	if (valider(styk))
	{
		// opdaterer textfeltet
		(eval("document.levering.pris" + id + ".value = visSomValuta(pris*styk)"));
		udregn();
	}
	else
	{
		(eval("document.levering.antal" + id + ".value = 0"));
		(eval("document.levering.antal" + id + ".focus()"));
		alert("du har ikke indtastet korrekt antal, brug kun tal !");
		
	}
}

function valider(tal)
{
	ok = true;
	
	
	for (i = 0; i < tal.length; i ++)
	{
		if (!(tal.charAt(i) >= 0 && tal.charAt(i) <= 9))
		{
			ok = false;
			break;
		}
	}
	return ok;
}
	
function udregnFragt(beloeb, postnr)
{
	//alert("modtagne argumenter: " + postnr + ", " + beloeb);
	
	// hvis der skal fragt på
	if (!aktivArr[postnr])
	{
		// sætter en værdi som lagres i databasen for senere 
		// korrekt visning af fakturaudskrifter.
		document.levering.skalFragtes.value="ja";

		// hvis det er en kombikasse/hygiejnekasse
		// fragt på kombi OG hygiejne:
		if (document.levering.kasse.value == "kombi" || document.levering.kasse.value == "hygiejne")
		{
			// hvis der er købt ind for over 300,-
			if (visSomTal(document.levering.subtotal.value) > 300)
			{
				//alert("over 300,-");
				document.levering.fragt.value = visSomValuta(beloeb);
			}
			else
				document.levering.fragt.value = visSomValuta(2*beloeb);
		}
		else
			document.levering.fragt.value = visSomValuta(beloeb);
	}
	
	// hvis der IKKE skal fragt på
	if (aktivArr[postnr] || !postnr)
	{
		document.levering.skalFragtes.value="nej";
		
		// hvis det er en kombikasse/hygiejnekasse
		// if (document.levering.kasse.value == "kombi" || document.levering.kasse.value == "hygiejne")
		if (document.levering.kasse.value == "hygiejne")
		{
			// hvis der er købt ind for over 300,-
			if (visSomTal(document.levering.subtotal.value) > 300)
			{
				//alert("over 300,-");
				document.levering.fragt.value = visSomValuta(0);
			}
			else
				document.levering.fragt.value = visSomValuta(beloeb);
		}
		else
			document.levering.fragt.value = visSomValuta(0);
	}
	
	return;
}
				
			
	

function udregn()
{
	
	// udregner totalpris for alle varer...
	pris = visSomTal(document.levering.pakkeTotalPris.value);
	// udregner evt. rabat
	
	
	// viser totalprisen
	for(i = document.levering.udregnStart.value; i <= document.levering.antalfelter.value-1; i++)
	{
		id = i;
		pris += visSomTal(eval("document.levering.pris" + id + ".value"));
		// her kan man følge med i udregningerne:
	}

	document.levering.subtotal.value = visSomValuta(pris);
	document.levering.moms.value = visSomValuta(pris*0.2);
	udregnFragt(document.levering.kasseFragtPris.value, document.levering.postnr.value);
	document.levering.ialt.value = visSomValuta((visSomTal(document.levering.subtotal.value)) + (visSomTal(document.levering.fragt.value)));
	document.levering.ialt2.value = visSomValuta((visSomTal(document.levering.subtotal.value)) + (visSomTal(document.levering.fragt.value)));
	
	// her fratrækkes 40 kr fra fragten og total hvis kombikassen/hygiejnekassen koster > 300
	// eller lægges til hvis den koster < 300
	
	return;
}
		
function udregnKasse()
{
	pakkepris=0;
	// udregner totalpris for alle kassevarer...
	//pris = visSomTal(document.levering.pakkeTotalPris.value);
	// udregner evt. rabat
	
	
	// viser totalprisen
	for(i = 1; i < document.levering.udregnStart.value; i++)
	{
		id = i;
		pakkepris += visSomTal(eval("document.levering.pris" + id + ".value"));
		// her kan man følge med i udregningerne:
	}

	document.levering.pakkeTotalPris.value = visSomValuta(pakkepris);
	/*document.levering.moms.value = visSomValuta(pris*0.2);
	udregnFragt(document.levering.kasseFragtPris.value, document.levering.postnr.value);
	document.levering.ialt.value = visSomValuta((visSomTal(document.levering.subtotal.value)) + (visSomTal(document.levering.fragt.value)));
	
	// her fratrækkes 40 kr fra fragten og total hvis kombikassen/hygiejnekassen koster > 300
	// eller lægges til hvis den koster < 300
	
	if (document.levering.kasse.value == "kombi")
	{
		if (visSomTal(document.levering.ialt.value) - visSomTal(document.levering.fragt.value) > 300 && visSomTal(document.levering.fragt.value) > 40)
		{
			document.levering.fragt.value = visSomValuta(visSomTal(document.levering.fragt.value) - 40);
			document.levering.ialt.value = visSomValuta(visSomTal(document.levering.ialt.value) - 40);
		}
		else if (visSomTal(document.levering.ialt.value) - visSomTal(document.levering.fragt.value) < 300 && visSomTal(document.levering.fragt.value) < 40)
		{
			document.levering.fragt.value = visSomValuta(visSomTal(document.levering.fragt.value) + 40);
			document.levering.ialt.value = visSomValuta(visSomTal(document.levering.ialt.value) + 40);
		}
	}*/
	udregn();
}


function tilfoej(type, ja, kr)
{
	if (type == 1)
		if (ja)
		{
			//pris=substring(document.levering.pris2.value, 2, 2);
			document.levering.totalPris.value= (parseInt(document.levering.totalPris.value) + parseInt(kr));
			//document.levering.pris2.value = "  " + parseInt(document.levering.pris2.value*2);
			document.levering.antal2.value = parseInt(document.levering.antal2.value*2);
			
		}
		else
		{
			//document.levering.pris2.value = "  " + parseInt(document.levering.pris2.value/2);
			document.levering.antal2.value = parseInt(document.levering.antal2.value/2);
			document.levering.totalPris.value= (parseInt(document.levering.totalPris.value) - parseInt(kr));
		}
	else
		if (ja)
		{
			document.levering.totalPris.value= (parseInt(document.levering.totalPris.value) + parseInt(kr));
			//document.levering.pris3.value = "  " + parseInt(document.levering.pris3.value*2);
			document.levering.antal3.value = parseInt(document.levering.antal3.value*2);
		}
		else	
		{
			//document.levering.pris3.value = "  " + parseInt(document.levering.pris3.value/2);
			document.levering.antal3.value = parseInt(document.levering.antal3.value/2);
			document.levering.totalPris.value= (parseInt(document.levering.totalPris.value) - parseInt(kr));
		}

	return;
}

function tjekPostNr(nr)
{
	
	if (nr.length != 4)
		alert("Du har ikke indtastet korrekt postnr !");
	else
	{
		i = 0;
		while(i < 4)
		{
			if(nr.charAt(i) >=0 && nr.charAt(i) <= 9)
				korrekt=true;
			else
			{
				korrekt=false;
				break;
			}
			i++;
		}
		
		if (korrekt)
		{
			nytVindue("testPostnr.asp?postnr=" + nr);
		}
			
		else
			alert("Du har ikke indtastet korrekt postnr !");
	}
return;
}
function tjekTlf(nr)
{
	
	if (nr.length != 8)
	{
		alert("Du har ikke indtastet korrekt telefonnr.\nDit telefonnr skal have 8 cifre - uden mellemrum !");
		document.levering.telefon.focus();
	}
	else
	{
		i = 0;
		while(i < 8)
		{
			if(nr.charAt(i) >=0 && nr.charAt(i) <= 9)
				korrekt=true;
			else
			{
				korrekt=false;
				break;
			}
			i++;
		}
		
		if (korrekt)
		{
			return;
		}
			
		else
		{
			alert("Du har ikke indtastet korrekt telefonnr.\nDit telefonnr skal have 8 cifre - uden mellemrum !");
			document.levering.telefon.focus();
		}
	}
return;
}

function nytVindue(adresse, navn, x, y)
{
	// funktionen laver et nyt popup vindue med height = x og width = y.
	// vinduet centreres på skærmen. Ingen scrollbars og ingen toolbar, ikke resizable.
	var iMyWidth;
	var iMyHeight;
	//half the screen width minus half the new window width (plus 5 pixel borders).
	iMyWidth = (window.screen.width/2) - ((y/2) + 10);
	//half the screen height minus half the new window height (plus title and status bars).
	iMyHeight = (window.screen.height/2) - ((x/2) + 50);
	//Open the window.
	var win2 = window.open(adresse,navn,'status=no,height=' + x + ',width=' + y + ',resizable=yes,left=' + iMyWidth + ',top=' + iMyHeight + ',screenX=' + iMyWidth + ',screenY=' + iMyHeight + ',toolbar=no,menubar=no,scrollbars=no,location=no,directories=no');
//	newWindow=window.open(adresse, navn, 'height=' + x + ', width=' + y + ', toolbar=no, scrollbars=no');

	win2.focus();
}	
