  var max_textarea_length = 250;
  
  function textarea_onkeydown(e) {
	keyPressed = event.keyCode;
	textLength = window.event.srcElement.value.length;
	fieldName = window.event.srcElement.name;

	if (textLength == max_textarea_length && 
		 (
		  (keyPressed > 47 && keyPressed != 127) || 
		   keyPressed == 32
		 )
	   ) {
		
		if(fieldName == "DETAILS") {
			alert(DWQ33);
		} 

		if(fieldName == "CVINFO") {
			alert(DWQ37);
		}
				
		if(fieldName == "FININFO") {
			alert(DWQ38);
		}
		
		return false;
	} 
  }

  function textarea_verify(e) {
	textLength = window.event.srcElement.value.length;
	fieldName = window.event.srcElement.name;

	if (textLength > max_textarea_length) {
		if(fieldName == "DETAILS") {
			alert(DWQ33);
		} 

		if(fieldName == "CVINFO") {
			alert(DWQ37);
		}
				
		if(fieldName == "FININFO") {
			alert(DWQ38);
		}
			
		window.event.srcElement.focus();
	}
  }
  
  function  setSelect(listobj, choice) {
    for (x = 0; x < listobj.length; x++) {
        if (listobj.options[x].value == choice){
            listobj.options[x].selected = true;
            return true;
        }
    }
 	return false;
  }

  // return an empty string if none are checked, or
  // there are no radio buttons
  function getCheckedValue(radioObj) {  
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
  }
  
  function editCommonFields(theForm) {
/**
	if (theForm.DETAILS.value.length > 250) {
		showEditError(DWQ33,theForm.DETAILS);
		return false;
	}
**/

	if (fieldIsBlank(theForm.FNAME)) {
	  	showEditError(DWQ01,theForm.FNAME);
		return false;
	}
	
	if (theForm.FNAME.value.length > 30) {
		showEditError(DWQ27,theForm.FNAME);
		return false;
	}

	if (fieldIsBlank(theForm.LNAME)) {
	  	showEditError(DWQ02,theForm.LNAME);
		return false;
	}

	if (theForm.LNAME.value.length > 30) {
		showEditError(DWQ29,theForm.LNAME);
		return false;
	}

	if (fieldIsBlank(theForm.EMAIL)) {
	  	showEditError(DWQ11,theForm.EMAIL);
		return false;
	}
	
	if (!(validEmail(theForm.EMAIL.value))) {
	  	showEditError(DWQ21,theForm.EMAIL);
		return false;
	}
	
	if (theForm.EMAIL.value.length > 100) {
	  	showEditError(DWQ21,theForm.EMAIL);
		return false;
	}	
	if (fieldIsBlank(theForm.POSTAL)) {
	  	showEditError(DWQ06,theForm.POSTAL);
		return false;
	}

	if (!isPostalCode(theForm.POSTAL)) {
	  	showEditError(DWQ22,theForm.POSTAL);
		return false;
	}

	if (getCheckedValue(theForm.elements['PCONTACT']) == "HP") {
		if (fieldIsNaN(theForm.HPAREA,3)) {
			if(fieldIsBlank(theForm.HPAREA)) {
			  	showEditError(DWQ07,theForm.HPAREA);
			} else {
			  	showEditError(DWQ73,theForm.HPAREA);
			}
			return false;
		}

		if (fieldIsNaN(theForm.HPEXC,3)) {
			if(fieldIsBlank(theForm.HPEXC)) {
			  	showEditError(DWQ08,theForm.HPEXC);
			} else {
			  	showEditError(DWQ23,theForm.HPEXC);
			}
			return false;
		}

		if (fieldIsNaN(theForm.HPEXT,4)) {
			if(fieldIsBlank(theForm.HPEXT)) {
			  	showEditError(DWQ08,theForm.HPEXT);
			} else {
			  	showEditError(DWQ23,theForm.HPEXT);
			}
		  	return false;
		}
	}

	if(!fieldIsBlank(theForm.HPAREA)) {
		if (fieldIsNaN(theForm.HPAREA,3)) {
		  	showEditError(DWQ73,theForm.HPAREA);
			return false;
		}
	}

	if(!fieldIsBlank(theForm.HPEXC)) {
		if (fieldIsNaN(theForm.HPEXC,3)) {
	  		showEditError(DWQ23,theForm.HPEXC);
			return false;
		}
	}

	if(!fieldIsBlank(theForm.HPEXT)) {
		if (fieldIsNaN(theForm.HPEXT,4)) {
		  	showEditError(DWQ23,theForm.HPEXT);
		  	return false;
		}
	}

	if(!fieldIsBlank(theForm.HPAREA) && fieldIsNaN(theForm.HPEXC,3)) {
		showEditError(DWQ23,theForm.HPEXC);
	  	return false;
	}

	if(!fieldIsNaN(theForm.HPAREA,3) && !fieldIsNaN(theForm.HPEXC,3) && fieldIsNaN(theForm.HPEXT,4)) {
	  	showEditError(DWQ23,theForm.HPEXT);
	  	return false;
	}

	if(!fieldIsBlank(theForm.HPEXT) && fieldIsNaN(theForm.HPAREA,3)) {
		if(fieldIsBlank(theForm.HPAREA)) {
			showEditError(DWQ07,theForm.HPAREA);
		} else {
		  	showEditError(DWQ73,theForm.HPAREA);
		}
		return false;
	}
			
	if(!fieldIsBlank(theForm.HPEXC) && fieldIsNaN(theForm.HPAREA,3)) {
		if(fieldIsBlank(theForm.HPAREA)) {
			showEditError(DWQ07,theForm.HPAREA);
		} else {
		  	showEditError(DWQ73,theForm.HPAREA);
		}
		return false;
	}

	if (getCheckedValue(theForm.elements['PCONTACT']) == "WP") {
		if (fieldIsNaN(theForm.WPAREA,3)) {
			if(fieldIsBlank(theForm.WPAREA)) {
			  	showEditError(DWQ09,theForm.WPAREA);
			} else {
			  	showEditError(DWQ74,theForm.WPAREA);
			}
			return false;
		}

		if (fieldIsNaN(theForm.WPEXC,3)) {
			if(fieldIsBlank(theForm.WPEXC)) {		
			  	showEditError(DWQ10,theForm.WPEXC);
			} else {
			  	showEditError(DWQ24,theForm.WPEXC);
			}
		  	return false;
		}

		if (fieldIsNaN(theForm.WPEXT,4)) {
			if(fieldIsBlank(theForm.WPEXT)) {		
			  	showEditError(DWQ10,theForm.WPEXT);
			} else {
			  	showEditError(DWQ24,theForm.WPEXT);
			}
		  	return false;
		}
	}

	if(!fieldIsBlank(theForm.WPAREA)) {
		if (fieldIsNaN(theForm.WPAREA,3)) {
		  	showEditError(DWQ74,theForm.WPAREA);
			return false;
		}
	}

	if(!fieldIsBlank(theForm.WPEXC)) {
		if (fieldIsNaN(theForm.WPEXC,3)) {
	  		showEditError(DWQ24,theForm.WPEXC);
			return false;
		}
	}

	if(!fieldIsBlank(theForm.WPEXT)) {
		if (fieldIsNaN(theForm.WPEXT,4)) {
		  	showEditError(DWQ24,theForm.WPEXT);
		  	return false;
		}
	}
	
	if (isNaN(theForm.WPINTEXT.value) || theForm.WPINTEXT.value.length > 4) {
	  	showEditError(DWQ25,theForm.WPINTEXT);
	  	return false;
	}

	if(!fieldIsBlank(theForm.WPAREA) && fieldIsNaN(theForm.WPEXC,3)) {
	  	showEditError(DWQ24,theForm.WPEXC);
	  	return false;
	}

	if(!fieldIsNaN(theForm.WPAREA,3) && !fieldIsNaN(theForm.WPEXC,3) && fieldIsNaN(theForm.WPEXT,4)) {
	  	showEditError(DWQ24,theForm.WPEXC);
	  	return false;
	}

	if(!fieldIsBlank(theForm.WPEXT) > 0 && fieldIsNaN(theForm.WPAREA,3)) {
		if(fieldIsBlank(theForm.WPAREA)) {
			showEditError(DWQ09,theForm.WPAREA);
		} else {
		  	showEditError(DWQ74,theForm.WPAREA);
		}
		return false;
	}
			
	if(!fieldIsBlank(theForm.WPEXC) && fieldIsNaN(theForm.WPAREA,3)) {
		if(fieldIsBlank(theForm.WPAREA)) {
			showEditError(DWQ09,theForm.WPAREA);
		} else {
		  	showEditError(DWQ74,theForm.WPAREA);
		}
		return false;
	}

	if(!fieldIsBlank(theForm.WPINTEXT) && fieldIsNaN(theForm.WPAREA,3)) {
		if(fieldIsBlank(theForm.WPAREA)) {
			showEditError(DWQ09,theForm.WPAREA);
		} else {
		  	showEditError(DWQ74,theForm.WPAREA);
		}
		return false;
	}

	if(!fieldIsBlank(theForm.WPINTEXT) && fieldIsNaN(theForm.WPEXC,3)) {
		if(fieldIsBlank(theForm.WPEXC)) {
			showEditError(DWQ10,theForm.WPEXC);
		} else {
		  	showEditError(DWQ24,theForm.WPEXC);
		}
		return false;
	}
	
	if(!fieldIsBlank(theForm.WPINTEXT) && fieldIsNaN(theForm.WPEXT,4)) {
		if(fieldIsBlank(theForm.WPEXT)) {
			showEditError(DWQ10,theForm.WPEXT);
		} else {
		  	showEditError(DWQ24,theForm.WPEXT);
		}
		return false;
	}
	
	return true;
  }

   function editUsedFields(theForm) {

	if (theForm.MODEL) {
		if (fieldIsBlank(theForm.MODELDESC)) {
			alert(DWQ45);
			document.frames['usedveh'].focus();
			document.frames['usedveh'].document.getElementById('vehModYr').focus();
			return false;
		}
	}
	return true;
   }
   function editNewFields(theForm) {

	if (theForm.MODEL) {
		if (fieldIsBlank(theForm.MODELDESC)) {
			alert(DWQ45);
			document.frames['newVeh'].focus();
			document.frames['newVeh'].document.getElementById('vehModYr').focus();
			return false;
		}
	}
	return true;
   }

  function stripCommas(fieldvalue) {
		newsval = "";
		for (i = 0; i < fieldvalue.length; i++) {
			if (fieldvalue.charAt(i) != ',') {
			   newsval = newsval + fieldvalue.charAt(i);
			}
		}
		return newsval;
  }

  function validateOdometer(fieldref) {
	newsval = fieldref.value;
	if (isNaN(newsval)) {
		if (newsval.length > 3) {
			if (newsval.charAt(0) == ",") {
				showEditError(DWQ18,fieldref);
				return false;
			}	
			decallowed =  3;
			if (newsval.indexOf(',') == -1)
				newsval.value += ",";
				dectext = newsval.substring(newsval.indexOf(',')+1, newsval.length);
			if (dectext.length != decallowed){
				showEditError(DWQ18,fieldref);
				return false;		
			}
			else {
			    newsval = stripCommas(newsval);
	            	    if (isNaN(newsval)) {
	            		showEditError(DWQ18,fieldref);
	    			return false;
	            	    } else {
				if (newsval.length > 6) {
			            showEditError(DWQ18,fieldref);
	    			    return false;
			        } else {
				    return true;
				}
	            	    }	      	
			}
		} else {
		       	if (isNaN(newsval)) {
	            	    	showEditError(DWQ18,fieldref);
	    			return false;
	            	} else {
				return true; 
			}
		}	
	} else {
		if (newsval.length > 6) {
	            showEditError(DWQ18,fieldref);
	    	    return false;
	        } else {
		    return true;
		}
	}
  }
  
  function showEditError(errorCode, formField) {
	alert(errorCode);
	formField.focus();
  }
  
  function validateSubmit() {
  	if(document.QuoteForm.TWINSUB.value == 'false') 
	{
  		document.QuoteForm.TWINSUB.value = 'true';
  		return true;
  	} else {
  		return false;
  	}
  }
  
  function fieldIsBlank(textField) {
	if (stripBlanks(textField.value) == "")
		return true;
	else
		return false;
  }
	
  function fieldIsNaN(textField,fieldLength) {
  	textValue = stripBlanks(textField.value);
  	
	if (isNaN(textField.value) || textValue.length != fieldLength)
		return true;
	else
		return false;
  }
  
  function stripBlanks(sval) {
	newsval = "";
	for (i = 0; i < sval.length; i++) {
		if (sval.charAt(i) != ' ') {
			newsval = newsval + sval.charAt(i);
		}
	}
	return newsval;
  }
	
  function isPostalCode(fieldref) {
	sval = stripBlanks(fieldref.value);
	newsval = "";
	for (i = 0; i < sval.length; i++) {
		if (sval.charAt(i) != '-') {
			newsval = newsval + sval.charAt(i);
		}
	}
	if (newsval.length != 6) {
		return false;
	}
	newsval = newsval.toUpperCase();
	schar = "";
	for (i = 0; i < newsval.length; i++) {
		schar = newsval.charAt(i);
		if (i == 0 | i == 2 | i == 4) {
			if (schar < 'A' | schar > 'Z') {
				return false;
			}
		}
		if (i == 1 | i == 3 | i == 5) {
			if (schar < '0' | schar > '9') {
				return false;
			}
		}
	}
	fieldref.value = newsval;
	return true;
  } 

  
  function validEmail(email) {
	invalidChars = " /:,;"
	if (email == "") {
		return true;
	}
	for (i=0; i<invalidChars.length; i++) {
		if (email.indexOf(invalidChars.charAt(i),0) != -1) {
			return false;
		}
	}
	atPos = email.indexOf("@",1);
	if (email.indexOf("@",1) == -1) {
		return false;
	}
	if (email.indexOf("@",atPos+1) != -1) {
		return false;
	}
	dotPos = email.lastIndexOf(".");
	if (dotPos == -1) {
		return false;
	}
	if (dotPos+3 > email.length)	{
		return false;
	}
	if (dotPos < atPos)	{
		return false;
	}
	return true;
  } 