/*
<!-- Mikael Wejsflog - CV - Javascript - validateForm_guestbook, v1.0-->
<!-- Author : Mikael Wejsflog-->
<!-- Date: 051211-->
*/

var code;

//Validates the form for the guestbook
function validateForm() {

	var errorCollector = "";
	var errorArray = new Array();	
	var validated = false;
		
	//Validerar namn
	if (document.forms['guestbookForm'].elements['Name'].value == "") {
		errorCollector += "Name\n";
		errorArray.push("Name");
	}
	
	//Validerar meddelande
	if (document.forms['guestbookForm'].elements['Message'].value == "") {
		errorCollector += "Message\n";
		errorArray.push("Message");
	}
	else {
		if (this.document.forms['guestbookForm'].elements['Message'].value.length > 1000) {
			errorCollector += "Message text contains more than 1000 characters\n";
			errorArray.push("Message");
		}
	}

	//Validerar e-post
	if (document.forms['guestbookForm'].elements['Email'].value == "") {
		errorCollector += "Email\n";
		errorArray.push("Email");
	}
	
	//Validerar e-post-tecken
	if (document.forms["guestbookForm"].elements['Email'].value != "") {
	
		var email = document.forms["guestbookForm"].elements['Email'].value
		var regex = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
		
		if (!regex.test(email)) {
			errorCollector += "E-mail\nNote that your e-mail address must conform to the following naming standard, xxx@domain.xxx";
			errorArray.push("Email");
		}
	}
 
	
	//skriver ut varningstext
	if (errorCollector != "") {
		alert("The form has not been filled out correctly\nplease look at the following textfields:\n"+errorCollector+"");
		
		//återställer röd-kant.
		for (var y=0; y<document.forms["guestbookForm"].elements.length-1; y++) {
			document.forms["guestbookForm"].elements[y].style.border = "solid 2px #CCCCCC";
		}
		for (var z=0; z<errorArray.length; z++) {
			//sätter en röd kant runt de fält som är felaktigt ifyllda
			document.forms["guestbookForm"].elements[errorArray[z]].style.border = "solid 2px red";
		}
	}
	else {
		validated = true;
	}
		
	//Visar captcha
	if (validated) {
		
		code = Math.floor(Math.random()*99999999-00000001+1)+1;		
		
		var captcha = "<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' width='120' height='30' id='captcha' align='middle'><param name='allowScriptAccess' value='sameDomain' /><PARAM NAME=FlashVars VALUE='securityCode="+code+"'><param name='movie' value='../files/captcha.swf' /><param name='quality' value='high' /><param name='bgcolor' value='#ffffff' /><embed src='../files/captcha.swf' quality='high' FlashVars='securityCode="+code+"' bgcolor='#ffffff' width='120' height='30' name='captcha' align='middle' allowScriptAccess='sameDomain' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' /></object>";		
		//this.document.getElementById("body").innerHTML += "<div id='unfocuslayer' style='position: absolute; top: 0px; left: 0px; width: 3000px; height: 3000px; overflow: hidden; z-index: 0; background-color: #000000; filter: alpha(opacity=25);-moz-opacity:.25;opacity:.25;'></div>";
		this.document.getElementById("popupPosition").innerHTML += "<div style='padding: 10px; background-color: #FFFFFF; width: 350px; height: 250px; border: 5px solid yellow; position: absolute; top: auto; left: 33%; z-index: 1;'><p class='regulartext'>Please type the security code in the text box below.</p>"+captcha+"<input class='forminput' type='text' id='codeInput' size='12' style='margin-top: 7px;' /><input name='submit' type='submit' id='submit' style='margin-top: 7px;' value='send' /><br /><br /><input type='button' value='Close' onClick='closePopup()' /></div>";			
	} 
}


function closePopup() {
	this.document.getElementById("popupPosition").innerHTML = ""; //<div style='font: 0px normal Arial; height: 0px; width: 0px; margin: 0px; padding: 0px;'></div>
}

function resetBackground() {
	//not used	
}


function verifySecurityCode() {
	
	var check;
	
	if (this.document.getElementById('codeInput').value == code) {
		//document.write("<p class='regulartext'>validated</p><br />" + code + '<br />'+document.forms['guestbookForm'].elements['Message'].value);
		
		//Strips the message text from any html-tags and any text in between
		var msg = this.document.forms['guestbookForm'].elements['Message'].value;
		//var regex = /(<a).+.(<\/a>))/gi;	
		var regex = /<\S[^><]*>/gi; 
		msg = msg.split(regex);
		this.document.forms['guestbookForm'].elements['Message'].value = msg;

		check = true;
	}
	else {
		//document.write("<p class='regulartext'><b>not validated</b></p><br />" + code);
		alert("Incorrect security code");
		check = false;
	}
	return check;
}