function validateMaxLength(form) {
                var isValid = true;
                var focusField = null;
                var i = 0;
                var fields = new Array();
                oMaxLength = new maxlength();
                for (x in oMaxLength) {
                    var field = form[oMaxLength[x][0]];
                    
                    if (field.type == 'text' ||
                        field.type == 'textarea') {
                        
                        var iMax = parseInt(oMaxLength[x][2]("maxlength"));
                        if (field.value.length > iMax) {
                            if (i == 0) {
                                focusField = field;
                            }
                            fields[i++] = oMaxLength[x][1];
                            isValid = false;
                        }
                    }
                }
                if (fields.length > 0) {
                   focusField.focus();
                   alert(fields.join('\n'));
                }
                return isValid;
            }

	   
function validateRequired(form) {
                var isValid = true;
                var focusField = null;
                var i = 0;
                var fields = new Array();
                oRequired = new required();
                for (x in oRequired) {
                	var field = form[oRequired[x][0]];
                	
                    if (field.type == 'text' ||
                        field.type == 'textarea' ||
                        field.type == 'file' ||
                        field.type == 'select-one' ||
                        field.type == 'radio' ||
                        field.type == 'password') {
                        
                        var value = '';
						// get field's value
						if (field.type == "select-one") {
							var si = field.selectedIndex;
							if (si >= 0) {
								value = field.options[si].value;
							}
						} else {
							value = field.value;
						}
                        
                        if (trim(value).length == 0) {
                        
	                        if (i == 0) {
	                            focusField = field;
	                        }
	                        fields[i++] = oRequired[x][1];
	                        isValid = false;
                        }
                    }
                }
                if (fields.length > 0) {
                   focusField.focus();
                   alert(fields.join('\n'));
                }
                return isValid;
            }
            
            // Trim whitespace from left and right sides of s.
            function trim(s) {
                return s.replace( /^\s*/, "" ).replace( /\s*$/, "" );
            }


function validateMask(form) {
                var isValid = true;
                var focusField = null;
                var i = 0;
                var fields = new Array();
                oMasked = new mask();
                for (x in oMasked) {
                    var field = form[oMasked[x][0]];
                    
                    if ((field.type == 'text' || 
                         field.type == 'textarea') && 
                         (field.value.length > 0)) {
                        
                        if (!matchPattern(field.value, oMasked[x][2]("mask"))) {
                            if (i == 0) {
                                focusField = field;
                            }
                            fields[i++] = oMasked[x][1];
                            isValid = false;
                        }
                    }
                }
                
                if (fields.length > 0) {
                   focusField.focus();
                   alert(fields.join('\n'));
                }
                return isValid;
            }

            function matchPattern(value, mask) {
               return mask.exec(value);
            }


 //hub  javascript 
 

		
	function splitJvin (okform)
	{
		
		vin = okform["jvin"].value;
		
	
		if (vin.length == 17)
		{
			okform["wmi"].value=vin.substr(0,3);
        	okform["vds"].value=vin.substr(3,6);
        	okform["vis"].value=vin.substr(9,8);
        }
        else 
        {
        	okform["wmi"].value="";
        	okform["vds"].value="";
        	okform["vis"].value=vin;
        }
        
        return true;
	}
	
	function goTo (pageRequested, tabControlID)
	{	
		waitJbnPreloadPageAffiche();
		document.frmMenu1.action = pageRequested;
		document.frmMenu1.tabControlID.value = tabControlID;
		document.frmMenu1.submit();
	}
	
	function waitJbnPreloadPage() 
	{ //DOM
		if (document.getElementById){
		document.getElementById('jbnpreLoad').style.visibility='hidden';
		}else{
			if (document.layers){ //NS4
			document.jbnpreLoad.visibility = 'hidden';	
		}
			else { //IE4
			document.all.jbnpreLoad.style.visibility = 'hidden';
			}
		}
	}
	
	
function trim(inputString) {
    return inputString.replace(/^\s+/,'').replace(/\s+$/,'');
	}
         
function setTitle(doc,user)
{
	if (doc.title=="") 
	{	//dom 
		if (doc.getElementById){
			title = doc.getElementById('globalTitle'); 
			var titlePrefix ="";
			if (title) 
			{
				if (doc.all)
					titlePrefix=title.innerHTML + " - ";
				else titlePrefix =title.textContent + " - ";
			}		
			buf = doc.getElementById('buffer'); 
			if (buf)
			{	tables = buf.getElementsByTagName('table');
				var titleObject;
				for(i=0;i<tables.length;i++) {
					if (tables[i].rows.length==1 && tables[i].rows[0].cells.length==4){
						titleObject = tables[i].rows[0].cells[1];
						break;
					}
				}
				if (!titleObject)
				{
					dts = buf.getElementsByTagName('dt');
					if (dts)
						titleObject = dts[0];
				}
				if (titleObject)
				{
				//ie
					if (titleObject.innerText) 
			    		doc.title=titlePrefix + titleObject.innerText;
			  			//mozilla
			   		 else 
			   		 {
			   		 	 for(i=0;i<titleObject.childNodes.length;i++)
			   		 	{		
			   		 		if(titleObject.childNodes[i].nodeType==3)
			   		 		{
			   		 			 doc.title=titlePrefix + trim(titleObject.childNodes[i].nodeValue);
			   		 			 break;
			   		 		}
			   			 }	
			   		 } 
				}
			}
		}
	}
	if(doc.title=="")doc.title=titlePrefix+doc.title+user;
	else doc.title=doc.title+" - "+user;	
}

function getFormValues(fobj,valFunc)
 {
       var str = "";
       var valueArr = null;
       var val = "";
       var cmd = "";
       for(var i = 0;i < fobj.elements.length;i++)
       {
           switch(fobj.elements[i].type)
           {
               case "text":
                    if(valFunc)
                    {
                        cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
                        val = eval(cmd)
                    }
                    str += fobj.elements[i].name +
                     "=" + escape(fobj.elements[i].value) + "&";
                     break;
               case "select-one":
                    str += fobj.elements[i].name +
                    "=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";
                    break;
           }
       }
       str = str.substr(0,(str.length - 1));
       return str;
  }

