﻿//Image preloader
imageSource = new Array (
	"images/bg_nav.gif",
	"images/bg_valjjulkort.gif"
)

imageList = new Array ();

for (counter in imageSource) {
    imageList[counter] = new Image();
    imageList[counter].src = imageSource[counter];
}

//show layer
function showLayer(object) {
	if (document.all) {
		document.all[object].style.visibility = 'visible';
		document.all[object].style.position = 'absolute';
  	}
  	else if (document.getElementById) {
		document.getElementById(object).style.visibility = 'visible';
		document.getElementById(object).style.position = 'absolute';
	}
  	else if (document.layers && document.layers[object]) {
		document.layers[object].visibility = 'visible';
		document.layers[object].position = 'absolute';
  	}
}

//hide layer
function hideLayer(object) {
	showLayer('submit1a');
	showLayer('submit2a');
	showLayer('submit3a');
	if (document.all) {
    	document.all[object].style.visibility = 'hidden';
		document.all[object].style.position = 'absolute';
 	}
  	else if (document.getElementById) {
		document.getElementById(object).style.visibility = 'hidden';
		document.getElementById(object).style.position = 'absolute';
  	}
  	else if (document.layers && document.layers[object]) {
    	document.layers[object].visibility = 'hidden';
		document.layers[object].position = 'absolute';
  	}
}

//Call popup window
function popupWin(url, width, height) {
	leftPos = (screen.width) ? (screen.width-width)/2 : 0;
	topPos = (screen.height) ? (screen.height-height)/2 : 0;
	window.open( url, "", "resizable=0,height="+height+",width="+width+",left="+leftPos+",top="+topPos);
}
//Call popup window
function popupWinScroll(url, width, height) {
	window.open( url, "", "scrollbars=1,resizable=0,height="+height+",width="+width+",left=50,top=50,location=0");
}

//Toogle text color
function toggleTxt(lnk, field) {
	lnk1 = "txt1";
	lnk2 = "txt2";
	lnk3 = "txt3";
	field1 = "amount1";
	field2 = "amount2";
	field3 = "amount3";
	document.getElementById(field1).style.border = "1px solid #909090";
	document.getElementById(field2).style.border = "1px solid #909090";
	document.getElementById(field3).style.border = "1px solid #909090";
	document.getElementById(lnk1).style.color = "#999999";
	document.getElementById(lnk2).style.color = "#999999";
	document.getElementById(lnk3).style.color = "#999999";
	document.getElementById(lnk).style.color = "#000000";
	document.getElementById(field).style.border = "1px solid #FF0000";
}

/*
function showCard(sFilename) {
	document.getElementById('bigcard').src = 'images/' + sFilename;
}
*/
var tmp;
function showCard(sFilename) {
	window.clearInterval(document.timeout);
	var offscreen = document.getElementById('offscreen');
	tmp = new Image();
	tmp.onload = function() {
		var obj = document.getElementById('bigcard');

		window.clearInterval(document.timeout);
		document.ip = 0.0;
		document.srcheight = obj.height;
		document.destheight = tmp.height - obj.height;
		document.timeout = window.setInterval(moveCard, 10);

		obj.src = tmp.src;
		obj.height = document.srcheight;
		obj.width = 284;
		tmp = undefined;
	}
	tmp.src = "images/" + sFilename; 
	document.getElementById('cardnum').value = sFilename;
}
function moveCard() {
	if(document.ip < 100) {
		document.ip+=4;
	} else {
		document.ip = 100;
		window.clearInterval(document.timeout);
		document.timeout = undefined;
	}
	document.getElementById('bigcard').height = easeInOutElastic(document.ip, document.srcheight, document.destheight, 100, 100, 100);
	document.getElementById('bigcard').width = 284;
}
function easeInOutElastic (t, b, c, d, a, p) {
	if (t==0) return b;  if ((t/=d/2)==2) return b+c;  if (!p) p=d*(.3*1.5);
	if (a < Math.abs(c)) { a=c; var s=p/4; }
	else var s = p/(2*Math.PI) * Math.asin (c/a);
	if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
	return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
}

var webGifts = false;
function showWebGifts() {
	webGifts = true;
	for(var i=1;i<=5;i++) {
		obj = document.getElementById("gift" + i);
		(selectData[i-1])?
			suffix = "o":
			suffix = "s";
		if(webGifts && i>2)
			suffix = "s";
		obj.src = "images/1300_bevis" + i + suffix + ".gif";
	}
}
function showAllGifts() {
	webGifts = false;
	for(i=1;i<selectData.length+1;i++) {
		if(selectData[i-1]) {
			document.getElementById("gift" + i).src = "images/1300_bevis" + i + "o.gif";
		} else {
			document.getElementById("gift" + i).src = "images/1300_bevis" + i + "s.gif";
		}
	}
}
function showGift(sObj) {
	sObj.src = sObj.src.substr(0, sObj.src.length-5) + "h.gif";
	document.getElementById('gift').innerHTML = '<span class="red">' + sObj.title + '.</span> ' + sObj.alt;
}
function hideGift(sObj, sNum) {
	(selectData[sNum-1])?
		suffix = "o":
		suffix = "s";
	if(webGifts && sNum>2)
		suffix = "s";
	sObj.src = "images/1300_bevis" + sNum + suffix + ".gif";
	document.getElementById('gift').innerHTML = "";
}

function keyValidate(sObj, sNum) {
	if(sNum != 6) {
		(sObj.value.length >= 2) ?
			document.getElementById('valid' + sNum).src = "images/1300_valid.gif":
			document.getElementById('valid' + sNum).src = "images/1300_invalid.gif";
	} else {
		(isNumeric(sObj.value)) ?
			document.getElementById('valid' + sNum).src = "images/1300_valid.gif":
			document.getElementById('valid' + sNum).src = "images/1300_invalid.gif";
	}

	(allFieldsValid()) ?
		document.getElementById('next').src = "images/btn_fortsatt.gif":
		document.getElementById('next').src = "images/btn_fortsatt_grey.gif";
}

var emailObj;
var emailVar;
var emailNum;
function emailValidate(sObj, sNum) {
	emailObj = sObj;
	emailNum = sNum;
	clearTimeout(emailVar);
	emailVar = setTimeout("timedEmailCheck()", 2000);
}

function timedEmailCheck() {
	sObj = emailObj;
	sNum = emailNum;
	if(isValidEmail(sObj.value)) {
		document.getElementById('valid' + sNum).src = "images/1300_valid.gif";
		(allFieldsValid()) ?
			document.getElementById('next').src = "images/btn_fortsatt.gif":
			document.getElementById('next').src = "images/btn_fortsatt_grey.gif";
	} else {
		document.getElementById('valid' + sNum).src = "images/1300_invalid.gif";
		document.getElementById('next').src = "images/btn_fortsatt_grey.gif";
	}
}

function isValidEmail(sStr) {
	return (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(sStr));
}
function isNumeric(sStr) {
	return (/.[0-9]{3,}/.test(sStr));
}
function validateAllFields() {
	valid = true;
	for(var i=1;i<7;i++) {
		sObj = document.getElementById('form' + i);
		if(sObj.value.length<2) {
			if(i!=2 && i!=4) {
				valid = false;
				document.getElementById('valid' + i).src = "images/1300_invalid.gif";
			}
		} else {if(i!=2 && i!=4) document.getElementById('valid' + i).src = "images/1300_valid.gif";}
	}

	if(!isNumeric(document.getElementById('form6').value)) {
		valid = false;
		document.getElementById('valid6').src = "images/1300_invalid.gif";
	} else {document.getElementById('valid6').src = "images/1300_valid.gif";}
	
	if(!isValidEmail(document.getElementById('form7').value)) {
		valid = false;
		document.getElementById('valid7').src = "images/1300_invalid.gif";
	} else {document.getElementById('valid7').src = "images/1300_valid.gif";}

	(valid) ?
		document.getElementById('next').src = "images/btn_fortsatt.gif":
		document.getElementById('next').src = "images/btn_fortsatt_grey.gif";
}
function allFieldsValid() {
	for(var i=1;i<7;i++) {
		if(i!=2 && i!=4) {
			sObj = document.getElementById('form' + i);
			if(sObj.value.length<2)
				return false;
		}
	}
	if(!isValidEmail(document.getElementById('form7').value))
		return false;

	if(!isNumeric(document.getElementById('form6').value))
		return false;

	return true;
}

//Validate julkortsform
function funcfrmJulkort() {

	document.frmJulkort.txtName.style.border = "1px solid #909090";
	document.frmJulkort.txtFName.style.border = "1px solid #909090";
	document.frmJulkort.txtEmail.style.border = "1px solid #909090";
	document.frmJulkort.txtMessage.style.border = "1px solid #909090";

	if (document.frmJulkort.txtName.value == "") {
		document.frmJulkort.txtName.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Angiv venligst modtagerens navn');
		document.frmJulkort.txtName.focus();
		document.frmJulkort.txtName.select();
		return false;
	}
	else if (document.frmJulkort.txtFName.value == "") {
		send = false;
		document.frmJulkort.txtFName.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Angiv venligst dit  virksomhedsnavn');
		document.frmJulkort.txtFName.focus();
		document.frmJulkort.txtFName.select();
		return false;
	}
	else if (document.frmJulkort.txtEmail.value == "") {
		send = false;
		document.frmJulkort.txtEmail.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Angiv venligst afsenderens<br>e-mail adresse');
		document.frmJulkort.txtEmail.focus();
		document.frmJulkort.txtEmail.select();
		return false;
	}
	
	if (!document.frmJulkort.txtEmail.value.match(/^([\w-_]+\.)*[\w-_]+\@([\w-_]+\.)+[\w-_]+$/)) {
		document.frmJulkort.txtEmail.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Den angivne e-mailadresse er ugyldig');
		document.frmJulkort.txtEmail.focus();
		document.frmJulkort.txtEmail.select();
		return false;
	}
	
	if (document.frmJulkort.txtMessage.value == "") {
		document.frmJulkort.txtMessage.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Skriv venligst en hilsen');
		document.frmJulkort.txtMessage.focus();
		document.frmJulkort.txtMessage.select();
		return false;
	}
		
	if (document.frmJulkort.txtMessage.value.length > 900) {
		document.frmJulkort.txtMessage.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Din hilsen må være op til 900 tegn. Er nu på '+document.frmJulkort.txtMessage.value.length+" tegn");
		document.frmJulkort.txtMessage.focus();
		document.frmJulkort.txtMessage.select();
		return false;

	}
	document.getElementById('showinfo').value="-1";
	return true;
}

function showLayerTimeout(sStr, sError) {
	document.getElementById('errorBox').innerHTML = sError;
}

//Validate login form
function funcfrmLoggain() {

	document.frmLoggain.txtCode.style.border = "1px solid #909090";

	if (document.frmLoggain.txtCode.value == "") {
		document.frmLoggain.txtCode.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Angiv venligst din kode (den står i din bekræftelsesmail)');
		document.frmLoggain.txtCode.focus();
		document.frmLoggain.txtCode.select();
		return false;
	}
	if (document.frmLoggain.txtCode.value.length != 36) {
		document.frmLoggain.txtCode.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Koden består af 36 tegn');
		document.frmLoggain.txtCode.focus();
		document.frmLoggain.txtCode.select();
		return false;
	}
	if (!document.frmLoggain.txtCode.value.match(/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}/)) {
		document.frmLoggain.txtCode.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Forkert kode, prøv igen');
		document.frmLoggain.txtCode.focus();
		document.frmLoggain.txtCode.select();
		return false;
	}
	return true;
}

//Validate kulkortsform 2nd stage
function funcfrmJulkort2() {
	document.frmJulkort2.txtRecipients.style.border = "1px solid #909090";
	if (document.frmJulkort2.txtRecipients.value == "") {
		document.frmJulkort2.txtRecipients.style.border = "1px solid #FF0000";
		showLayerTimeout('error','Angiv venligst en eller flere modtagere');
		document.frmJulkort2.txtRecipients.focus();
		document.frmJulkort2.txtRecipients.select();
		return false;
	}

	var txtRecipients;
	var arrRecipients;

	txtRecipients = document.frmJulkort2.txtRecipients.value;
	

	arrRecipients = txtRecipients.split(" ");
	txtRecipients = arrRecipients.join("");

	arrRecipients = txtRecipients.split("\n");
	txtRecipients = arrRecipients.join(";");

	arrRecipients = txtRecipients.split(",");
	txtRecipients = arrRecipients.join(";");

	arrRecipients = txtRecipients.split(";");

	var arrResult = [];
	var arrRemoved = [];
	
	
	
	for (var i=0; i<arrRecipients.length; i++) {
		var recipient = arrRecipients[i].trim();
		if (recipient!="") {
			if (recipient.match(/^([\w-_]+\.)*[\w-_]+\@([\w-_]+\.)+[\w-_]+$/)) {
				arrResult.push(recipient);
			} else {
				arrRemoved.push(recipient);
			}
		}
	}
	
	
	var txtResult = arrResult.join(";");
	var txtRemoved = arrRemoved.join("\n");

	if (!arrResult.length) {
		document.frmJulkort2.txtRecipients.style.border = "1px solid #FF0000";
		showLayerTimeout('error','En eller flere af e-mailadresserne er ugyldige. Tjek venligst.');

		document.frmJulkort2.txtRecipients.focus();
		document.frmJulkort2.txtRecipients.select();
		return false;
	}

	if (arrRemoved.length) {
		var errMessage = (arrRemoved.length>1)? "Følgende "+arrRemoved.length+" adresser var ugyldige og vil ikke modtage din julehilsen:\n\n"+txtRemoved : "Følgende adresser var ugyldige og kommer ikke til at modtage din julehilsen:\n\n"+txtRemoved;
		alert(errMessage);
	}

	document.frmJulkort2.txtRecipients.value = txtResult;
	
	document.getElementById('showinfo').value="-1";
	return true;
}

String.prototype.trim = function() {
  var x = this;
  x = x.replace(/^\s*(.*)/, "$1");
  x = x.replace(/(.*?)\s*$/, "$1");
  return x;
}

function validateSum() {
	for(var i=1;i<5;i++) {
		obj = document.getElementById("AmountSum" + i);
		if(obj) {
			val = parseInt(obj.value.replace(/\W/g, ""));
			if(!val) {
				alert("Angiv venligst et beløb.");
				return false;
			}
			switch(i) {
			case(1):
				if(val > 200000 || val < 15000) {
					alert("Angiv venligst et beløb mellem 15.000 og 200.000 kr.! Ønsker du at give et større beløb, beder vi dig kontakte Anne-Mette Krøyer  Dir. Telefon 35248508 ");
					return false;
				}
				obj.value=val;
				break;
			case(2):
				if(val > 14999 || val < 10000) {
					alert("Du skal angive et beløb mellem 10.000 og 14.999 kr.!");
					return false;
				}
				obj.value=val;
				break;
			case(3):
				if(val > 9999 || val < 5000) {
					alert("Du skal angive et beløb mellem 5000 og 9999 kr!");
					return false;
				}
				obj.value=val;
				break;
			case(4):
				if(val > 4999 || val < 2000) {
					alert("Du skal angive et beløb mellem 2.000 og 4.999 kr.!");
					return false;
				}
				obj.value=val;2005-09-16
				break;
			}
		}
	}
	return true;
}

function InfoVisible(sStatus) {
	if(sStatus==1){
		document.getElementById('showinfo').value="1";
	} else {
		document.getElementById('showinfo').value="0";
	};
	document.getElementById('frmJulkort').submit();
}

function InfoVisible2(sStatus) {
	if(sStatus==1){
		document.getElementById('showinfo').value="1";
	} else {
		document.getElementById('showinfo').value="0";
	};
	document.getElementById('frmJulkort2').submit();
}
