// Java Document

background = new Image();
background.src = "images/background.jpg";

nowshowing = new Image();
nowshowing.src = "images/buttons/nowshowingroll.jpg";

worldwrite = new Image();
worldwrite.src = "images/buttons/worldwriteroll.jpg";

byteback = new Image();
byteback.src = "images/buttons/commentsroll.jpg";

readmore = new Image();
readmore.src = "images/buttons/pollingstationroll.jpg";

aboutus = new Image();
aboutus.src = "images/buttons/aboutusroll.jpg";

contactus = new Image();
contactus.src = "images/buttons/contactusroll.jpg";

shownprev = new Image();
shownprev.src = "images/buttons/shownprevroll.jpg";

gofurther = new Image();
gofurther.src = "images/buttons/voloppsroll.jpg";

function formCheckTraining(formobj){
	// Enter name of mandatory fields
	var fieldRequired = Array("Name", "Email", "Telephone", "Address", "DOB", "Age", "MoreTheMerrier", "MakingHistory", "BitterSweet", "CanAttend", "HowHeard");
	// Enter field description to appear in the dialog box
	var fieldDescription = Array("Your Name", "Your Email Address", "Your Telephone Number", "Your Postal Address", "Your Date of Birth", "Your Age", "Your comments on The More The Merrier trailer", "Your comments on the Making History: Thomas Paine programme", "Your comments on the Bitter Sweet Sixteen programme", "Please confirm you can attend all three Train & Shoot days", "Please tell us how you heard about Train & Shoot");
	// dialog message
	var alertMsg = "Please complete the following fields:\n";
	
	var l_Msg = alertMsg.length;
	
	for (var i = 0; i < fieldRequired.length; i++){
		var obj = formobj.elements[fieldRequired[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "text":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length == l_Msg){
		return true;
	}else{
		alert(alertMsg);
		return false;
	}
}

function formCheckVol(formobj){
	// Enter name of mandatory fields
	var fieldRequired = Array("Name", "Email", "OpenEvening");
	// Enter field description to appear in the dialog box
	var fieldDescription = Array("Your Name", "Your Email Address", "Whether or not you can attend the next introductory evening");
	// dialog message
	var alertMsg = "Please complete the following fields:\n";
	
	var l_Msg = alertMsg.length;
	
	for (var i = 0; i < fieldRequired.length; i++){
		var obj = formobj.elements[fieldRequired[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "text":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length == l_Msg){
		return true;
	}else{
		alert(alertMsg);
		return false;
	}
}

function formCheckContact(formobj){
	// Enter name of mandatory fields
	var fieldRequired = Array("Name", "Email", "Enquiry");
	// Enter field description to appear in the dialog box
	var fieldDescription = Array("Your Name", "Your Email Address", "Your Enquiry");
	// dialog message
	var alertMsg = "Please complete the following fields:\n";
	
	var l_Msg = alertMsg.length;
	
	for (var i = 0; i < fieldRequired.length; i++){
		var obj = formobj.elements[fieldRequired[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "text":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length == l_Msg){
		return true;
	}else{
		alert(alertMsg);
		return false;
	}
}

function emailCheck (emailStr) {
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
var matchArray=emailStr.match(emailPat)
if (matchArray==null) {
	alert("Your email address seems incorrect. Please check @ and dots(.)")
	return false
}
var user=matchArray[1]
var domain=matchArray[2]

if (user.match(userPat)==null) {
    alert("Your email username doesn't seem to be valid.")
    return false
}

var IPArray=domain.match(ipDomainPat)
if (IPArray!=null) {
	  for (var i=1;i<=4;i++) {
	    if (IPArray[i]>255) {
	        alert("The destination IP address of your email address is invalid.")
		return false
	    }
    }
    return true
}

var domainArray=domain.match(domainPat)
if (domainArray==null) {
	alert("The domain name of your email address doesn't seem to be valid.")
    return false
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length
if (domArr[domArr.length-1].length<2 || 
    domArr[domArr.length-1].length>3) {
   alert("Your email address must end in a three-letter domain or a two letter country.")
   return false
}

if (len<2) {
   var errStr="Your email address is missing a hostname."
   alert(errStr)
   return false
}

return true;
}