function enMsgConstrustor() { var get=function(key) { return msgs[key]; } this.get=get; var set=function(key,val) { msgs[key]=val; } this.set=set; var msgs= { "" : "" ,"enValidation.inTheField" : " in the '~1~' field" ,"enValidation.enterNum" : "Please enter a number" ,"enValidation.enterValueGreater" : "Please enter a value with greater than or equal to " ,"enValidation.enterValueLess" : "Please enter a value less than or equal to " ,"enValidation.enterValBetween" : "Please enter a value between ~1~ and ~2~" ,"enValidation.enterNoOfCharsGreater" : "Please enter a value with no of characters greater than or equal to " ,"enValidation.enterNoOfCharsLess" : "Please enter a value with no of characters less than or equal to " ,"enValidation.enterNoOfCharsBetween" : "Please enter a value with no of characters between ~1~ and ~2~" ,"enValidation.noOfChars" : "(no of characters is:~1~)" ,"enValidation.enterDollar" : "Please enter a dollar amount" ,"enValidation.enterInteger" : "Please enter an integer" ,"enValidation.enterDate" : "Please enter a date as '" ,"enValidation.enterPattern" : "Please enter a valid pattern" ,"enValidation.enterPhone" : "Please enter a valid phone number" ,"enValidation.enterEmail" : "Please enter a valid email address" ,"enValidation.enterEmails" : "Please enter a valid emails address" ,"enValidation.enterZip" : "Please enter a valid ZIP code" ,"enValidation.enterSystemName" : "Please enter a valid System name (Starts with a letter, has no spaces or special characters)" ,"enValidation.enterValue" : "Please enter a value" ,"enValidation.allowedFileTypes" : "Please enter a file of system allowed types" ,"enValidation.forbiddenFileTypes" : "Please enter a file of system allowed types" ,"enValidation.allowedValues" : "Please enter values in: '~1~'" ,"enValidation.forbiddenValues" : "Please enter values not in: '~1~'" ,"enCalendar.days.1" : "Su" ,"enCalendar.days.2" : "Mo" ,"enCalendar.days.3" : "Tu" ,"enCalendar.days.4" : "We" ,"enCalendar.days.5" : "Th" ,"enCalendar.days.6" : "Fr" ,"enCalendar.days.7" : "Sa" ,"enCalendar.months.1" : "January" ,"enCalendar.months.2" : "February" ,"enCalendar.months.3" : "March" ,"enCalendar.months.4" : "April" ,"enCalendar.months.5" : "May" ,"enCalendar.months.6" : "June" ,"enCalendar.months.7" : "July" ,"enCalendar.months.8" : "August" ,"enCalendar.months.9" : "September" ,"enCalendar.months.10" : "October" ,"enCalendar.months.11" : "November" ,"enCalendar.months.12" : "December" ,"enCalendar.time" : "Time (24h) " ,"enCalendar.save" : "Save" ,"enCalendar.am" : "AM" ,"enCalendar.pm" : "PM" }; }//end of construstor function if(!window.enMsg)window.enMsg=new enMsgConstrustor(); function enBSConstructor() { var agent = navigator.userAgent.toLowerCase(); this.verMajor = parseInt(navigator.appVersion); this.verMinor = parseFloat(navigator.appVersion); this.name=navigator.appName; this.supportsCookies=checkCookiesSupport(); function checkCookiesSupport() { var c=document.cookie; if(c.length>0)return true; document.cookie="enTestCookie=test"; return(c.length>0); } this.ns=(agent.indexOf('mozilla')!=-1 && agent.indexOf('spoofer')==-1 && agent.indexOf('compatible') == -1 && agent.indexOf('opera')==-1 && agent.indexOf('webtv')==-1); this.ns2=(this.ns && (this.verMajor == 2)); this.ns3=(this.ns && (this.verMajor == 3)); this.ns4=(this.ns && this.verMajor == 4); this.ns4up=(this.ns && this.verMajor >= 4); this.ns6=(this.ns && this.verMajor == 5); this.ns6up=(this.ns && this.verMajor >= 5); this.gecko=(agent.indexOf("gecko") != -1); this.ie=(agent.indexOf("msie") != -1); this.ie3=(this.ie && (this.verMajor < 4)); this.ie4=(this.ie && this.verMajor == 4 && agent.indexOf("msie 4")!=-1); this.ie4up=(this.ie && this.verMajor >= 4); this.ie5=(this.ie && this.verMajor == 4 && agent.indexOf("msie 5.0")!=-1); this.ie55=(agent.indexOf("msie 5.5")!=-1); this.ie6=(agent.indexOf("msie 6")!=-1); this.ie6up=this.ie6; this.ie5up=(agent.indexOf("msie 5")!=-1 || agent.indexOf("msie 6")!=-1); this.opera=(agent.indexOf("opera") != -1); this.js = 0.0; if (this.ns2 || this.ie3) this.js = 1.0; else if (this.ns3 || this.opera || (document.images && this.ie && !this.ie4up)) this.js = 1.1; else if ((this.ns4 && this.verMinor <= 4.05) || this.ie4) this.js = 1.2; else if ((this.ns4 && this.verMinor > 4.05) || this.ie5up) this.js = 1.3; else if (this.hotjava3up) this.js = 1.4; else if (this.ns6up || this.gecko) this.js = 1.5; this.os=navigator.platform; this.win16=((agent.indexOf("win16")!=-1) || (agent.indexOf("16bit")!=-1) || (agent.indexOf("windows 3.1")!=-1) || (agent.indexOf("windows 16-bit")!=-1) ); this.win31=((agent.indexOf("windows 3.1")!=-1) || (agent.indexOf("win16")!=-1) || (agent.indexOf("windows 16-bit")!=-1)); this.winme=((agent.indexOf("win 9x 4.90")!=-1)); this.win2k=((agent.indexOf("windows nt 5.0")!=-1)); this.win95=((agent.indexOf("win95")!=-1) || (agent.indexOf("windows 95")!=-1)); this.win98=((agent.indexOf("win98")!=-1) || (agent.indexOf("windows 98")!=-1)); this.winnt=((agent.indexOf("winnt")!=-1) || (agent.indexOf("windows nt")!=-1)); this.win32=(this.win95 || this.win98 || this.winnt || (this.verMajor >= 4 && navigator.platform == "win32") || agent.indexOf("win32")!=-1 || agent.indexOf("32bit")!=-1); this.win=(this.win32 || this.win2k || this.win16 || this.win31); this.mac=(agent.indexOf("mac")!=-1); if (this.mac && this.ie5up) this.js = 1.4; this.mac68k = (this.mac && ((agent.indexOf("68k")!=-1) || (agent.indexOf("68000")!=-1))); this.macppc = (this.mac && ((agent.indexOf("ppc")!=-1) || (agent.indexOf("powerpc")!=-1))); } if(!window.enBS)window.enBS=new enBSConstructor(); function enUtilsConstrustor() { var isSet=function(prm) { var und; return(prm!=und && prm!=null); } this.isSet=isSet; var isEmpty=function(prm) { return(!isSet(prm) || ((typeof prm).toLowerCase()=="string" && prm.length==0)); } this.isEmpty=isEmpty; var isObject=function(elmnt) { if(!isSet(elmnt))return false; return (elmnt.constructor==Object || typeof elmnt == "object"); } this.isObject=isObject; var ntz=function(prm,def) { if(!isSet(def))def=""; return(isEmpty(prm)?def:prm); } this.ntz=ntz; var ifrShowFloatingIfr=function(ifr,elmnt,ifrParams) { var oIfr=objectOrGetId(ifr); var sh=(isSet(ifrParams)&&isSet(ifrParams.showHide))?ifrParams.showHide:''; if(isEmpty(sh)) sh=(isEmpty(oIfr) || isEmpty(oIfr.style) || oIfr.style.visibility=="hidden") ? 'show' : 'hide'; if(sh=='hide' && !isEmpty(oIfr)) { oIfr.style.visibility="hidden"; } else { if(ifrParams && !ifrHandleAttributes(ifr,ifrParams))return; if(!oIfr) oIfr=objectOrGetId(ifr); if(!isSet(ifrParams))ifrParams=new Object; if(!elmnt) return; var ifrPos=ifrCalcFloatingPosotion(elmnt,ifr,ifrParams); oIfr.style.top = ifrPos.top; oIfr.style.left = ifrPos.left; oIfr.style.visibility="visible"; } } this.ifrShowFloatingIfr=ifrShowFloatingIfr; var ifrCalcFloatingPosotion=function(elmnt,ifr,ifrParams){ var ifrPos=new Object; ifrPos.left=0; ifrPos.top=0; ifrPos.width=0; ifrPos.height=0; if (isEmpty(elmnt) || isEmpty(ifr)) { return ifrPos; } if(isEmpty(ifrParams.position)) ifrParams.position="right"; if(isEmpty(ifrParams.shiftDir)) ifrParams.shiftDir="down"; if(isEmpty(ifrParams.shiftByPercent)) ifrParams.shiftByPercent="0"; var oElmnt=objectOrGetId(elmnt); var elmntPos=elmntAbsPos(oElmnt); var oDiv=objectOrGetId(ifr); ifrPos.width=oDiv.offsetWidth; ifrPos.height=oDiv.offsetHeight; if(!isNum(ifrParams.shiftByPercent)){ return ifrPos; } params=ifrParams.position.toLowerCase()+"@"+ifrParams.shiftDir.toLowerCase(); ifrParams.shiftByPercent=parseFloat(ifrParams.shiftByPercent); switch(params) { case "bottom@right": ifrPos.left=elmntPos.left+ifrParams.shiftByPercent/100*elmntPos.width; ifrPos.top=elmntPos.top+elmntPos.height; break; case "bottom@left": ifrPos.left=elmntPos.left+(1-ifrParams.shiftByPercent/100)*elmntPos.width-ifrPos.width; ifrPos.top=elmntPos.top+elmntPos.height; break; case "top@right": ifrPos.left=elmntPos.left+ifrParams.shiftByPercent/100*elmntPos.width; ifrPos.top=elmntPos.top-ifrPos.height; break; case "top@left": ifrPos.left=elmntPos.left+(1-ifrParams.shiftByPercent/100)*elmntPos.width-ifrPos.width; ifrPos.top=elmntPos.top-ifrPos.height; break; case "right@down": ifrPos.left=elmntPos.left+elmntPos.width; ifrPos.top=elmntPos.top+ifrParams.shiftByPercent/100*elmntPos.height; break; case "right@up": ifrPos.left=elmntPos.left+elmntPos.width; ifrPos.top=elmntPos.top+(1-ifrParams.shiftByPercent/100)*elmntPos.height-ifrPos.height break; case "left@down": ifrPos.left=elmntPos.left-ifrPos.width; ifrPos.top=elmntPos.top+ifrParams.shiftByPercent/100*elmntPos.height; break; case "left@up": ifrPos.left=elmntPos.left-ifrPos.width; ifrPos.top=elmntPos.top+(1-ifrParams.shiftByPercent/100)*elmntPos.height-ifrPos.height; break; default: return ifrPos; } if(!ifrParams.skipKeepInWin) { ifrPos=ifrKeepInWindow(elmntPos,ifrPos); } return ifrPos; } this.ifrCalcFloatingPosotion=ifrCalcFloatingPosotion; var ifrKeepInWindow=function (elmntPos,ifrPos){ if(!elmntPos || !ifrPos) return; var winPos=getWindowPos(); var WindowLeftEdge=winPos.left; var WindowTopEdge=winPos.top; var WindowWidth=winPos.width; var WindowHeight=winPos.height; var WindowRightEdge=winPos.right; var WindowBottomEdge=winPos.bottom; var divLeftEdge = ifrPos.left; var divRightEdge = divLeftEdge + ifrPos.width; var divTopEdge = ifrPos.top; var divBottomEdge = divTopEdge + ifrPos.height; var elmntLeftEdge=elmntPos.left; var elmntRightEdge = elmntLeftEdge + elmntPos.width; var elmntTopEdge = elmntPos.top; var elmntBottomEdge = elmntTopEdge + elmntPos.height; var out; if (divRightEdge > WindowRightEdge) { out=divLeftEdge-elmntRightEdge; if(out>=-1) ifrPos.left =elmntLeftEdge-ifrPos.width; else ifrPos.left =elmntLeftEdge-out-ifrPos.width } if (divLeftEdge < WindowLeftEdge) { out=elmntLeftEdge-divRightEdge; if(out>=-1) ifrPos.left =elmntRightEdge; else ifrPos.left =elmntRightEdge+out; } if (divBottomEdge > WindowBottomEdge) { out=divTopEdge-elmntBottomEdge; if(out>=-1) ifrPos.top =elmntTopEdge-ifrPos.height; else ifrPos.top =elmntTopEdge-out-ifrPos.height; } if (divTopEdge=-1) ifrPos.top =elmntBottomEdge; else ifrPos.top =elmntBottomEdge+out; } return ifrPos; } this.ifrKeepInWindow=ifrKeepInWindow; var ifrHandleAttributes=function (ifr,ifrParams) { var retVal=false; var oIfr=objectOrGetId(ifr); if (!oIfr) { oIfr=ifrCreate(ifr); if(!oIfr) return retVal; oIfr.style.position="absolute"; oIfr.style.zIndex="5000"; oIfr.setAttribute("frameborder","0"); oIfr.style.visibility="hidden"; } oIfr.style.width=isNum(ifrParams.ifrWidth)?ifrParams.ifrWidth+"px":100+"px"; oIfr.style.height=isNum(ifrParams.ifrHeight)?ifrParams.ifrHeight+"px":100+"px"; var ifrSrc=ifrParams.ifrSrc; if(isEmpty(ifrSrc)) { retVal = true; } else { oIfr=getIfrFromDiv(oIfr); if(ifrParams.isSrcFile) { document.getElementById(oIfr.id).src=ifrSrc; retVal=true; } else { var wincol=window.frames; for(var i=0;i0)mm--; return new Date(yy,mm,dd,hh,mi,se); } } this.getDateFromElements=getDateFromElements; var formatAsDateTime=function(date,dataType,format,timeFormat) { var padZero=function(num) { return ((num <= 9) ? ("0" + num) : num); } var retVal=""; if(!date.getTime)return retVal; if(dataType!=6 && dataType!=11 && dataType!=12)dataType=6; format=ntz(format,"MMMM dd,yyyy"); timeFormat=ntz(timeFormat,"HH:mm:ss") var year = date.getFullYear(); var month = padZero(date.getMonth()+1); var day = padZero(date.getDate()); var hour=date.getHours(); var minute=padZero(date.getMinutes()); var second=padZero(date.getSeconds()); var formatedDate=""; if(dataType==6 || dataType==11) { switch (format) { case "dd-MMMM-yyyy": { formatedDate=day+"-"+enMsg.get("enCalendar.months."+(date.getMonth()+1))+"-"+year; break; } case "MMMM dd,yyyy": { formatedDate=enMsg.get("enCalendar.months."+(date.getMonth()+1))+" "+day+","+year; break; } case "yyyy-MM-dd": { formatedDate=year+"-"+month+"-"+day; break; } case "dd-MM-yyyy": { formatedDate=day+"-"+month+"-"+year; break; } case "MM-dd-yyyy": { formatedDate=month+"-"+day+"-"+year; break; } case "dd/MM/yyyy": { formatedDate=day+"/"+month+"/"+year; break; } case "MM/dd/yyyy": { formatedDate=month+"/"+day+"/"+year; break; } } } var formatedTime=""; var a=null; if(dataType==6 || dataType==12) { switch (timeFormat) { case "h:mm:ss": { if(hour>12) hour=hour-12; formatedTime=hour+":"+minute+":"+second; break; } case "hh:mm:ss": { if(hour>12) hour=hour-12; formatedTime=padZero(hour)+":"+minute+":"+second; break; } case "h:mm:ss a": { hour=(hour>12)?hour-12:hour; a=(hour>=12)?enMsg.get("enCalendar.pm"):enMsg.get("enCalendar.am") formatedTime=hour+":"+minute+":"+second+" "+a; break; } case "hh:mm:ss a": { hour=(hour>12)?hour-12:hour; a=(hour>=12)?enMsg.get("enCalendar.pm"):enMsg.get("enCalendar.am") formatedTime=padZero(hour)+":"+minute+":"+second+" "+a; break; } case "H:mm:ss": { formatedTime=hour+":"+minute+":"+second; break; } case "HH:mm:ss": { formatedTime=padZero(hour)+":"+minute+":"+second; break; } } } switch(dataType) { case 6: retVal=formatedDate+" "+formatedTime;break; case 11: retVal=formatedDate;break; case 12: retVal=formatedTime;break; } return retVal; } this.formatAsDateTime=formatAsDateTime; var objectOrGetId=function(oElement,type) { if(isEmpty(oElement))return null; type=ntz(type); if(typeof oElement!='object') { switch(type.toLowerCase()) { case "img": oElement=document.images[oElement]; break; case "form": oElement=document.forms[oElement]; break; case "id": default: oElement=document.getElementById(oElement); break; } } return oElement; } this.objectOrGetId=objectOrGetId; var isNum=function (v) { if(isEmpty(v))return false; return (v.toString() && !/\D/.test(v)); } this.isNum=isNum; var elmntAbsPos=function (el) { var elmnt=objectOrGetId(el); if(!elmnt) return; var pos =new Object; pos.width=elmnt.offsetWidth; pos.height=elmnt.offsetHeight; pos.left = 0; pos.top = 0; while(elmnt!=null && elmnt.nodeName!="BODY"){ pos.left += elmnt.offsetLeft; pos.top += elmnt.offsetTop; elmnt=elmnt.offsetParent; } pos.right = (pos.left + pos.width); pos.bottom = (pos.top + pos.height); return pos; } this.elmntAbsPos=elmntAbsPos; var getWindowPos=function(win) { if(isEmpty(win))win=window; var out=new Object(); var b=getBody(win); var compMode=getCompatMode(win); if(!isEmpty(compMode) && ntz(compMode).toLowerCase()!="backcompat") b=document.documentElement; out.left = (enBS.ie) ? b.scrollLeft : win.pageXOffset; out.top = (enBS.ie) ? b.scrollTop : win.pageYOffset; out.width = (enBS.ie) ? b.clientWidth : win.innerWidth; out.height= (enBS.ie) ? b.clientHeight : win.innerHeight; out.right = (out.left + out.width); out.bottom = (out.top + out.height); return out; } this.getWindowPos=getWindowPos; var getCompatMode=function(win) { if(isEmpty(win))win=window; var doc=win.document; var comp=null; if(isSet(doc.compatMode))comp=doc.compatMode; return comp; } this.getCompatMode=getCompatMode; var getBody=function(win) { if(isEmpty(win))win=window; var b=null; b=win.document.getElementsByTagName("BODY").item(0); if(isEmpty(b))b=document.body; return b; } this.getBody=getBody; var getBaseUrl=function(win) { if(isEmpty(win))win=window; if(isEmpty(win.enApplication))return "../"; return win.enApplication.getBaseUrl(); } this.getBaseUrl=getBaseUrl; var startsWith=function(str,prefix) { var preLen=prefix.length; var strLen=str.length; if(preLen>str.length) return false; return(str.substr(0,preLen)==prefix) } this.startsWith=startsWith; var endsWith=function(str,suffix) { var sufLen=suffix.length; var strLen=str.length; if(sufLen>str.length) return false; return(str.substr(strLen-sufLen,sufLen)==suffix) } this.endsWith=endsWith; } if(!window.enUtils)window.enUtils=new enUtilsConstrustor(); function enApplicationConstrustor() { var global=new Object(); global.baseUrl="../"; global.isRTL=false; this.global=global; var showCalendar=function(el,trgt,cbfn,calendarType,dateFrom,dateTo,dateFormat,timeFormat,startDay,startYear,endYear,addButtons) { if(!enUtils.isSet(el))return; if(!enUtils.isSet(trgt))return; cbfn=enUtils.ntz(cbfn,"enApplication.showCalendarCbfn"); calendarType=enUtils.ntz(calendarType,"null"); if(enUtils.isSet(dateFrom) && dateFrom.constructor==Date) dateFrom="new Date("+dateFrom.getFullYear()+","+dateFrom.getMonth()+","+dateFrom.getDate()+")"; else dateFrom="null" if(enUtils.isSet(dateTo) && dateTo.constructor==Date) dateTo="new Date("+dateTo.getFullYear()+","+dateTo.getMonth()+","+dateTo.getDate()+")"; else dateTo="null" dateFormat=(enUtils.isEmpty(dateFormat))?"null":"'"+dateFormat+"'"; timeFormat=(enUtils.isEmpty(timeFormat))?"null":"'"+timeFormat+"'"; startDay=enUtils.ntz(startDay,"null"); startYear=enUtils.ntz(startYear,"null"); endYear=enUtils.ntz(endYear,"null"); addButtons=enUtils.ntz(addButtons,"null"); var tmpStr="\n"; tmpStr += " \n\n"; tmpStr += "\n"; tmpStr += "\n"; tmpStr += "\n\n"; tmpStr += "
"; tmpStr += "\n "; var ifr="fraCalendar"; var ifrParams=new Object(); ifrParams.position="bottom"; ifrParams.shiftDir=global.isRTL?"right":"left" ifrParams.shiftByPercent="0" ifrParams.ifrSrc=tmpStr; ifrParams.ifrWidth="200"; ifrParams.ifrHeight="51";//this changed in the control (except for time only control) enUtils.ifrShowFloatingIfr(ifr,el,ifrParams); } this.showCalendar=showCalendar; var hideCalendar=function() { var ifrParams=new Object(); ifrParams.showHide="hide"; enUtils.ifrShowFloatingIfr("fraCalendar",null,ifrParams); } this.hideCalendar=hideCalendar; var showCalendarCbfn=function(pickedDate,target,calType,format,timeFormat) { var DATE_HIDDEN_EXTS=["_YY","_MM","_DD","_HO","_MI","_SE"]; var padZero=function(num) { return ((num <= 9) ? ("0" + num) : num); } if(calType!=6 && calType!=11 && calType!=12)calType=6; var year = pickedDate.getFullYear(); var month = padZero(pickedDate.getMonth()+1); var day = padZero(pickedDate.getDate()); var hour=padZero(pickedDate.getHours()); var minute=padZero(pickedDate.getMinutes()); var second=padZero(pickedDate.getSeconds()); var tmpEl; var tmpDateArry=[year,month,day,hour,minute,second]; var prefix=target.id; for(var i=0;i0 && pos0 && iDay>0 && iDay<=iDaysInMonth){ if(bConvert){ return new Date(iYear,iMonth-1,iDay); }else return true; }else return false; } var hasDate=function (oElement,sFormat,bConvert){ if(!oElement)return false; if(!sFormat){ if(oElement.DATEFORMAT){ sFormat=oElement.DATEFORMAT; }else if(oElement.form && oElement.form.DATEFORMAT){ sFormat=oElement.form.DATEFORMAT; }else{ sFormat=enValidation.DATEFORMAT; } } return isDate(getValueOf(oElement),sFormat,bConvert); } var isNotEmpty=function (v){ return(v?true:false); } var hasNotEmpty=function (oElement){ if(!oElement)return false; return isNotEmpty(getValueOf(oElement)); } var isNum=function (v){ if(v!=0 && !v)return false; return (v.toString() && !/\D/.test(v)); } var hasNum=function (oElement){ if(!oElement)return false; return isNum(getValueOf(oElement)); } var isFloat=function (sValue,bSigned){ if(!isSet(sValue))return false; var re=new RegExp("^"+((bSigned)?"[\\-\\+]?":"")+"(\\d*\\.?\\d+|\\d+\\.?\\d*)$"); return re.test(sValue); } var hasFloat=function (oElement,bSigned){ if(!oElement)return false; if(bSigned==null)bSigned=oElement.SIGNED; return isFloat(getValueOf(oElement),bSigned); } var isInteger=function (sValue,bSigned){ if(!isSet(sValue))return false; var re=new RegExp("^"+((bSigned)?"[\\-\\+]?":"")+"\\d+$"); return re.test(sValue); } var hasInteger=function (oElement,bSigned){ if(!oElement)return false; if(bSigned==null)bSigned=oElement.SIGNED; return isInteger(getValueOf(oElement),bSigned); } var isRegExp=function (sValue,oRegExp){ if(!(oRegExp && oRegExp.constructor==RegExp && sValue))return false; return oRegExp.test(sValue); } var hasRegExp=function (oElement,oRegExp){ if(!oElement)return false; if(!(oRegExp && oRegExp.constructor==RegExp))oRegExp=oElement.REGEXP; return isRegExp(getValueOf(oElement),oRegExp); } var isGivenValues=function (sValue,sVals){ if(!(isSet(sVals) && isSet(sValue)))return false; sValue=sValue.toLowerCase(); var values=(""+sVals).toLowerCase().split(","); if(!values || values.length==0)return false; for(var i=0;i0)reStr+="|"; reStr+="^.+\\."+fileTypes[i].trim()+"$"; } return isRegExp(sValue,new RegExp(reStr,"i")); } var hasAllowedFileType=function (oElement,sTypes){ if(!oElement)return false; if(!(sTypes))sTypes=oElement.ALLOWEDFILETYPES; return isAllowedFileType(getValueOf(oElement),sTypes); } var isForbiddenFileType=function (sValue,sTypes){ if(!(sTypes && sValue))return false; return isAllowedFileType(sValue,sTypes); } var hasForbiddenFileType=function (oElement,sTypes){ if(!oElement)return false; if(!(sTypes))sTypes=oElement.FORBIDDENFILETYPES; return isForbiddenFileType(getValueOf(oElement),sTypes); } var isEmail=function (sValue){ if(!sValue)return false; return isRegExp(sValue,/^[\w_-]+(\.[\w_-]+)*@[\w_-]+(\.[\w_-]+)*\.\w{2,4}$/); } var hasEmail=function (oElement){ if(!oElement)return false; return isEmail(getValueOf(oElement)); } var isEmails=function (sValue){ if(!sValue)return false; var tmpValue = sValue.split(","); for(var i=0;i=65&&curCharCode<=90)||(curCharCode>=97&&curCharCode<=122))) { idx++; if(idx==len)return ""; curChar = name.charAt(idx); curCharCode = name.charCodeAt(idx); } if((curCharCode>=65&&curCharCode<=90)||(curCharCode>=97&&curCharCode<=122))o+=curChar; for(var i = idx+1 ; i < len ; i++) { curChar = name.charAt(i); curCharCode = name.charCodeAt(i); if((curCharCode>=65&&curCharCode<=90)||(curCharCode>=97&&curCharCode<=122)|| (curCharCode>=48&&curCharCode<=57)||(curCharCode==95))o+=curChar; } return o; } var validateControlsArray=function (form,controlName,validate) { if(form.constructor != Object)form=document.forms[form]; if(controlName.constructor==Array) { for(var i=0;i0 && validate[0].constructor != Array)return false; var el; for(var i=0;iparseFloat(iMax)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterValueLess")+iMax); return false; } }else if(iMin && iMax){ if(sValueparseFloat(iMax)){ enValidation.Err.add(oElement,multiLangMsg(iMin,iMax)); return false; } } } if (!bIgnore && oElement.AMOUNT && sValue){ var re = new RegExp("^"+((bSigned)?"[\\-\\+]?":"")+"(\\d*\\.?\\d{2}|\\d+\\.?(\\d{2})?)$"); if(!re.test(sValue)) { enValidation.Err.add(oElement, enMsg.get("enValidation.enterDollar")); return false; } } if (!bIgnore && oElement.INTEGER && sValue){ if(!isInteger(sValue,bSigned)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterInteger")); return false; } var iMin = oElement.MIN; var iMax = oElement.MAX; if(iMin && !iMax){ if(sValueparseInt(iMax)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterValueLess")+iMax); return false; } }else if(iMin && iMax){ if(sValueparseInt(iMax)){ enValidation.Err.add(oElement, multiLangMsg(iMin,iMax)); return false; } } } if (!bIgnore && oElement.DATE && sValue) { var sFormat=null; if(oElement.DATEFORMAT){ sFormat=oElement.DATEFORMAT; }else if(oElement.form && oElement.form.DATEFORMAT){ sFormat=oElement.form.DATEFORMAT; }else{ sFormat=enValidation.DATEFORMAT; } if (!isDate(sValue,sFormat)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterDate") +sFormat.toUpperCase()+"'"); return false; } } var oRegexp=oElement.REGEXP; if(!bIgnore && oRegexp && oRegexp.constructor==RegExp && sValue){ if(!isRegExp(sValue,oRegexp)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterPattern")); return false; } } if(!bIgnore && oElement.PHONE && sValue){ if(!isPhone(sValue)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterPhone")); return false; } } if(!bIgnore && oElement.EMAIL && sValue){ if(!isEmail(sValue)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterEmail")); return false; } } if(!bIgnore && oElement.EMAILS && sValue){ if(!isEmails(sValue)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterEmails")); return false; } } if(!bIgnore && isSet(oElement.ALLOWEDVALUES) && sValue){ if(!isGivenValues(sValue,oElement.ALLOWEDVALUES)){ enValidation.Err.add(oElement, enMsg.get("enValidation.allowedValues").replace("~1~",oElement.ALLOWEDVALUES)); return false; } } if(!bIgnore && isSet(oElement.FORBIDDENVALUES) && sValue){ if(isGivenValues(sValue,oElement.FORBIDDENVALUES)){ enValidation.Err.add(oElement, enMsg.get("enValidation.forbiddenValues").replace("~1~",oElement.FORBIDDENVALUES)); return false; } } if(!bIgnore && oElement.ALLOWEDFILETYPES && sValue){ if(!isAllowedFileType(sValue,oElement.ALLOWEDFILETYPES)){ enValidation.Err.add(oElement, enMsg.get("enValidation.allowedFileTypes")); return false; } } if(!bIgnore && oElement.FORBIDDENFILETYPES && sValue){ if(isForbiddenFileType(sValue,oElement.FORBIDDENFILETYPES)){ enValidation.Err.add(oElement, enMsg.get("enValidation.forbiddenFileTypes")); return false; } } if(!bIgnore && oElement.ZIP && sValue){ if(!isZip(sValue)){ enValidation.Err.add(oElement, enMsg.get("enValidation.enterZip")); return false; } } if(!bIgnore && oElement.SYSNAME && sValue){ if(!isSysName(sValue)){ enValidation.Err.add(oElement,enMsg.get("enValidation.enterSystemName") ); return false; } } if(!bIgnore && (bRequired || sValue)) { var iMin = oElement.MIN_LEN; var iMax = oElement.MAX_LEN; if(iMin && !iMax){ if(sValue.lengthparseInt(iMax)){ var msg=enMsg.get("enValidation.enterNoOfCharsLess")+iMax+"\n" +enMsg.get("enValidation.noOfChars").replace("~1~",sValue.length); enValidation.Err.add(oElement, msg); return false; } }else if(iMin && iMax){ var msg=enMsg.get("enValidation.enterNoOfCharsBetween").replace("~1~",iMin).replace("~2~",iMax)+"\n" +enMsg.get("enValidation.noOfChars").replace("~1~",sValue.length); if(sValue.lengthparseInt(iMax)){ enValidation.Err.add(oElement, msg); return false; } } } var vAnd=oElement.AND; if(vAnd && sValue){ if(vAnd.constructor!=Array)vAnd = vAnd.toString().split(/,/); var i, iFields=vAnd.length; for(i=0; ienDateTo) { var tmpHours=theDate.getHours(); var tmpMinutes=theDate.getMinutes(); var tmpSeconds=theDate.getSeconds(); theDate=enDateFrom; theDate.setHours(tmpHours); theDate.setMinutes(tmpMinutes); theDate.setSeconds(tmpSeconds); enHighLightDay=false; } year = openYear = theDate.getFullYear(); month = openMonth = theDate.getMonth(); day = openDay = theDate.getDate(); hour = theDate.getHours(); minute=theDate.getMinutes(); second=theDate.getSeconds(); writeString(buildString()); enDivContainer.style.visibility=='visible' } this.show=show; var hide=function() { enDivContainer.style.visibility='hidden'; } this.hide=hide; var selectChange = function() { month=document.getElementById("slctMonth").value; year=document.getElementById("slctYear").value; if(enCalendarType==6 || enCalendarType==12) { hour=unPadZero(document.getElementById("inpHours").value); minute=unPadZero(document.getElementById("inpMinutes").value); second=unPadZero(document.getElementById("inpSeconds").value); } writeString(buildString()); } this.selectChange=selectChange; var clickChange=function(type,incr) { if(type=="m") { if (month==11 && incr==1) { month = 0; year++; } else { if(month==0 && incr==-1) { month = 11; year--; } else { (incr==1)?month++:month--; } } } else if(type=="y") (incr==1)?year++:year--; if(enCalendarType==6 || enCalendarType==12) { hour=unPadZero(document.getElementById("inpHours").value); minute=unPadZero(document.getElementById("inpMinutes").value); second=unPadZero(document.getElementById("inpSeconds").value); } writeString(buildString()); } this.clickChange=clickChange; var validateTimeCtrl=function(el) { if(!el.INTEGER) { var ctrlName=el.id.substr(3); var maxVal=(ctrlName=="Hours")?23:59; el.NAME=ctrlName; el.INTEGER=true; el.MIN=0; el.MAX=maxVal; } window.parent.enValidation.validateControl(el); } this.validateTimeCtrl=validateTimeCtrl; var clickDay = function(clicked) { if(enCalendarType!=11) { var frm=document.forms["frmCal"]; with (frm) { if(!inpHours.INTEGER); inpHours.NAME="Hours";inpHours.INTEGER=true;inpHours.MIN=0;inpHours.MAX=23; if(!inpMinutes.INTEGER); inpMinutes.NAME="Minutes";inpMinutes.INTEGER=true;inpMinutes.MIN=0;inpMinutes.MAX=59; if(!inpSeconds.INTEGER); inpSeconds.NAME="Seconds";inpSeconds.INTEGER=true;inpSeconds.MIN=0;inpSeconds.MAX=59; } if(!window.parent.enValidation.validateForm(frm))return; } if(enUtils.isSet(clicked))day=clicked; if(enCalendarType==11)//date only { hour=minute=second=0; } else //has time { if(enCalendarType==12)//time only { year=YEAR_FOR_TIME; month=MONTH_FOR_TIME; day=DAY_FOR_TIME; } hour=enUtils.ntz(document.getElementById("inpHours").value,0); minute=enUtils.ntz(document.getElementById("inpMinutes").value,0); second=enUtils.ntz(document.getElementById("inpSeconds").value,0); } var pickeDate=new Date(year,month,day,hour,minute,second); var fn=eval("window.parent."+enCbfn); if(typeof fn=="function")fn(pickeDate,enTarget,enCalendarType,enDateFormat,enTimeFormat); } this.clickDay=clickDay; var buildString = function() { var tmpStr = '
'; if(enCalendarType==6 || enCalendarType==11) { var upYear=true; var downYear=true; var upMonth=true; var downMonth=true; if(year==END_YEAR) { upYear=false; if(month==END_MONTH)upMonth=false; } if(year==START_YEAR) { downYear=false; if(month==START_MONTH)downMonth=false; } tmpStr+=''; tmpStr += ''; tmpStr += ''; tmpStr += ''; tmpStr += ''; tmpStr += '
'; if (enAddButtons && downMonth) { tmpStr+=' '; } tmpStr+=''; if (enAddButtons && upMonth) { tmpStr+=' '; } tmpStr += ''; if (enAddButtons && downYear) { tmpStr+=' '; } tmpStr+=''; if (enAddButtons && upYear) { tmpStr+=' '; } tmpStr += '
'; var iCount = 1; var iFirstDOM = getFirstDOM()-START_DATE; // to prevent calling it in a loop if (iFirstDOM < 0 ) iFirstDOM = iFirstDOM + 7; var iDaysInMonth = getDaysInMonth(); // to prevent calling it in a loop tmpStr += ''; tmpStr += ''; for (var i=0;i<7;i++) { tmpStr += ''; } tmpStr += ''; var tmpFrom = parseInt('' + enDateFromYear + enDateFromMonth + enDateFromDay,10); var tmpTo = parseInt('' + enDateToYear + enDateToMonth + enDateToDay,10); var tmpCompare; var maxRows=6; var actualRows=0; for (var j=1;j<=maxRows;j++) { if(iCount <= iDaysInMonth) { actualRows++; tmpStr += ''; for (var i=1;i<=7;i++) { tmpStr += '' }//end tds loop tmpStr += '' } }//end rows loop tmpStr += '
'; tmpStr += DAYS_OF_WEEK[(START_DATE+i)%7] + '
=iFirstDOM+1 && iCount <= iDaysInMonth) { if (enHighLightDay && iCount==day && year==openYear && month==openMonth) tmpStr += 'class="calHighlightColor"'; else { if (i==6 || i==7) tmpStr += 'class="calWeekend"'; else tmpStr += 'class="cal"'; } tmpStr += '>'; tmpCompare = parseInt('' + year + padZero(month) + padZero(iCount),10); if (tmpCompare >= tmpFrom && tmpCompare <= tmpTo) { tmpStr += '' + iCount + ''; } else { tmpStr += '' + iCount + ''; } iCount++; } else { if (i==6 || i==7) tmpStr += 'class="calWeekend"'; else tmpStr +='class="cal"'; tmpStr += '> '; } tmpStr += '
'; var ifrHeight=parseInt(window.parent.document.getElementById("fraCalendar").style.height); if(actualRows==5) { ifrHeight=(enCalendarType==6)?"169":(enCalendarType==11)?"121":"51"; } else if(actualRows==6) { ifrHeight=(enCalendarType==6)?"185":(enCalendarType==11)?"137":"51"; } window.parent.document.getElementById("fraCalendar").style.height=ifrHeight+"px"; } if(enCalendarType==6 || enCalendarType==12) { tmpStr += ''; tmpStr += ''; tmpStr += ''; tmpStr += ''; tmpStr += ''; } tmpStr += ''; tmpStr += ''; tmpStr += '
 
'; tmpStr += ' '+msg.get("enCalendar.time") + ': '; tmpStr += ''; tmpStr += ''; tmpStr += '
 
\n'; } tmpStr += '
'; return tmpStr; } var getFirstDOM = function() { var thedate = new Date(); thedate.setDate(1); thedate.setMonth(month); thedate.setFullYear(year); return thedate.getDay(); } var getDaysInMonth = function () { if (month!=1) { return DAYS_IN_MONTH[month] } else //February { if (isLeapYear(year)) return 29; else return 28; } } var writeString = function(str) { enDivContainer.innerHTML = str; } function padZero(num) { return ((num <= 9) ? ("0" + num) : num); } function unPadZero(strNum) { return ((enUtils.startsWith(""+strNum,"0")) ? strNum.substr(1) : strNum); } var isLeapYear = function(year) { if (year%4==0 && ((year%100!=0) || (year%400==0))) return true; else return false; } }//end of construstor function if(!window.enCalendar)window.enCalendar=new enCalendarConstrustor();