
function submitRegistration(action) {
	var form = window.document.register;

	if (action == "new") form.action.value= 'saveRegistration';
	if (action == "edit") form.action.value= 'saveEditRegistration';
	form.sys_category.value = "Registration";
	form.sys_sub_category.value = "Registration";
	form.sys_title.value = "Details Saved";
	if (validateRegistration()) form.submit();
}

function cancelRegistration() {
	var form = window.document.register;
	form.action.value= 'cancelRegistration';
	form.sys_sub_category.value = "Registration";
	form.sys_title.value = "Details Cancelled";
	form.submit();
}

function cancelLogin() {
	var form = window.document.login;
	form.action.value= 'cancelLogin';
	form.submit();
}

function submitLogin() {
	var form = window.document.login;
	form.action.value= 'loginAccount';
	if (validateLogin()) form.submit();
}

function submitLogout() {
	var form = window.document.displayProduct;
	form.action.value= 'logoutAccount';
	form.submit();
}

function submitPassword() {
	var form = window.document.login;
	form.action.value= 'changePassword';
	form.sys_category.value = "System Templates";
	form.sys_sub_category.value = "Passwords";
	form.sys_title.value = "Details Saved";
	form.submit();
}

function cancelPassword() {
	var form = window.document.login;
	form.action.value= 'cancelPassword';
	form.sys_category.value = "System Templates";
	form.sys_sub_category.value = "Passwords";
	form.sys_title.value = "Details Cancelled";
	form.submit();
}



function validateLogin(action) {

	var form = window.document.login;
	form.frm_email.style.backgroundColor = '#ffffff';
	if (!validateObject(form.frm_email)) return false;
	if (!isEmail(form.frm_email.value)) {
		form.frm_email.style.backgroundColor = '#e0d4bc';
		form.frm_email.focus();
		confirm("Please enter a valid user id.");
		return false;
	}
	if (!validateObject(form.frm_password)) return false;

	return true;
}


function validateRegistration(action) {

	var form = window.document.register;
	form.frm_email.style.backgroundColor = '#ffffff';
	if (!validateObject(form.frm_email)) return false;
	if (!isEmail(form.frm_email.value)) {
		form.frm_email.style.backgroundColor = '#e0d4bc';
		form.frm_email.focus();
		confirm("Please enter a valid email address.");
		return false;
	}
	if (!validateObject(form.frm_password)) return false;
	if (!validateObject(form.frm_confirm_password)) return false;
	if (form.frm_password.value != form.frm_confirm_password.value) {
		form.frm_password.style.backgroundColor = '#e0d4bc';
		form.frm_password.focus();
		confirm("Passwords do not match, please re-enter.");
		return false;
	}

	if (!validateObject(form.frm_firstname)) return false;
	if (!validateObject(form.frm_surname)) return false;	

	return true;
}



function isEmail(str) {
  // are regular expressions supported?
  var supported = 0;
  if (window.RegExp) {
    var tempStr = "a";
    var tempReg = new RegExp(tempStr);
    if (tempReg.test(tempStr)) supported = 1;
  }
  if (!supported)
    return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
  return (!r1.test(str) && r2.test(str));
}

function validateObject(control) {
	control.style.backgroundColor = '#ffffff';
	if (control.value == '') {
		control.style.backgroundColor = '#e0d4bc';
		control.focus();
		confirm("Please fill in all mandatory fields, which are highlighted.");
		return false;
	}
    return true;
}
