function initSiteType() {
	var frm        = document.forms[0];
	var siteType   = frm.siteType;
	var sitePeriod = frm.sitePeriod;
	sitePeriod.disabled = false;
	
	if ( typeof siteType == 'undefined' ) {
		return;
	}
	
	var selected, defaultSelected, optName, strMonth, discount, strDiscount;
	
	for ( var i = 0; i < siteType.length; i++ ) {
		
		siteType[i].siteTypeNumber = i + 1;
		
		siteType[i].onclick = function() {
			selected = sitePeriod.selectedIndex;
			sitePeriod.options.length = 0;
			var j = 0;
			for ( var period in prices[this.siteTypeNumber] ) {
				strMonth        = ( period == 1 ? 'maand' : 'maanden' );
				discount        = prices[this.siteTypeNumber][period]['d'];
				strDiscount     = ( discount > 0 ? ' (-' + discount + '%)' : '' );
				optName         = period + ' ' + strMonth + ', Euro ' + prices[this.siteTypeNumber][period]['p'] + ',- ' + strDiscount + '\n';
				defaultSelected = ( selected != -1 ? selected == j : period == '1 maand' );
				sitePeriod.options[j] = new Option( optName, period, false, defaultSelected );
				j++;
			}
		}
		
	}
}



function initSubsciptionForm() {
	document.frm.submit.disabled = false;
	document.frm.setAttribute( 'action', 'orderSummary.php' );
}



function checkIssuerId() {
	var issuerID = document.getElementById( 'issuerID' );
	if ( !issuerID ) {
		return;
	}
		
	var frmIdeal = issuerID;
	while ( frmIdeal.nodeName != 'FORM' ) {
        frmIdeal = frmIdeal.parentNode;
    }
	if ( frmIdeal ) {
		frmIdeal.onsubmit = function() {
			var noIdeal = document.getElementById( 'noIdeal' );
			if ( noIdeal && noIdeal.checked ) {
				return;
			}

			var selectedIssuer = issuerID.options[issuerID.options.selectedIndex].value;
			if ( selectedIssuer.length != 4 ) {
				alert( 'Kies eerst uw bank uit het menu' );
				return false
			}
		}
	}
}



function disableIdeal() {
	var noIdeal = document.getElementById( 'noIdeal' );
	if ( !noIdeal ) {
		return;
	}
	
	var issuerID  = document.getElementById( 'issuerID' );
	var tr        = issuerID.parentNode.parentNode;
	var strIdeal  = document.getElementById( 'strIdeal' );
	strIdealText  = strIdeal.innerHTML;
	var btnSubmit = document.forms[0].submit;
	btnSubmitText = btnSubmit.value;
	var submitTo  = document.forms[0].action;
	
	noIdeal.onclick = function() {
		if ( this.checked ) {
			// Disable iDEAL
			issuerID.disabled  = true;
			tr.className       = 'fade';
			btnSubmit.value    = 'Maak factuur >';
			strIdeal.innerHTML = 'U kunt de factuur met een overschrijving betalen';
			document.forms[0].action = 'createInvoice.php';
		}
		else {
			// Enable iDEAL
			issuerID.disabled  = false;
			tr.className       = '';
			btnSubmit.value    = btnSubmitText;
			strIdeal.innerHTML = strIdealText;
			document.forms[0].action = submitTo;
		}
	}
}



function getRadioIndex( obj ) {
	for ( var i = 0; i < obj.length; i++ ) {
		if ( obj[i].checked ) {
			return i;
		}
	}
}



function checkUploadImg() {
	var btnSubmit = document.getElementById( 'btnSubmit' );
	if ( btnSubmit ) {
		btnSubmit.onclick = function() {
			if ( document.form1.img.value.length > 0 ) {
				this.disabled = true;
				document.form1.submit();
			}
			else {
				alert( 'Kies eerst een JPEG-bestand vanaf uw harde schijf' );
				return false;
			}
		}
	}
}



function setImg() {
	var imageLayer = document.getElementById( 'imageLayer' );
	imageLayer.oncontextmenu = function() { return false };
	imageLayer.style.backgroundImage = 'url( global/kolibri' + String.fromCharCode(45) + '2.jpg )';
}



function formatCurrency( amount ) {
	var out = amount;
	out = Math.round( amount * 100 ) / 100;
	out += '';                     // Convert to string
	out = out.replace( '.', ',' ); // Must be a string
	if ( out.match(/,\d$/) != null ) {
		// Add a zero if there is only one decimal
		out += '0';
	}
	return out;
}



function getIsoDate() {
	var oDate    = new Date();
	var curYear  = oDate.getFullYear();
	var curMonth = oDate.getMonth() + 1;
	curMonth     = curMonth < 10 ? '0' + curMonth : curMonth;
	var curDay   = oDate.getDate();
	curDay       = curDay < 10 ? '0' + curDay : curDay;
	return curYear + '-' + curMonth + '-' + curDay;		
}



function addLoadEvent( func ) {
	var oldOnLoad = window.onload;
	if ( typeof window.onload != 'function' ) {
		window.onload = func;
	}
	else {
		window.onload = function() {
			oldOnLoad();
			func();
		}
	}
}



function attachEventListener( target, eventType, functionRef, capture ) {
    if ( typeof target.addEventListener != 'undefined' ) {
        target.addEventListener( eventType, functionRef, capture );
    }
    else if ( typeof target.attachEvent != 'undefined' ) {
        target.attachEvent( 'on' + eventType, functionRef );
    }
	else {
        eventType = 'on' + eventType;

        if ( typeof target[eventType] == 'function' ) {
            var oldListener = target[eventType];

            target[eventType] = function() {
                oldListener();

                return functionRef();
            }
        }
		else {
            target[eventType] = functionRef;
        }
    }

    return true;
}



function detachEventListener( target, eventType, functionRef, capture ) {
    if ( typeof target.removeEventListener != 'undefined' ) {
        target.removeEventListener( eventType, functionRef, capture )
    }
    else if ( typeof target.detachEvent != 'undefined' ) {
        target.detachEvent( 'on' + eventType, functionRef );
    }
	else {
        target['on' + eventType] = null;
    }

    return true;
}



function getEventTarget( event ) {
    var targetElement = null;

    if ( typeof event.target != 'undefined' ) {
        targetElement = event.target;
    }
	else {
        targetElement = event.srcElement;
    }

    while ( targetElement.nodeType == 3 && targetElement.parentNode != null ) {
        targetElement = targetElement.parentNode;
    }

    return targetElement;
}



function stopDefaultAction( event ) {
    event.returnValue = false;

    if ( typeof event.preventDefault != 'undefined' ) {
        event.preventDefault();
    }

    return true;
}
