
	keys = {				
				BACKSPACE:8,
				RETURN:13,
				DELETE:46,
				ESCAPE:27,
				DOWN:40,
				UP:38,
				TAB:9,
				RIGHT:39,
				LEFT:37,
				SPACE:32
		}
        
			function createForm(f)
			{
                f.submitCallback = "realSubmit";
				f.REQUEST_URL = PATH.ajax + "job_requests.php";
				f.container = document.getElementById("formContainer");
				
				
				f.fixSubmission = function()
				{

					for(index in this.elements)
					{
						if(
							(this.elements[index])&&
							(
								(this.elements[index].type == "text")||
								(this.elements[index].type == "password")
							)
						)
						{
							
							var element = this.elements[index];
							
							
							$(element).keypress(function (e) {
								switch(e.which)
								{
									case keys.RETURN:
										return false;
									break;
								}
							});
							
							$(element).keypress(function (e) {
								switch(e.which)
								{
									case keys.RETURN:
										return false;
									break;
								}
							});
	
							$(element).keypress(function (e) {
								switch(e.which)
								{
									case keys.RETURN:
										this.form.submit();	
										return false;
									break;
									default:
									break;
								}
							});
						}
					}
					
				}
					
				f.init=function()
				{

					this.fixSubmission();
				}
				
				f.realSubmit =function(data)
				{

					if(data.valid)
					{
						this.container.innerHTML = data.tpl;
						var form = createForm(document.forms[data.formname]);
					}
					else
					{
						$(this).find(".errorMsg").text(data.error);
					}
					
				}
				
				f.onsubmit = function()
				{
					var myValidator = new Validator(this);
                                        if (document.getElementById('finalizequoterequest')){
                                           document.getElementById('requestquote').disabled = true;
                                           document.getElementById('requestquote').style.display = 'none';
                                        }
					try
					{
						if(myValidator.validate() > 0)
							return false;
					}
					catch(e)
					{
						alert(e.message);
					}
						
						
					return true;
					
						
					/*
					var request = new AjaxRequest(this.REQUEST_URL,{object:this,method:this.submitCallback},this.requestElements());
					request.makeRequest();				
					*/

				}
				
				f.requestElements = function()
				{
					var data = new Array();
					
					
					for(j=0;j<this.elements.length;j++)
					{
						switch(this.elements[j].type)
						{
							case "select-one":
                    			data[this.elements[j].name] = this.elements[j].options[this.elements[j].selectedIndex].value
							break;
							case "checkbox":
							case "radio":
								data[this.elements[j].name] = (this.elements[j].checked==true?this.elements[j].value:0);
							break;
							default:
								data[this.elements[j].name] = this.elements[j].value;
						}
					}
					
					return data;
				}
				
				return f;
		}


		





