// error checking functions //

function invalidInput(str) {
	if (str.match (/[^a-zA-Z0-9]/)) return true;
	else return false;
}

function invalidEmail(str) {
	if (str.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/)) return false;
	else return true;
}

function checkEmailInput(form) {
	if (invalidEmail(form.elements['emailaddress'].value)) {
		alert('Please enter a valid email address');
		form.elements['emailaddress'].focus();
		return false;
	}
	else return true;
}

function checkReason(form) {
	if (form.elements['UnlockReason'].value=="4") document.getElementById('OtherUnlockReasonId').style.display="block";
	else document.getElementById('OtherUnlockReasonId').style.display="none";
}

function checkUpdateReason(form) {
	if (form.elements['reason'].value.length<4) {
		alert("Please enter a reason for the update");
		form.elements['reason'].focus();
		return false;
	}
	else return true;
}

function checkKeyInput(form) {
	if (form.elements['key'].value.length<25) {
		alert('Please enter a valid CD key');
		form.elements['key'].focus();
		return false;
	}
	else if (form.elements['ContactName'].value=="") {
		alert('Please enter the contact name');
		form.elements['ContactName'].focus();
		return false;
	}
	else if (form.elements['CompanyName'].value=="") {
		alert('Please enter the company name');
		form.elements['CompanyName'].focus();
		return false;
	}
	else {
		if (form.elements['UnlockReason'].value=="") {
			alert('Please select a reason');
			form.elements['UnlockReason'].focus();
			return false;
		}
		else if ((form.elements['UnlockReason'].value=="4") && ((form.elements['OtherUnlockReason'].value=="Please Specify") || (form.elements['OtherUnlockReason'].value.length<3))) {
			alert('Please enter a reason');
			form.elements['OtherUnlockReason'].focus();
			return false;
		}
		else return true;
	}
}

function countNums(str) {
	var Count = 0;
	for (i=0; i<str.length; i++) {
		if (str.charAt(i).match(/[0-9]/)) Count++;
	}
	return Count;
}

function invalidPhoneNumber(str) {
	// fairly strict international-format check
	// if (str.match(/^(\+[0-9]{1,3}(-| )?\(?\d\)?(\s?[0-9]{1,7}){2,3})$/)) return false;
	// else return true;
	if (countNums(str)<5) return true;
	else return false;
}

// data entry form checking functions //

function checkAccReq(form) {
	var errormsg="";
	var intstring="Please use international format (+xx xxxx xxxx xxxx), eg +64 9 476 7124 or +1 514 648 6648";

	if (form.elements['ReqTitle'].value=="") errormsg+="\n- Title is empty";
	if (form.elements['ReqFirstName'].value=="") errormsg+="\n- First name is empty";
	if (form.elements['ReqLastName'].value=="") errormsg+="\n- Last name is empty";
	if (form.elements['ReqCompanyName'].value=="") errormsg+="\n- Company name is empty";
	if (form.elements['ReqCompanyAdd1'].value=="") errormsg+="\n- Company address is empty";
	if (form.elements['ReqCompanyCity'].value=="") errormsg+="\n- Company city is empty";
	if (form.elements['ReqCompanyCountry'].value=="") errormsg+="\n- Country is empty";
	if ((invalidPhoneNumber(form.elements['ReqCompanyPhone'].value)) && (invalidPhoneNumber(form.elements['ReqCompanyMobile'].value))) errormsg+="\n- Phone number is invalid. "+intstring;
	if ((form.elements['ReqCompanyFax'].value!="") && (invalidPhoneNumber(form.elements['ReqCompanyFax'].value))) errormsg+="\n- Fax number is invalid. "+intstring;

	if (form.elements['ReqUserTypeId'].value=="") errormsg+="\n- User Type is empty";

	if (form.elements['ReqUserExperience'].value=="") errormsg+="\n- Background / History is empty";

	if (invalidEmail(form.elements['ReqEMail'].value)) errormsg+="\n- Email address is invalid";
	if (form.elements['ReqEMail'].value!=form.elements['ReqConEMail'].value) errormsg+="\n- Email addresses do not match";

	if (invalidInput(form.elements['ReqPassword'].value)) errormsg+="\n- Password contains invalid characters";
	if (form.elements['ReqPassword'].value.length>20) errormsg+="\n- Password is too long (max 20 characters)";
	if (form.elements['ReqPassword'].value.length<8) errormsg+="\n- Password is too short (min 8 characters)";
	if (countNums(form.elements['ReqPassword'].value)<2) errormsg+="\n- Password must contain at least 2 numbers";
	if (form.elements['ReqPassword'].value!=form.elements['ReqConPassword'].value) errormsg+="\n- Passwords do not match";

	if (errormsg=="") return true;
	else {
		alert("The following errors have been found:\n"+errormsg);
		return false;
	}
}

function checkPersonalDetails(form) {
	var errormsg="";
	var intstring="Please use international format (+xx xxxx xxxx xxxx), eg +64 9 476 7124 or +1 514 648 6648";

	if (form.elements['UserTitle'].value=="") errormsg+="\n- Title is empty";
	if (form.elements['UserFirstName'].value=="") errormsg+="\n- First name is empty";
	if (form.elements['UserLastName'].value=="") errormsg+="\n- Last name is empty";

	if (invalidEmail(form.elements['UserEMailAddress'].value)) errormsg+="\n- Email address is invalid";
	if (invalidInput(form.elements['UserPassword'].value)) errormsg+="\n- Password contains invalid characters";
	if (form.elements['UserPassword'].value.length<8) errormsg+="\n- Password is too short (min 8 characters)";
	if (form.elements['UserPassword'].value.length>20) errormsg+="\n- Password is too long (max 20 characters)";
	if (form.elements['UserPassword'].value!=form.elements['UserConPassword'].value) errormsg+="\n- Passwords do not match";
	if (countNums(form.elements['UserPassword'].value)<2) errormsg+="\n- Password must contain at least 2 numbers";

	if (form.elements['UserCompany'].value=="") errormsg+="\n- Company name is empty";
	if (form.elements['UserCompanyCountry'].value=="") errormsg+="\n- Country is empty";
	if (invalidPhoneNumber(form.elements['UserPhoneNumber'].value)) errormsg+="\n- Phone number is invalid. "+intstring;
	if (invalidPhoneNumber(form.elements['UserMobileNumber'].value)) errormsg+="\n- Mobile number is invalid. "+intstring;
	if ((form.elements['UserFaxNumber'].value!="") && (invalidPhoneNumber(form.elements['UserFaxNumber'].value))) errormsg+="\n- Fax number is invalid. "+intstring;

	if (errormsg=="") return true;
	else {
		alert("The following errors have been found:\n"+errormsg);
		return false;
	}
}

function checkRegisterKey(form) {
	var errormsg="";
	var intstring="Please use international format (+xx xxxx xxxx xxxx), eg +64 9 476 7124 or +1 514 648 6648\n";

	if (form.elements['LicSiteName'].value=="") errormsg+="- Site Name\n";
	if (form.elements['LicSiteAddressOne'].value=="") errormsg+="- Site Address 1\n";
	if (form.elements['LicSiteAddressTwo'].value=="") errormsg+="- Site Address 2\n";
	if (form.elements['LicSiteCountry'].value=="") errormsg+="- Site Country\n";

	if (invalidPhoneNumber(form.elements['LicSitePhone'].value)) errormsg+="- Site Phone Number is invalid. "+intstring;
	if ((form.elements['LicSiteFax'].value.length>0) && (invalidPhoneNumber(form.elements['LicSiteFax'].value))) errormsg+="- Site Fax Number is invalid. "+intstring;
	if (form.elements['LicSiteContact'].value=="") errormsg+="- Site Contact\n";
	if (invalidEmail(form.elements['LicSiteEmail'].value)) errormsg+="- Site Email Address is invalid\n";
	if (form.elements['LicSiteEmail'].value!=form.elements['LicSiteConfirmEmail'].value) errormsg+="- Site Email Addresses do not match\n";

	if (form.elements['LicInstName'].value=="") errormsg+="- Installer Company Name\n";
	if (form.elements['LicInstAddressOne'].value=="") errormsg+="- Installer Company Address 1\n";
	if (form.elements['LicInstAddressTwo'].value=="") errormsg+="- Installer Company Address 2\n";
	if (form.elements['LicInstCountry'].value=="") errormsg+="- Installer Company Country\n";

	if (invalidPhoneNumber(form.elements['LicInstPhone'].value)) errormsg+="- Installer Phone Number is invalid. "+intstring;
	if ((form.elements['LicInstFax'].value.length>0) && (invalidPhoneNumber(form.elements['LicInstFax'].value))) errormsg+="- Installer Fax Number is invalid. "+intstring;
	if (form.elements['LicInstContact'].value=="") errormsg+="- Installer Name\n";

	if (invalidEmail(form.elements['LicInstEmail'].value)) errormsg+="- Installer Email Address is invalid\n";
	if (form.elements['LicInstEmail'].value!=form.elements['LicInstConfirmEmail'].value) errormsg+="- Installer Email Addresses do not match\n";

	if (form.elements['LicCdKey'].value=="") errormsg+="- CD Key\n";
	if (form.elements['LicMachineKey'].value=="") errormsg+="- Machine ID\n";
	if (form.elements['LicSiteId'].value=="") errormsg+="- Site ID\n";
	
	if (errormsg=="") return true;
	else {
		alert("You have left the following fields blank\n\n"+errormsg);
		return false;
	}
}

function checkRenewKey(form) {
	var errormsg="";
	var intstring="Please use international format (+xx xxxx xxxx xxxx), eg +64 9 476 7124 or +1 514 648 6648\n";

	if (form.elements['RenewalExpiration'].value=="") errormsg+="- Renewal Period is empty\n";
	if (form.elements['txtRegSiteId'].value=="") errormsg+="- Site ID is empty\n";
	if (form.elements['txtRegSiteName'].value=="") errormsg+="- Site Name is empty\n";
	if (form.elements['txtRegSiteAddress'].value=="") errormsg+="- Site Address is empty\n";
	if (form.elements['txtRegSiteContact'].value=="") errormsg+="- Site Contact is empty\n";
	if (invalidEmail(form.elements['txtRegSiteEMail'].value)) errormsg+="- Site Email Address is invalid\n";
	if (invalidPhoneNumber(form.elements['txtRegSitePhone'].value)) errormsg+="- Site Phone Number is invalid. "+intstring;
	if ((form.elements['txtRegSiteFax'].value.length>0) && (invalidPhoneNumber(form.elements['txtRegSiteFax'].value))) errormsg+="- Site Fax Number is invalid. "+intstring;

	if (form.elements['txtRegInstallerName'].value=="") errormsg+="- Installer Company Name is empty\n";
	if (form.elements['txtRegInstallerAddress'].value=="") errormsg+="- Installer Company Address is empty\n";
	if (form.elements['txtRegInstallerContact'].value=="") errormsg+="- Installer Name is empty\n";
	if (invalidEmail(form.elements['txtRegInstallerEMail'].value)) errormsg+="- Installer Email Address is invalid\n";
	if (invalidPhoneNumber(form.elements['txtRegInstallerPhone'].value)) errormsg+="- Installer Phone Number is invalid. "+intstring;
	if ((form.elements['txtRegInstallerFax'].value.length>0) && (invalidPhoneNumber(form.elements['txtRegInstallerFax'].value))) errormsg+="- Installer Fax Number is invalid. "+intstring;

	if (errormsg=="") return true;
	else {
		alert("You have the following errors\n\n"+errormsg);
		return false;
	}
}

function checkCreateKey(form) {
	if (form.elements['AddAssignToUserId'].value=="") {
		alert("Please enter a name or email address");
		form.elements['AddAssignToUserName'].focus();
		return false;
	}
	else {
		if (confirm("Are you sure you want to create this CD Key?")) return true;
		else return false;
	}
}

function checkAssignUser(form) {
	if (form.elements['AddAssignToUserId'].value=="") {
		alert("Please enter a name or email address");
		form.elements['AddAssignToUserName'].focus();
		return false;
	}
	else return true;
}

function checkReminder(form) {
	if (invalidEmail(form.elements['LostEMail'].value)) {
		alert("Email address is invalid");
		form.elements['LostEMail'].focus();
		return false;
	}
	else if (form.elements['LostEMail'].value!=form.elements['LostEMail_c'].value) {
		alert("Email addresses do not match");
		form.elements['LostEMail_c'].focus();
		return false;
	}
	else return true;
}

function checkLogin(form) {
	if (invalidEmail(form.elements['LoginEmailAddress'].value)) {
		alert("Please enter a valid email address");
		form.elements['LoginEmailAddress'].focus();
		return false;
	}
	else if ((form.elements['LoginPassword'].value=="") || (invalidInput(form.elements['LoginPassword'].value))) {
		alert("Please enter your password");
		form.elements['LoginPassword'].value="";
		form.elements['LoginPassword'].focus();
		return false;
	}
	else return true;
}

function checkSupport(form) {
	if (form.elements['Code'].value.length!=6) {
		alert("Please enter your 6-digit PIN code");
		form.elements['Code'].focus();
		return false;
	}
	else return true;
}

function checkKB(form) {
	var errormsg="";
	if (form.elements['title'].value.length<10) errormsg+="\n- Title";
	if (form.elements['summary'].value.length<10) errormsg+="\n- Summary";
	if (form.elements['details'].value.length<10) errormsg+="\n- Details";
	if (form.elements['date'].value.length<10) errormsg+="\n- Date";
	if (form.elements['appliesto'].value.length<2) errormsg+="\n- Applies To";
	if (form.elements['location'].value.length<10) errormsg+="\n- Location";
	if (form.elements['version'].value=="") errormsg+="\n- Version";
	if (form.elements['author'].value.length<5) errormsg+="\n- Author";
	if (form.elements['relateddocs'].value=="") errormsg+="\n- Related Documents";
	if (errormsg=="") {
		if (form.elements['title'].value.match("&")) {
			alert("Please remove the & from the title, as this will cause problems with the RSS feed");
			return false;
		}
		else if (form.elements['summary'].value.match("&")) {
			alert("Please remove the & from the summary, as this will cause problems with the RSS feed");
			return false;
		}
		else if (form.elements['details'].value.match("&")) {
			alert("Please remove the & from the description, as this will cause problems with the RSS feed");
			return false;
		}
		else return true;
	}
	else {
		alert("You have left the following fields empty:\n"+errormsg);
		return false;
	}
}

function checkBlog(form) {
	var errormsg="";
	if (form.elements['title'].value.length<10) errormsg+="\n- Title";
	if (form.elements['details'].value.length<10) errormsg+="\n- Details";
	if (form.elements['date'].value.length<10) errormsg+="\n- Date";
	if (form.elements['author'].value.length<5) errormsg+="\n- Author";
	if (form.elements['visibility'].value=="") errormsg+="\n- Visibility";
	if (form.elements['location'].value.length<5) errormsg+="\n- Location";
	if (errormsg=="") {
		if (form.elements['title'].value.match("&")) {
			alert("Please remove the & from the title, as this will cause problems with the RSS feed");
			return false;
		}
		else if (form.elements['details'].value.match("&")) {
			alert("Please remove the & from the description, as this will cause problems with the RSS feed");
			return false;
		}
		else return true;
	}
	else {
		alert("You have left the following fields empty:\n"+errormsg);
		return false;
	}
}

function checkSearch(form) {
	if (form.elements['searchstr'].value.length<3) return false;
	else return true;
}

function checkImageUpload(form) {
	if (form.elements['filename'].value=="") {
		alert("Please select an image");
		form.elements['filename'].focus();
		return false;
	}
	else if (form.elements['title'].value=="") {
		alert("Please enter a title");
		form.elements['title'].focus();
		return false;
	}
	else return true;
}

function checkDelegateImageUpload(form) {
	if (form.elements['filename'].value=="") {
		alert("Please select an image");
		form.elements['filename'].focus();
		return false;
	}
	else if (form.elements['UserId'].value=="") {
		alert("Please select a user");
		form.elements['UserId'].focus();
		return false;
	}
	else return true;
}

function checkConfirm(str) {
	if (confirm("Are you sure that you want to "+str)) return true;
	else return false;
}

function checkKeyOrder(form) {
	if (form.elements['po_number'].value.length<3) {
		alert("Please enter a valid PO number");
		form.elements['po_number'].focus();
		return false;
	}
	else {
		if (confirm("Are you sure you want to place this order?")) return true;
		else return false;
	}
}

function updateKeyOrder(form) {
	if (form.elements['type_id'].value==3) {
		form.elements['cd_key'].disabled=false;
		document.getElementById('cd_key_input').style.color="black";
		form.elements['edition_id'].disabled=true;
		document.getElementById('edition_id_input').style.color="#c0c0c0";
		document.getElementById('edition_text').innerHTML="Software Edition:";
	}
	else if  (form.elements['type_id'].value==4) {
		form.elements['cd_key'].disabled=false;
		document.getElementById('cd_key_input').style.color="black";
		form.elements['edition_id'].disabled=false;
		document.getElementById('edition_id_input').style.color="black";
		document.getElementById('edition_text').innerHTML="Upgrade To:";
		form.elements['quantity'].disabled=true;
		document.getElementById('quantity_id').style.color="#c0c0c0";
	}
	else {
		form.elements['cd_key'].value="";
		form.elements['cd_key'].disabled=true;
		document.getElementById('cd_key_input').style.color="#c0c0c0";
		form.elements['edition_id'].disabled=false;
		document.getElementById('edition_id_input').style.color="black";
		document.getElementById('edition_text').innerHTML="Software Edition:";
		form.elements['quantity'].disabled=false;
		document.getElementById('quantity_id').style.color="black";
	}
}

function checkCompleteOrder(form) {
	count=0;
	for (i=0; i<form.length; i++) if (form[i].checked==true) count++;
	if (count==0) {
		alert("No orders selected. Please select the closed orders, then press confirm");
		return false;
	}
	else {
		if (count==1) str="Are you sure you want to complete this order?";
		else str="Are you sure you want to complete these "+count+" orders?";
		if (confirm(str)) return true;
		else return false;
	}
}

function checkRMA(form) {
	if (form.elements['ProductId'].value=="") {
		alert("Please select a product");
		form.elements['ProductId'].focus();
		return false;
	}
	else if (form.elements['SerialNumber'].value=="") {
		alert("Please enter the product serial number");
		form.elements['SerialNumber'].focus();
		return false;
	}
	else if (form.elements['Description'].value=="") {
		alert("Please enter a description of the fault");
		form.elements['Description'].focus();
		return false;
	}
	else return true;
}

function checkTrainingEvent(form) {
	if (form.elements['Date'].value=="") {
		alert("Please enter the date, eg 10th April 2010 14:30");
		form.elements['Date'].focus();
		return false;
	}
	else if (form.elements['Duration'].value=="") {
		alert("Please enter the course duration");
		form.elements['Duration'].focus();
		return false;
	}
	else if (form.elements['Address1'].value=="") {
		alert("Please enter the address");
		form.elements['Address1'].focus();
		return false;
	}
	else if (form.elements['Location'].value=="") {
		alert("Please enter the location");
		form.elements['Location'].focus();
		return false;
	}
	else if (form.elements['CountryId'].value=="") {
		alert("Please select a country");
		form.elements['CountryId'].focus();
		return false;
	}
	else if (form.elements['Cost'].value=="") {
		alert("Please enter the cost");
		form.elements['Cost'].focus();
		return false;
	}
	else if (form.elements['MinSize'].value=="") {
		alert("Please enter the minimum class size");
		form.elements['MinSize'].focus();
		return false;
	}
	else if (form.elements['MaxSize'].value=="") {
		alert("Please enter the maximum class size");
		form.elements['MaxSize'].focus();
		return false;
	}
	else return true;
}

function checkDeleteKey(id) {
	if (confirm("Are you sure you want to delete this key?")) window.location="cmr.php?mId=1&pId=3363&nmId=494&KeyId="+id+"&action=delete";
	else return false;
}

function ConfirmMassMail(form) {
	if (form.elements['Code'].value=="") {
		alert("Please select a country");
		form.elements['Code'].focus();
		return false;
	}
	else if (form.elements['UserType'].value=="") {
		alert("Please select a user type");
		form.elements['UserType'].focus();
		return false;
	}
	else if (form.elements['Subject'].value=="") {
		alert("Please enter the email subject");
		form.elements['Subject'].focus();
		return false;
	}
	else if (form.elements['Body'].value=="") {
		alert("Please enter the email body");
		form.elements['Body'].focus();
		return false;
	}
	else if (form.elements['Filename'].value=="") {
		alert("Please select a PDF");
		form.elements['Filename'].focus();
		return false;
	}
	else {
		if (confirm("Are you sure you want to continue?")) return true;
		else return false;
	}
}

function doubleCheck(num) {
	if (confirm("Are you sure you want to send this email to "+num+" users?")) return true;
	else return false;
}

function tripleCheck(form) {
	if (form.elements['ConfirmBox'].checked==false) {
		alert("Please confirm that this email is correct");
		return false;
	}
	else if (confirm("Are you sure you want to send this email to "+form.elements['NumUsers'].value+" users?")) return true;
	else return false;
}

function checkExamQuestion(form) {
	answer=0;
	for (i=0; i<form.elements['MultipleChoiceAnswer'].length; i++) {
		if (form.elements['MultipleChoiceAnswer'][i].checked) answer=form.elements['MultipleChoiceAnswer'][i].value;
	}

	if (form.elements['Question'].value.length<10) {
		alert("Please enter the Question");
		form.elements['Question'].focus();
		return false;
	}
	else if (form.elements['QuestionType'].value=="M") {
		if (form.elements['Option1'].value=="") {
			alert("Please enter Answer 1");
			form.elements['Option1'].focus();
			return false;
		}
		else if (form.elements['Option2'].value=="") {
			alert("Please enter Answer 2");
			form.elements['Option2'].focus();
			return false;
		}
		else if (form.elements['Option3'].value=="") {
			alert("Please enter Answer 3");
			form.elements['Option3'].focus();
			return false;
		}
		else if (form.elements['Option4'].value=="") {
			alert("Please enter Answer 4");
			form.elements['Option4'].focus();
			return false;
		}
		else if (answer==0) {
			alert("Please select the correct answer");
			return false;
		}
		else if (form.elements['CourseId'].value=="") {
			alert("Please select the course");
			form.elements['CourseId'].focus();
			return false;
		}
		else return true;
	}
	else {
		if (form.elements['TextAnswer'].value=="") {
			alert("Please enter a specimen answer");
			form.elements['TextAnswer'].focus();
			return false;
		}
		return true;
	}
}

function updateMultipleOptions(form) {
	if (form.elements['QuestionType'].value=="T") {
		document.getElementById('MultipleOptions').style.display="none";
		document.getElementById('TextOptions').style.display="block";
	}
	else {
		document.getElementById('MultipleOptions').style.display="block";
		document.getElementById('TextOptions').style.display="none";
	}
}

function checkTrainingCourse(form) {
	if (form.elements['Title'].value=="") {
		alert("Please enter the course title");
		form.elements['Title'].focus();
		return false;
	}
	else if (form.elements['RequiredLevel'].value=="0") {
		alert("Please select the minimum PSI level for the course trainer");
		form.elements['RequiredLevel'].focus();
		return false;
	}
	else if (form.elements['Online'].value=="Y") {
		if (form.elements['Duration'].value=="") {
			alert("Please enter the duration of the online exam");
			form.elements['Duration'].focus();
			return false;
		}
		else if (form.elements['PassMark'].value=="") {
			alert("Please enter the pass mark for the online exam");
			form.elements['PassMark'].focus();
			return false;
		}
		else return true;
	}
	else return true;
}

function checkRegisterInterest(form) {
	if (form.elements['courseid'].value=="") {
		alert("Please select the training course you are interested in attending");
		form.elements['courseid'].focus();
		return false;
	}
	else if (form.elements['countryid'].value=="") {
		alert("Please select your country");
		form.elements['countryid'].focus();
		return false;
	}
	else if (form.elements['area'].value=="") {
		alert("Please enter your area");
		form.elements['area'].focus();
		return false;
	}
	else if (form.elements['eventdate'].value=="") {
		alert("Please enter your preferred date");
		form.elements['eventdate'].focus();
		return false;
	}
	else return true;
}

function checkInterestList(form) {
	count=0;
	for (i=0; i<form.length; i++) if (form[i].checked==true) count++;
	if (count==0) {
		alert("Please select the rows you would like to remove, then press delete");
		return false;
	}
	else {
		if (count==1) str="Are you sure you want to remove this user from the list?";
		else str="Are you sure you want to remove these "+count+" users from the list?";
		if (confirm(str)) return true;
		else return false;
	}
}

function ConfirmFirmwareUpload(form) {
	if (form.elements['filename'].value=="") {
		alert("Please select the firmware file to upload");
		form.elements['filename'].focus();
		return false;
	}
	else {
		if (confirm("Are you sure you want to delete the current firmware file and upload this one?")) return true;
		else return false;
	}
}

function checkCourseId(form) {
	if (form.elements['CourseId'].value=="") {
		alert("Please select the course");
		form.elements['CourseId'].focus();
		return false;
	}
	else {
		if (confirm("Are you sure you want to trigger this exam?")) return true;
		else return false;
	}
}

function checkFeedback(form) {
	if (form.elements['feedbackname'].value.length<3) {
		alert("Please enter your name");
		form.elements['feedbackname'].focus();
		return false;
	}
	else if ((form.elements['feedbackemail'].value=="") && (form.elements['feedbackphone'].value=="")) {
		alert("Please enter an email address or a phone number");
		form.elements['feedbackemail'].focus();
		return false;
	}
	else if ((form.elements['feedbackemail'].value!="") && (invalidEmail(form.elements['feedbackemail'].value))) {
		alert("Please enter a valid email address");
		form.elements['feedbackemail'].focus();
		return false;
	}
	else if (form.elements['feedbackcomments'].value.length<10) {
		alert("Please enter your comments");
		form.elements['feedbackcomments'].focus();
		return false;
	}
	else if (form.elements['secans'].value=="") {
		alert("Please answer the security question");
		form.elements['secans'].focus();
		return false;
	}
	else return true;
}

function checkComments(form) {
	if (form.comments.value.length<10) return false;
	else return true;
}
