function isBlank(s){ for(var i=0; i var errMsg=""; var emptyFields=""; var errors=""; var emailmsg=""; var dateerrors=""; for(var j=0;j //alert(e.name+":"+e.message+":"+e.optional); if(((e.type=="text") || (e.type=="textarea")) && !e.optional){ if((e.value==null) || (e.value=="") || isBlank(e.value)){ emptyFields += "\n "+e.name; //+"-"+e.id; //continue; } //alert(e.value +":"+e.name); if (e.name=="email" || e.name=="email1"){ // email1 for sugarcrm forms if((e.type=="text") || (e.type=="textarea") && (!isBlank(e.value))){ //check for presence of @ returns -1 if not in string strEmailAddress = e.value; var positionAT=strEmailAddress.indexOf("@"); var positionDot=strEmailAddress.lastIndexOf("."); if (positionAT<1 || positionDot <1 || (positionDot < positionAT)){ emailmsg+="- Invalid email address"; eFlag=true; } } } if (e.numeric || (e.min !=null) || (e.max !=null)){ // chop spaces and '-' from telephone numbers var tmp = e.value.replace(/ /g,""); tmp = tmp.replace(/-/g,""); var v = parseFloat(tmp); var num = isFinite(tmp); //alert (tmp+":"+v); if((num==false) || ((e.min != null) && (v < e.min)) || ((e.max != null) && (v > e.max))) { errors += "- The field "+ e.name + " must be a number"; if (e.min != null) errors += "that is greater than " + e.min; if ((e.max != null) && (e.min != null)) errors += " and less than " + e.max; else if(e.max != null) errors += " that is less than " + e.max; errors += ".\n"; } } if (e.datefield){ //check for length of string to allow yyyy mm/yy m/yy yy date formats as well as dd/mm/yy & dd/mm/yyyy if (e.value){ strLength = (e.value).length strdate = e.value switch(strLength){ case 2: strdate = '01/01/' + e.value; break; case 4: if (strdate.indexOf('/')>-1){ strdate = '01/' + e.value; }else{ strdate = '01/01/' + e.value; } break; case 5: strdate = '01/' + e.value; break; } // NaN is never equal to itself. if (Date.parse(strdate) != Date.parse(strdate)){ if(dateerrors){ dateerrors+="\n "+e.name }else{ dateerrors+='\n-Invalid date format in the following field(s)' dateerrors+="\n "+e.name } }else{ invdate = true; } }else{ invdate = true; // } } } } if(!emptyFields && !errors && !emailmsg) return true; msg="------------------------------------------------------------------------------------------------\n"; msg+="The form was not submitted because of the following error(s).\n"; msg+="Please correct these error(s) and re-submit.\n"; msg+="------------------------------------------------------------------------------------------------\n"; if(emptyFields){ msg+="-The following required field(s) are empty:" + emptyFields +"\n"; if(errors) msg +="\n"; } errors+=dateerrors if(errors){ msg+=errors; if(emailmsg) msg +="\n"; } msg+=emailmsg; //msg+=position; //alert('**'+invdate); alert(msg); return false; }