/* jsForm 24-Jan-12 Copyright (c)2004-12 NelsonCroom */
function loggedOut(Msg) {
		var sElm = 'loginMsg'
		if (document.getElementById(sElm)) {
			oElm = document.getElementById(sElm);
			oElm.innerHTML="<div style='min-width:160px;min-height:15px;background:yellow;padding:5px;border:solid 1px #999999;margin-bottom:15px'>You are currently logged out</div>"+oElm.innerHTML;
		}
}
function onloadGate(Mode) {
	if (Mode == 1) {
		if (document.getElementById('PW')) {
			if (document.getElementById('loginPW')) {
				document.getElementById('loginPW').style.display='block';
			}
			document.getElementById('PW').focus();};
			return
		}
	if (document.getElementById('UsernameInput')){
		var oInp = document.getElementById('UsernameInput')
		if (!oInp.style.display=='none'){
			oInp.focus();
		}
	}
}
function submitKeyForm() {
	var oFrm = document.getElementById('RegModReg')
	if (!document.getElementById("accKey1")) {
		oFrm.submit();
		return;
	}
	if (document.getElementById("accKey1").value == "") {
		alert("An Activation Key is required. (Please enter the code.)");
		document.getElementById("accKey1").focus();
		return;
	}
	else oFrm.submit();
}
function submitKeyFrm() {
	var oFrm = document.getElementById('RegModReg')
	if (!document.getElementById("accKey1")) {
		oFrm.submit();
		return;
	}
	if (document.getElementById("accKey1").value == "") {
		alert("An Activation Key is required for this programme. (Please enter the code.)");
		document.getElementById("accKey1").focus();
		return;
	}
	else oFrm.submit();
}
function submitLoginForm() {
	var oFrm = document.getElementById('RegModVal')
	var sUN = new String(oFrm.UN.value) ;
	var sPW = new String(oFrm.PW.value) ;
	if (sUN == "") {
		if (document.getElementById('loginUNerr')) {
			document.getElementById('loginUNerr').innerHTML='You must enter your username<br>(Please register if you do not have a username)';
		}
		else {
			alert("You must enter your username. (Please register first, if you have not done so.)");
		}
		oFrm.UN.style.backgroundColor = 'yellow';
		oFrm.UN.focus();
		return;
	}
	else if (sUN.length < 4) {
		if (document.getElementById('loginUNerr')) {
			document.getElementById('loginUNerr').innerHTML='Your username must be at least five characters long';
		}
		else {
			alert("Your username must be at least five characters. \n(Please register first, if you have not done so.)");
		}
		oFrm.UN.style.backgroundColor = 'yellow';
		oFrm.UN.focus();
		return;
	}
	else if (sPW == "") {
		if (document.getElementById('loginPWerr')) {
			document.getElementById('loginPWerr').innerHTML='You must enter your password';
			}
		else {
			alert("You must enter your password");
			}
		oFrm.PW.style.backgroundColor = 'yellow';
		oFrm.PW.focus();
		return;
	}
	else if (sPW.length < 3) {
		if (document.getElementById('loginPWerr')) {
			document.getElementById('loginPWerr').innerHTML="The password entered is too short.";
		}
		else {
			alert("The password entered is too short. " + sPW.value);
		}
		oFrm.PW.value = "";
		oFrm.PW.style.backgroundColor = 'yellow';
		oFrm.PW.focus();
		return;
	}
	else {
		oFrm.submit();
		}
}
function submitLoginEM() {
	var reMail = /^([a-zA-Z0-9_\.\-\'])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z])+$/; 
	var oFrm = document.getElementById('RegModVal');
	var sUN = new String(oFrm.UN.value);
	oFrm.M.value = 'M';
	if (sUN == "") {
		if (oFrm.loginUNerr) {
			oFrm.loginUNerr.innerHTML='You must enter your email address';
		}
		else {
			alert("You must enter your email address");
		}
		oFrm.UN.style.backgroundColor = 'yellow';
		oFrm.UN.focus();
		return false;
	}
	else if (!reMail.test(sUN)) {
		if (document.getElementById('loginUNerr')) {
			document.getElementById('loginUNerr').innerHTML='Your email address must be valid';
		}
		else {
			alert("Your email address must be valid.");
		}
		oFrm.UN.style.backgroundColor = 'yellow';
		oFrm.UN.focus();
		return false;
	}
	else {
		oFrm.submit();
		return false;
		}
}
function submitLoginImago() {
	var oFrm = document.getElementById('AdmLogin')
	var sUN = new String(oFrm.UsernameInput.value);
	var sPW = new String(oFrm.PW.value);
	var isOK = 1
	if (sUN == "") {
		if (document.getElementById('loginUNerr')) {
			document.getElementById('loginUNerr').innerHTML='You must enter your username<br>(Please register if you do not have a username)';
		}
		else {
			alert("You must enter your username. (Please register first, if you have not done so.)");
		}
		if (document.getElementById('loginUN')) {
			document.getElementById('loginUN').style.display='block';
		}
		oFrm.UsernameInput.style.backgroundColor = 'yellow';
		oFrm.UsernameInput.focus();
		isOK = 0;
	}
	else if (sUN.length < 4) {
		if (document.getElementById('loginUNerr')) {
			document.getElementById('loginUNerr').innerHTML='Your username must be at least five characters';
		}
		else {
			alert("Your username must be at least five characters. (Please register first, if you have not done so.)");
		}
		if (document.getElementById('loginUN')) {
			document.getElementById('loginUN').style.display='block';
		}
		oFrm.UsernameInput.style.backgroundColor = 'yellow';
		oFrm.UsernameInput.focus();
		isOK = 0;
	}
	if (sPW == "") {
		if (document.getElementById('loginPWerr')) {
			document.getElementById('loginPWerr').innerHTML='You must enter your password';
			}
		else {
			alert("You must enter your password");
			}
		if (document.getElementById('loginPW')) {
			document.getElementById('loginPW').style.display='block';
			}
		oFrm.PW.style.backgroundColor = 'yellow';
		if (sUN.length > 3) {
			oFrm.PW.focus();
			}
		isOK = 0;
	}
	else if (sPW.length < 3) {
		if (document.getElementById('loginPWerr')) {
			document.getElementById('loginPWerr').innerHTML="The password entered is too short. " + sPW.value;
		}
		else {
			alert("The password entered is too short. " + sPW.value);
		}
		if (document.getElementById('loginPW')) {
			document.getElementById('loginPW').style.display='block';
		}
		oFrm.PW.value = "";
		oFrm.PW.style.backgroundColor = 'yellow';
		if (sUN.length > 3) {
			oFrm.PW.focus();
			}
		isOK = 0;
	}
	if (isOK == 1) { oFrm.submit();	}
}
function submitQuestGate() {
	var frm = 'RegModReg'
	if (!(document.getElementById(frm))) {frm = 'regModReg'}
	if (!(document.getElementById(frm))) {return false}
	var oFrm = document.getElementById(frm)
	oFrm.submit();
}
function submitRegForm() {
	var re_mail = /^([a-zA-Z0-9_\.\-\'])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z])+$/; 
	var frm = 'RegModReg'
	if (!(document.getElementById(frm))) {frm = 'regModReg'}
	if (!(document.getElementById(frm))) {return false}
	var oFrm = document.getElementById(frm)
	var sUN = new String(document.getElementById('UN').value);
	var sPW = new String(document.getElementById('PW').value);
	var sEmail = new String(document.getElementById('Email').value);
	getRes(frm);
	
	if (sUN == "") {
		alert("You must specify a username (at least five characters long).");
		oFrm.UN.focus();
		return false;
	}
	else if (sUN.length < 5) {
		alert("Usernames must be at least five characters long.");
		oFrm.UN.focus();
		return false;
	}
	else if (sPW == "") {
		alert("A password must be specified.");
		oFrm.PW.focus();
		return false;
	}
	else if (sPW.length < 4) {
		alert("Your password should be at least four characters long.");
		oFrm.PW.value = "";
		oFrm.PW.focus();
		return false;
	}
	else if (sPW == sUN) {
		alert("For security reasons, your username must not be the same as your password. Please change your password (and re-enter the confirmation)");
		oFrm.PW.focus();
		return false;
	}
	else if (sPW == oFrm.FirstName.value) {
		alert("For security reasons, your password must not be the same as your first name. Please change your password (and re-enter the confirmation)");
		oFrm.PW.focus();
		return false;
	}
	else if (oFrm.Confirm.value == "") {
		alert("You must confirm your password. (Please retype your password in the 'Confirm your password' box.)");
		oFrm.Confirm.focus();
		return false;
	}
	else if (!re_mail.test(sEmail) && sEmail.length > 0) {
		alert("Please enter a valid email address (or leave the email box blank)");
		oFrm.Email.focus();
		return false;
	}
	else oFrm.submit();
}

function submitReg() {
	var re_mail = /^([a-zA-Z0-9_\.\-\'])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z])+$/; 
	var frm = 'RegModReg'
	if (!(document.getElementById(frm))) {return false}
	var oFrm = document.getElementById(frm)
	var sUN = new String(document.getElementById('UN').value);
	var sPW = new String(document.getElementById('PW').value);
	var sEmail = new String(document.getElementById('Email').value);
	getRes(frm);
	//if ((oFrm.res_box))	{oFrm.res_box.value=window.screen.width+' x '+window.screen.height;}
	
	return
	//NB: alerts cause problem on some browsers
	if (sUN == "") {
		alert("You must specify a username (at least five characters long).");
		oFrm.UN.focus();
		return false;
	}
	else if (sUN.length < 5) {
		alert("Usernames must be at least five characters long.");
		oFrm.UN.focus();
		return false;
	}
	else if (sPW == "") {
		alert("A password must be specified.");
		oFrm.PW.focus();
		return false;
	}
	else if (sPW.length < 4) {
		alert("Your password should be at least four characters long.");
		oFrm.PW.value = "";
		oFrm.PW.focus();
		return false;
	}
	else if (sPW == sUN) {
		alert("For security reasons, your username must not be the same as your password. Please change your password (and re-enter the confirmation)");
		oFrm.PW.focus();
		return false;
	}
	else if (sPW == oFrm.FirstName.value) {
		alert("For security reasons, your password must not be the same as your first name. Please change your password (and re-enter the confirmation)");
		oFrm.PW.focus();
		return false;
	}
	else if (oFrm.Confirm.value == "") {
		alert("You must confirm your password. (Please retype your password in the 'Confirm your password' box.)");
		oFrm.Confirm.focus();
		return false;
	}
	else if (!re_mail.test(sEmail) && sEmail.length > 0) {
		alert("Please enter a valid email address (or leave the email box blank)");
		oFrm.Email.focus();
		return false;
	}
}
function loginPWfocus(frm) {
	if (!(document.getElementById('PW'))) {return false}
	document.getElementById('PW').focus();
	}
function loginUNfocus(frm) {
	if (!(document.getElementById('UN'))) {return false}
	document.getElementById('UN').focus();
	}
function loginKeyfocus() {
	var oElm = document.getElementById('accKey1');
	if (oElm) {oElm.focus();}
	}
function registerMeAdm() {
	document.location.href='admLogin.asp?M=Reg';
	}
function registerMe() {
	document.location.href='register.asp?M=NF';
	}
function userSwitch() {
	if (document.getElementById('UsernameInput')) {
		var oInp = document.getElementById('UsernameInput');
		}
	else if (document.getElementById('UN')) {
		var oInp = document.getElementById('UN');
		}
	else {
		return false
	}
	oInp.value='';
	document.getElementById('PW').value='';
	document.getElementById('loginProf').style.display='none';
	document.getElementById('loginPW').style.display='block';
	document.getElementById('loginUN').style.display='block';
	if (document.getElementById('LoginForgot')) {document.getElementById('LoginForgot').style.display='block';};
	if (document.getElementById('LoginMsg')) {document.getElementById('LoginMsg').innerHTML='Please enter your details...';};
	oInp.focus();
	}
function ValidateUser() {validateUser();}
function validateUser() {
	var frm = 'RegModVal'
	var oFrm = document.getElementById(frm);	
	var oInp = document.getElementById('UN')
	var usern = oInp.value
	if (usern == "") {
		if (document.getElementById('loginUNerr')) {
			document.getElementById('loginUNerr').innerHTML='You must enter your username before your password hint can be displayed';
			}
		else {
			alert("You must enter your username before your password hint can be displayed.");
			}
		if (document.getElementById('loginUN')) {document.getElementById('loginUN').style.display='block';}
		oInp.style.background='yellow';
		oInp.focus();
		return;
		}
	oFrm.hint.value = "Y";
	if (document.getElementById('loginMsg')) {document.getElementById('loginMsg').style.color="#CCCCCC";}
	if (document.getElementById('loginComment')) {document.getElementById('loginComment').innerHTML = "Welcome " + usern + "!";}
	oFrm.submit();	
	}
function ValidateUserAdm() {validateUserAdm();}
function validateUserAdm() {
	var frm = 'AdmLogin'
	if (!(document.getElementById(frm))) { return }
	var oFrm = document.getElementById(frm)
	var oInp = document.getElementById(frm).UsernameInput
	var usern = oInp.value
	if (usern == "") {
		if (document.getElementById('loginUNerr')) {
			document.getElementById('loginUNerr').innerHTML='You must enter your username before your password hint can be displayed';
			}
		else {
			alert("You must enter your username before your password hint can be displayed.");
			}
		if (document.getElementById('loginUN')) {document.getElementById('loginUN').style.display='block';}
		oInp.style.background='yellow';
		oInp.focus();
		return;
		}
	oFrm.hint.value = "Y";
	oFrm.submit();	
	}
function validateEmail(email,msg,optional) { 
	if (!email.value && optional) { return true; } 
	var re_mail = /^([a-zA-Z0-9_\.\-\'])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z])+$/; 
	if (!re_mail.test(email.value)) { 
		alert(msg); 
		email.focus(); 
		email.select(); 
		return false; 
	} 
	return true; 
}

