
/* init variables */
	var aLoans;
	var oLoan;
	var oInt;
	
	var infoActive = false;
	var infoInt;
	var bFlashDone = false;

	var oBox;
	var oBoxActive = true;
	var oBoxInt;


/* setup banner and box */
	function init_rdlaan() {
		var fnOnLoad;
		if (window.onload) fnOnLoad = window.onload;
		window.onload = function() {
			if (fnOnLoad) fnOnLoad();
			
			var frm = document.forms["frm_rdlaan"];
			var i = frm.loan.options.length;
			for (var each in aLoans) {
				frm.loan.options[i] = new Option(aLoans[each].laanetype,each);
				i++;
			}
			
			var oCloneBox = document.getElementById("rdlaan-floatbox");
			oBox = oCloneBox.cloneNode(true);
			document.body.appendChild(oBox);
			oCloneBox.innerHTML = "";
			
			flashReady();
			initInfoBox();
			flashDone();
		}
		
	}

/* Calculate loan values */

	function calc_rdlaan(price,building) {
		var frm = document.frm_rdlaan;
		var loan = getFirstSel(frm.loan);
		
		var factor = 0.8;
		if (building == "vacation") factor = 0.6;

		var loanObj = aLoans[loan];
		var loanType = loanObj.types[((frm.interestOnly.checked)? "pause":"normal")];

		var o = new Object();
		o.loanName = loanObj.laanetype;
		o.interestOnly = (frm.interestOnly.checked)? 1:0;
		o.loan = fNumber(price * factor);
		o.bTax = fNumber((price * factor * loanType.foersteaarsydelsefoerskat) / (12*1000000));
		o.aTax = fNumber((price * factor * loanType.foresteaarsydelseefterskat) / (12*1000000));
		
		return o;
	}
	function fNumber(n) {
		var strValue = Math.round(n).toString();
		var objRegExp  = new RegExp('(-?[0-9]+)([0-9]{3})');
		while(objRegExp.test(strValue)) {
			strValue = strValue.replace(objRegExp, '$1.$2');
		}
		return strValue + " kr.";
	}
	
	function sendStat() {
		var img = document.images["rd-stat"];
		img.src = "https://track.adform.net/Stat/?pm=927&lid=26461";
		var imgEmediate = document.getElementById("emediateStat");
		imgEmediate.src = "http://eas4.emediate.eu/eas?cu=2175";
		imgEmediate.style.display = "inline";
	}

	function sendContact() {
		var img = document.images["rd-stat"];
		var timestamp = new Date().getTime();
		img.src = "http://track.adform.net/C/?bn=32617;C=2&timestamp="+timestamp;
		return true;
	}
	
	function trackPopup() {
//		var img = document.images["rd-stat"];
//		img.src = "https://track.adform.net/Stat/?pm=927&lid=26462";
//		return true;
	}
	
/* Control banner behaviour */

	function getFirstSel(elm) {
		var str = elm.options[elm.selectedIndex].value;
		if (str=="") {
			for (var i=0;i<elm.options.length;i++) {
				if (elm.options[i].value!="") {
					str = elm.options[i].value;
					elm.options[i].selected = true;
					break;
				}
			}
		}
		return str;
	}


	function showResult() {
		var frm = document.frm_rdlaan;
		var price = frm.price.value.replace(/\D/g,"");
		frm.price.value = price;
		
		setDisabled(getFirstSel(frm.loan));
		
		if (price) {
			var price = parseInt(price);
			var building = getFirstSel(frm.building);
		
			var o = calc_rdlaan(price, building);
			document.getElementById("banner-loan").innerHTML = o.loan;
			document.getElementById("banner-bTax").innerHTML = o.bTax;
			document.getElementById("banner-aTax").innerHTML = o.aTax;
			
			document.getElementById("rd-result").style.visibility = "visible";
			
		}
	}
	function setDisabled(loanStr) {
		var frm = document.frm_rdlaan;
		var loanObj = aLoans[loanStr];
				
		if (!loanObj.types["pause"] || !loanObj.types["normal"]) {
			frm.interestOnly.checked = (!loanObj.types["pause"])? false : true;
			frm.interestOnly.disabled = true;
			frm.interestOnly.parentNode.style.color = "#999";
			
		} else {
			frm.interestOnly.disabled = false;
			frm.interestOnly.parentNode.style.color = "#000";
		}
	}
	function hideResult() {
		document.getElementById("rd-result").style.visibility = "hidden";
	}
	function flashReady() {
		document.getElementById("rdlaan-banner").className += " flash-ready";
	}
	function flashDone() {
		/*document.getElementById("rdlaan-banner").className += " ready";
		document.getElementById("rd-flash").style.display = "none";
		bFlashDone = true;*/
		
		return true;
	}
	
	function getElementByClassName( root, cn ) {
		if( root && cn ) {
			var children = root.childNodes;
			
			for( var i=0; i < children.length; i++ ) {
				var child = children[i];
				
				if( child.nodeType == 1 ) {
					var childCns = child.className.split(/\s+/);
					var mStr = "|"+ childCns.join("|") +"|";
					var regEx = new RegExp("[\|]"+ cn +"[\|]", "ig");
					
					if( regEx.test(mStr) )
						return child;
				}
			}
			
			return null;
		}
	}
	
	function initInfoBox() {
		bFlashDone = true;
		
		var box = document.getElementById("rd-infobox");
		var logo = getElementByClassName(box, "logo");
		
		box.parentNode.style.overflow = "hidden";
		
		box.closeY = (box.offsetHeight + box.offsetTop) - logo.offsetHeight;
		box.openY = box.offsetTop;
		
		box.parentNode.style.overflow = "visible";
		
		hideInfoBox( box );
	}

	function showInfoBox( box ) {
		if (bFlashDone) {
			clearTimeout(infoInt);
			animInfoBox(box.openY);//box.offsetHeight);
		}
	}

	function hideInfoBox( box ) {
		if (bFlashDone) {
			clearTimeout(infoInt);
			animInfoBox(box.closeY);//box.logoHeight);
		}
	}
	
	function animInfoBox(n) {
		infoActive = true;
		
		var obj = document.getElementById("rd-infobox");
		var y = parseInt(obj.offsetTop);
		var inc = 5;
		
		var incs = (y<n)? inc : -inc;
		obj.style.top = (y+incs) + "px";
		
		if (Math.abs(y-n)<inc) {
			obj.style.top = n + "px";
			infoActive = false;
		} else { 
			infoInt = setTimeout("animInfoBox("+n+")",20);
		}
	}

/* Control box behaviour */

	function rdlaan_quickCalc(oThis,price,building) {
		if (oBox && oBoxActive) {
			if (price) {
				clearTimeout(oBoxInt);
				price = parseInt(price.toString().replace(/\D/g,""));
				
				var o = calc_rdlaan(price, building);
				document.getElementById("float-loanname").innerHTML = (o.interestOnly)? "Afdr. "+o.loanName: o.loanName;
				document.getElementById("float-loan").innerHTML = o.loan;
				document.getElementById("float-bTax").innerHTML = o.bTax;
				document.getElementById("float-aTax").innerHTML = o.aTax;
				
				oBox.style.display = "block";
				oBox.style.left = getAbsLeft(oThis) + oThis.offsetWidth + "px";
				oBox.style.top = getAbsTop(oThis) - oBox.offsetHeight/2 + oThis.offsetHeight/2 + "px";
				
				oThis.onmouseout = rdlaan_quickCalc;
				
//				trackPopup();

			} else {
				oBoxInt = setTimeout(function() {
					oBox.style.display = "none";
				}, 500);
			}
		}
	}
	function toggleBox(b) {
		document.frm_floatbox.showInfo.checked = (b)? 0:1;
		document.frm_rdlaan.showInfo.checked = (b)? 1:0;
		oBoxActive = b;
		if (!b) {
			clearTimeout(oBoxInt);
			oBox.style.display = "none";
		}
	}
	function getAbsLeft(o) {  
		var iY = 0; 
		while(o.offsetParent){ 
			iY += parseInt(o.offsetLeft);
			o = o.offsetParent;  
		} 
		return iY; 
	} 
	function getAbsTop(o) {  
		var iX = 0; 
		while(o.offsetParent){ 
			//window.status += o.offsetParent.nodeName + "=" + o.offsetTop + " | "; 
			iX += parseInt(o.offsetTop);  
			o = o.offsetParent;  
		} 
		return iX
	}
