// JavaScript Document
//<!-- Begin
function formCheck(formobj, fieldRequired, fieldDescription){
	// dialog message
	var alertMsg = "Please complete the following fields:\n";
	
	var l_Msg = alertMsg.length;
	var flagBooking=false;
	
	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 "radio":
    var radio_ok = true;
    
      if (!formobj.elements.booking_date.checked) {
       flagBooking = true;  objName = "- " + fieldDescription[i] + "\n";  radio_ok = false;
      } else {
       flagBooking = true;  objName = "";  radio_ok = true;
       break;
      }

    if (!radio_ok) {
     if (objName != "") {
      if (alertMsg == "Please choose a booking date:\n\n") {
       thisStr = "- " + objName;
      } else {
       thisStr = " " + objName;
      }
      alertMsg += thisStr;
     }
    }
    break;
	
	
	case "radio":
    var radio_ok = true;
    
      if (!formobj.elements.WebDAV.checked) {
       flagBooking = true;  objName = "- " + fieldDescription[i] + "\n";  radio_ok = false;
      } else {
       flagBooking = true;  objName = "";  radio_ok = true;
       break;
      }

    if (!radio_ok) {
     if (objName != "") {
      if (alertMsg == "Please choose a booking date:\n\n") {
       thisStr = "- " + objName;
      } else {
       thisStr = " " + objName;
      }
      alertMsg += thisStr;
     }
    }
    break;
	
	case "checkbox":
    var checkbox_ok = true;
    
      if (!formobj.elements.confirmation.checked) {
       flagBooking = true;  objName = "- " + fieldDescription[i] + "\n";  checkbox_ok = false;
      } else {
       flagBooking = true;  objName = "";  checkbox_ok = true;
       break;
      }
   // } else {
//     objName = "";
//    }
    if (!checkbox_ok) {
     if (objName != "") {
      if (alertMsg == "Please confirm your UEL Plus experience:\n\n") {
       thisStr = "- " + objName;
      } else {
       thisStr = " " + objName;
      }
      alertMsg += thisStr;
     }
    }
    break;
	
		case "checkbox":
    var checkbox_ok = true;
    //if (formobj.elements.name == "booking_date" && !flagBooking) {
      if (!formobj.elements.learning_technology.checked) {
       flagBooking = true;  objName = "- " + fieldDescription[i] + "\n";  checkbox_ok = false;
      } else {
       flagBooking = true;  objName = "";  checkbox_ok = true;
       break;
      }
   // } else {
//     objName = "";
//    }
    if (!checkbox_ok) {
     if (objName != "") {
      if (alertMsg == "Please confirm your UEL Plus experience:\n\n") {
       thisStr = "- " + objName;
      } else {
       thisStr = " " + objName;
      }
      alertMsg += thisStr;
     }
    }
    break;
	
	
	case "checkbox":
    var checkbox_ok = true;
    //if (formobj.elements.name == "booking_date" && !flagBooking) {
      if (!formobj.elements.availability.checked) {
       flagBooking = true;  objName = "- " + fieldDescription[i] + "\n";  checkbox_ok = false;
      } else {
       flagBooking = true;  objName = "";  checkbox_ok = true;
       break;
      }
   // } else {
//     objName = "";
//    }
    if (!checkbox_ok) {
     if (objName != "") {
      if (alertMsg == "Please confirm your UEL Plus experience:\n\n") {
       thisStr = "- " + objName;
      } else {
       thisStr = " " + objName;
      }
      alertMsg += thisStr;
     }
    }
    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){
		//check the email address
		var emailFld = formobj.email_address;
		if ((emailFld.value == null) || (emailFld.value == "")) {
			//this should have been checked already
			alert("Please enter your E-mail address.")
			emailFld.focus();
			return false;
		}
		if (checkEmail(emailFld.value) == false) {
			alert("Please enter a valid E-mail address.")
			emailFld.value = "";
			emailFld.focus();
			return false;
		}
		return true;
	}else{
		alert(alertMsg);
		return false;
	}
}
                  

function checkEmail(emailStr) {

	var at = "@";
	var dot = ".";
	var lat = emailStr.indexOf(at);
	var lstr = emailStr.length;
	var ldot = emailStr.indexOf(dot);
	if (emailStr.indexOf(at) == -1) {
		return false;
	}
	if (emailStr.indexOf(at) == -1 || emailStr.indexOf(at) == 0 || emailStr.indexOf(at) == lstr){
		return false
	}
	if (emailStr.indexOf(dot)==-1 || emailStr.indexOf(dot) == 0 || emailStr.indexOf(dot) == lstr){
		return false;
	}
	if (emailStr.indexOf(at, (lat+1)) != -1){
		return false;
	}
	if (emailStr.substring(lat-1,lat) == dot || emailStr.substring(lat+1, lat+2) == dot){
		return false;
	}
	if (emailStr.indexOf(dot,(lat+2)) == -1){
		return false;
	}
	if (emailStr.indexOf(" ") != -1){
		return false;
	}
	return true;
}
                
                  
//End -->

