
// confirm
function MyConfirm(s,p) {
	if (!p) {
		p = "Weet u het zeker dat u deze aktie wilt uitvoeren?";
	}
	
	var answer = confirm(p);
	if (answer) {
		location.href = s;
	}
}

// set activity-price
function SetActivityPrice(f) {
	if (f.season.value == "dry season1" || f.season.value == "dry season2") {
		f.price.value = f.price_dry.value
	} else {
		f.price.value = f.price_wet.value
	}
}

// add bookmark
function AddBookmark(url, title) {
	if (window.sidebar) { // Mozilla Firefox Bookmark
		window.sidebar.addPanel(title, url, "");
	} else if( window.external ) { // IE Favorite
		window.external.AddFavorite(url, title);
	} else if(window.opera && window.print) { // Opera Hotlist
		return true;
	}
}

// check form step2
function CheckStep2(f) {
	// message
	var header = 'The following field are required:\n\n';
	
	// check fields
	var message = '';
	message += CheckField(f.arrivaldate, 'Arrival date');
	message += CheckField(f.departuredate, 'Departure date');
	message += CheckField(f.numberadults, 'Number of adults');
	message += CheckField(f.numberchildren, 'Number of children');
	
  	if (message != "") {
		alert(header + '' + message);
		return false
	}
}

// check form step3
function CheckStep3(f) {
	// message
	var header = 'The following field are required:\n\n';
	
	// check fields
	var message = '';
	message += CheckField(f.firstname, 'First name');
	message += CheckField(f.lastname, 'Last name');
	message += CheckField(f.address, 'Address');
	message += CheckField(f.zipcode, 'Zipcode');
	message += CheckField(f.city, 'City');
	message += CheckField(f.telephone, 'Telephone');
	message += CheckEmail(f.email, 'E-mail');
	message += CheckCheckbox(f.agreement, 'Agreement');
	
  	if (message != "") {
		alert(header + '' + message);
		return false
	}
}

// check form contact
function CheckContact(f) {
	// message
	var header = 'The following field are required:\n\n';
	
	// check fields
	var message = '';
	message += CheckField(f.name, 'Name');
	message += CheckEmail(f.email, 'E-mail');
	
  	if (message != "") {
		alert(header + '' + message);
		return false
	}
}

// check textfield
function CheckField(fieldname, message) {
	if(fieldname) {
		if (fieldname.value == "") {
			SetFFStyle(fieldname, 'Bad');
			message = '- '+message+'\n';
			return message;
		} else {
			SetFFStyle(fieldname, 'Good');
			return '';
		}
	} else {
		return '';
	}
}

// check boxfield
function CheckCheckbox(fieldname, message) {
	if(fieldname) {
		if (fieldname.checked != true) {
			message = '- '+message+'\n';
			return message;
		} else {
			return '';
		}
	} else {
		return '';
	}
}

// check emailfield
function CheckEmail(fieldname, message) {
	if(fieldname) {
		if (fieldname.value == "") {
			SetFFStyle(fieldname, 'Bad');
			message = '- '+message+'\n';
			return message;
		} else if (IsEmail(fieldname.value) == false) {
			SetFFStyle(fieldname, 'Bad');
			message = '- '+message+' is not a valid e-mailaddress !\n';
			return message;
		} else {
			SetFFStyle(fieldname, 'Good');
			return '';
		}
	} else {
		return '';
	}
}

// check emailfield
function IsEmail(str) {
	// are regular expressions supported?
	var supported = 0;
	if (window.RegExp) {
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}
	if (!supported)
		return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	return (!r1.test(str) && r2.test(str));
}

// set style
function SetFFStyle(el, status) {
	if (status == 'Bad') {
		// Backup current classname in cookie
		if (el.className != 'FormCheckBad') {
			var expires = CookieExpires();
			Set_Cookie("ContactClassName", el.className,expires);
		}
		
		// Change classname to bad
		el.className = 'FormCheckBad';
	} else {
		// Get classname from cookie
		var ContactClassName = Get_Cookie("ContactClassName");
		
		if (ContactClassName != 'FormCheckBad' && ContactClassName != '') {
			// Restore classname from cookie
			el.className = ContactClassName;
		} else {
			// Restore to default class
			el.className = 'FormCheckGood';
		}
	}
}

// get cookie
function Get_Cookie(name) {
    var start = document.cookie.indexOf(name+"=");
    var len = start+name.length+1;
    if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
    if (start == -1) return null;
    var end = document.cookie.indexOf(";",len);
    if (end == -1) end = document.cookie.length;
    return unescape(document.cookie.substring(len,end));
}

// set cookie
function Set_Cookie(name,value,expires,path,domain,secure) {
    document.cookie = name + "=" +escape(value) +
        ( (expires) ? ";expires=" + expires.toGMTString() : "") +
        ( (path) ? ";path=" + path : "") + 
        ( (domain) ? ";domain=" + domain : "") +
        ( (secure) ? ";secure" : "");
}

// cookie expires
function CookieExpires() {
	var today	= new Date();
	var expires = new Date(today.getTime() + (56 * 86400000));
	return expires;
}
//this function is used for mouseovers 
function AddStringToFileName(file_object, string_to_add) {
	last_dot   = file_object.src.lastIndexOf('.');
	file_ext   = file_object.src.slice(last_dot, file_object.src.length); // eg: .gif
	file_path  = file_object.src.slice(0, last_dot); // eg: /shared/custom/images/header
	string_len = string_to_add.length;
	
	//exit if the filename already contains the string to add
	if(file_path.slice(file_path.length - string_len, file_path.length) == string_to_add)
		return;
	
	//add the string to add to the src
	file_object.src = file_path + string_to_add + file_ext;
}

function RemoveStringFromFileName(file_object, string_to_remove) {
	last_dot   = file_object.src.lastIndexOf('.');
	file_ext   = file_object.src.slice(last_dot, file_object.src.length); // eg: .gif
	file_path  = file_object.src.slice(0, last_dot); // eg: /shared/custom/images/header
	string_len = string_to_remove.length;
	
	//only remove the string if filename contains the string
	if(file_path.slice(file_path.length - string_len, file_path.length) == string_to_remove)
		file_object.src = file_path.slice(0, file_path.length - string_len) + file_ext;
}


