/**
 * This script is copyright The Weld Studio Ltd and MUST NOT be
 * copied, edited, or used by any other site.
 *
 * Copyright The Weld Studio Ltd. 2008
 */

var forms = new Object();
var badWords = ['fuck', 'bitch', 'slut', 'shit'];

function hasBadWords(testText) {
	testText = String(testText).toLowerCase();
	for (i in badWords) {
		if (testText.indexOf(badWords[i]) != -1) {
			return true;
		}
	}
	return false;
}

function addForm(name, elements) {
	forms[name] = elements;
}

function checkForm(name) {
	var currentForm = forms[name];
	var errorText = '';

	var error = false;
	for (element in currentForm) {
		error = false;
		switch(currentForm[element][0]) {
			case "text":
				if (document.getElementById(element).value == "") {
					error = true;
				}
				break;
			case "name":
				if (document.getElementById(element).value == "") {
					error = true;
					break;
				}
				if(hasBadWords(document.getElementById(element).value)) {
					document.getElementById(element).value = "";
					error = true;
					break;
				}
				break;
			case "email":
				if (document.getElementById(element).value == "") {
					error = true;
					break;
				}
				if(hasBadWords(document.getElementById(element).value)) {
					document.getElementById(element).value = "";
					error = true;
					break;
				}

				var temp = document.getElementById(element).value.split('@');
				if (temp.length != 2) {
					error = true;
					break;
				}
				if (temp[0].length == 0 || temp[1].length < 4) {
					error = true;
					break;
				}
				if (temp[1].indexOf('.') == -1) {
					error = true;
					break;
				}
				break;
			case "password":
				if (document.getElementById(element).value != 
					document.getElementById(currentForm[element][2]).value) {
					document.getElementById(currentForm[element][2]).style.border 
						= "solid 1px #F00";
					error = true;
					break;
				}

				break;
		}
		if (error) {
			errorText += "\n- " + currentForm[element][1];
			document.getElementById(element).style.border = "solid 1px #F00";
		}
	}
	
	if (errorText != "") {
		alert("There has been an error in filling out the form:" + errorText);
		return false;
	}
	return true;
}
