﻿/* General functions
---------------------------------------------------------------- */

// General "no-only-space" filter variable
var spaceFilter = /^\s+$/;


/* Toogle text in search field functions
---------------------------------------------------------------- */

function focusField(f,txt){

	// Declare variable
	var field = document.getElementById(f.id);
	
	// Clean field, markup if text is not the same as original
	if(field.value==txt){
		field.value = '';
	}else{
		field.select();
	}

}

function blurField(f,txt){

	// Declare variable
	var field = document.getElementById(f.id);
	
	// Restore field if not text is original
	if(field.value==''){
		field.value = txt;
	}

}

/* Link function
---------------------------------------------------------------- */

function goToUrl(popup,url){

	// If popup is true, then open in popup, else open normal
	if(url){
		if(popup){
			window.open(url);
		}else{
			location.href = url;
		}
	}

}


/* Email / newsletter
---------------------------------------------------------------- */

function checkEmail(parEmail){
	var str = parEmail;
	var filter = /^[^\s@]+@[^\s@]+\.[a-z]{2,6}$/i;

	// Check if the e-mail is valid
	if(filter.test(str)){
		// Valid
		return true;
	} else {
		// Invalid
		return false;
	}
}

function validateEmail(f){
	
	// Execute form?
	var execute = true;

	if(f.email.value==''){
		f.email.value='din email...';
		f.email.focus();
		execute = false;
	}
	
	if(!checkEmail(f.email.value)){
		f.email.value='forkert email!';
		f.email.focus();
		execute = false;
	}
	
	// Return to form
	return execute;
}

/* SMS
---------------------------------------------------------------- */

function validateSMS(f){
	
	// Execute form?
	var execute = true;

	if(f.sms.value==''){
		f.sms.value='dit mobilnummer...';
		f.sms.focus();
		execute = false;
	}
	
	if(spaceFilter.test(f.sms.value) || f.sms.value.length < 8){
		f.sms.value='forkert mobilnummer!';
		f.sms.focus();
		execute = false;
	}
	
	// Return to form
	return execute;
}