var screenS = Class.create();screenS.prototype = {	initialize: function () {			this.sessionId = "";		this.login = false;		this.signUpUrl = "http://bradsacks.com/userSignup.php";		this.signUpScrnUrl = "http://bradsacks.com/userSignupScrn.php";		this.errorLogUrl = "http://bradsacks.com/logErrors.php";	},		checkemail: function(evt) {		var results = false;		var email = Event.element(evt).value;		var regexp  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;		if (regexp.test(email)) {			var results = true;		} else {			Field.activate($(Event.element(evt).id));			//new msg("Invalid date!", Event.element(evt).id, msg.PRIORITY_VALIDATE);		}		return results	},			checkLogin: function() {		var params = "action=checkLogin";		ajaxRequest = new Ajax.Request(				"http://bradsacks.com/userSignup.php",				{					method: 'post',  					parameters: params,					onComplete: this.confirmLogin.bind(this)				}		);	},		confirmLogin: function(originalRequest) {		var response = eval('(' + originalRequest.responseText + ')');		if (response.name == "login" && unescape(response.value) != "false") {			this.sessionId = unescape(response.value);			this.login = true;			this.toggleScreen();		} else {			this.setLoginEvents();			}			},		setLoginEvents: function() {		Event.observe('loginsubmit', 'mouseup', (			function(evt) {				this.userLogin();			}   		).bindAsEventListener(this));					Event.observe('loginsubmit', 'keydown', (			function(evt) {				if (Event.checkChar(evt, Event.keyReturn)) {					this.userLogin();				}			}   		).bindAsEventListener(this));			Event.observe('loginreset', 'mouseup', (			function(evt) {				this.resetForm();			}   		).bindAsEventListener(this));					Event.observe('loginreset', 'keydown', (			function(evt) {				if (Event.checkChar(evt, Event.keyReturn)) {					this.resetForm();				}			}   		).bindAsEventListener(this));		},			globalEvents: function() {				Event.observe('createuserLink', 'mouseup', (			function(evt) {				window.location = this.signUpScrnUrl;			}   		).bindAsEventListener(this));					Event.observe('createuserLink', 'keydown', (			function(evt) {				if (Event.checkChar(evt, Event.keyReturn)) {					window.location = this.signUpScrnUrl;				}			}   		).bindAsEventListener(this));		},		userLogin: function() {		this.action = "login";		var params = eval ('(' + this.getPostParams('login') + ')');		ajaxRequest = new Ajax.Request(				this.signUpUrl, 				{					method: 'post',  					parameters: params,					onComplete: this.confirmUserLogin.bind(this)				}		);	},		confirmUserLogin: function(originalRequest) {		var response = eval('(' + originalRequest.responseText + ')');		if (response.name == "login") {			this.sessionId = unescape(response.value);			this.login = true;			this.toggleScreen();		} else {			alert(unescape(response.value));			}		},		resetForm: function() {		var myFields = document.getElementsByClassName("field");		for (var i = 0; i < myFields.length; i++) {			myFields[i].value = "";			myFields[i].style.background = "#FFFFFF";		}	},			getPostParams: function(parentId) {		var results = "{action:'" + this.action + "',";		var myFields = document.getElementsByClassName("field");		for (var i = 0; i < myFields.length; i++) {			if (myFields[i].parentNode.parentNode.id != parentId) continue;			var nameVar = myFields[i].id;			var valueVar = myFields[i].value;			results += nameVar + ": '" + valueVar + "'";			if (i + 1 != myFields.length) results += ", "; 		}		results += "}";		return results;		}}// String object extensionsObject.extend(String.prototype, {		});// Event object extensionsObject.extend(Event, {	keyBackspace:  8,	keyTab:        9,	keyReturn:    13,	keyEsc:       27,	keyLeft:      37,	keyUp:        38,	keyRight:     39,	keyDown:      40,	keyInsert:    45,  	keyDelete:    46,	keyF1:       112,    	keyF2:       113,  	keyF12:      123,    	keyPageUp:    33,    	keyPageUp:    34,    	keyHome:      36,	keyEnd:       35,  		checkChar: function (evt, checkChar) {		results = false;		var chrCode = (evt.which) ? evt.which : evt.keyCode;			if (checkChar == chrCode) {			results = true;		}		return results;	}});var errorHandler = Class.create();errorHandler.prototype = {		logErrors: function(message, script, lineNumber) {		//send error to server		params = "message=" + escape(message) + "&script=" + escape(script) + "&lineNumber=" + escape(lineNumber);		ajaxRequest = new Ajax.Request(			this.errorLogUrl, 			{				method: 'get',  				parameters: params			}		);	},	displayErrorMessage: function(message, script, lineNumber) {		 alert(				  'JavaScript error occurred: \n'				 +'\nError: \t'+message				 +'\nScript:      \t'+script				 +'\nLine number:       \t'+lineNumber			   );		return true;	}}var handleErrors = new errorHandler();window.onerror = function (message, script, lineNumber) {	return handleErrors.displayErrorMessage(emessage, script, lineNumber);}
