/*
NB - this requires FormHelper.js from _hbi and HBI.js from _hbi
*/
var sReaderNumberString	= "Reader Code";
var sRTPINumberString	= "RTPI member No.";

ActivateValidation					= {
	
	init:function() {
		if(!document.getElementById||!document.createTextNode){return;}
		var eForm								= document.getElementById('frmActivate');
		var eFindReaderNumber					= document.getElementById('lnkFindReaderNumber');
		var eFindReaderNumberAlt				= document.getElementById('lnkFindReaderNumberAlt');
		var eFindReaderNumberLayer				= new JsLayer(document.getElementById('lyrFindReaderNumber'));
		
		var eReaderNumber						= document.getElementById('nReaderNumber');
		var eRTPINumber							= document.getElementById('nRTPINumber');
		var eFirstName							= document.getElementById('sFirstName');
		
		if (eForm) {
			eForm.onsubmit						= function() {return ActivateValidation.validate();}
		}
		
		if (eFindReaderNumber) {
			eFindReaderNumber.onclick			= function() {eFindReaderNumberLayer.display(); return false;}
		}
		if (eFindReaderNumberAlt) {
			eFindReaderNumberAlt.onclick		= function() {eFindReaderNumberLayer.display(); return false;}
		}
		
		
		// fill in titles for column activation page
		if (eReaderNumber && !eFirstName) {
			eReaderNumber.value					= sReaderNumberString;
			eReaderNumber.onclick				= function() {if (eReaderNumber.value == sReaderNumberString) {eReaderNumber.value = '';}}
		}
		if (eRTPINumber && !eFirstName) {
			eRTPINumber.value					= sRTPINumberString;
			eRTPINumber.onclick					= function() {if (eRTPINumber.value == sRTPINumberString) {eRTPINumber.value = '';}}
		}
	},
	
	validate:function() {
		var eReaderNumber						= document.getElementById('nReaderNumber');
		var eRTPINumber							= document.getElementById('nRTPINumber');
		var eReaderNumberHelper					= document.getElementById('nReaderNumberHelper');
		
		var isValidForm							= true;
		
		// clear message
		eReaderNumberHelper.innerHTML			= "";
		eReaderNumberHelper.className			= "frmError";
		
		if (eReaderNumber.value == sReaderNumberString) {
			eReaderNumber.value					= "";
		}
		if (eRTPINumber.value == sRTPINumberString) {
			eRTPINumber.value					= "";
		}
		
		if (!FormHelper.hasValue(eReaderNumber.value, true) && !FormHelper.hasValue(eRTPINumber.value, true)) {
			eReaderNumberHelper.innerHTML		= "You must enter either your Reader code or your RTPI member number";
			eReaderNumberHelper.className		= "frmErrorActive";
			isValidForm							= false;
		} else if (FormHelper.hasValue(eReaderNumber.value, true) && FormHelper.hasValue(eRTPINumber.value, true)) {
			eReaderNumberHelper.innerHTML		= "Enter either your Reader code or your RTPI member number, not both";
			eReaderNumberHelper.className		= "frmErrorActive";
			isValidForm							= false;
		} else if (FormHelper.hasValue(eReaderNumber.value, true) && !ActivateValidation.validReaderNumber(eReaderNumber.value)) {
			eReaderNumberHelper.innerHTML		= "You must enter a valid reader number.";
			eReaderNumberHelper.className		= "frmErrorActive";
			isValidForm							= false;
		}
		
		return isValidForm;
	},
	
	validReaderNumber:function(sReaderNumber){
		var format = /^[A-Z|a-z][\d]{6}$/;
  		return format.test(sReaderNumber);
	}
}
WindowListener.add("load","ActivateValidation.init()");