function DFfield(fld,defOblig){ var T=this; T.obj=fld; T.t=fld.type; T.n=fld.name; T.tit=fld.getAttribute('title'); T.xt=fld.getAttribute('xtype'); T.minL=fld.getAttribute('minlength'); T.maxL=fld.getAttribute('maxlength'); T.equal=fld.getAttribute('equal'); T.rdif=fld.getAttribute('requiredif'); T.dIni=fld.getAttribute('DFdateIni'); T.dFin=fld.getAttribute('DFdateFin'); T.dBefore=fld.getAttribute('DFdateBefore'); T.dAfter=fld.getAttribute('DFdateAfter'); T.rangeMin=fld.getAttribute('rangeMin'); T.rangeMax=fld.getAttribute('rangeMax'); T.gt=fld.getAttribute('greaterThan'); T.lt=fld.getAttribute('lowerThan'); T.ob=(defOblig==true); var Tf=T.obj.form; if(T.t=='submit'||T.t=='button'||T.t=='image'||T.t=='reset'){ T.ob=false; }else{ var tAt=fld.getAttribute('obligatory'); if(tAt=='true'){ T.ob=true; }else if(tAt=='false'){ T.ob=false; }else if(T.rdif && T.rdif!=''){ T.ob=false; } if (T.ob==false && Tf[T.n].length>1) { for(var i=0;i29||(d==29&&((a%4)!=0)))) { return false; } return new Date(a,m,d); } function DFgetValSel(c,ind){ var i=c.selectedIndex; return(ind)? i:c[i].value; } var DFsbm=false; function DFgetValChk(c){ var i=c.checked; if (c.length == 0) { return c.value; } for(var j=0;j 1)){ for(var i=0;i1) { for(var i=0;i0) { return true; } } } T.obj.className='DF-alert'; }else { T.obj.className='DF-alert'; } if(T.equal) { Tf[T.equal].className='DF-alert'; } try { T.obj.focus(); } catch (e) { // In case the element is not visible, IE won't be able to set // the focus on it. You can handle this exception if you want } } if(scrTop!=DFscrollTopPosition()) { scrollBy(null,scrTop>DFscrollTopPosition()?-20:80); } if(m != null){ if(m==7){ var maxL=T.maxL; }else if(m==5){ var minL=T.minL; }else if(m==8){ var ext=T.ext; }else if(m==13){ this.greaterThan = Tf[T.gt].title; }else if(m==14){ this.lowerThan = Tf[T.lt].title; } S=eval(DFMsg[m]); }else{ if((T.t=='select-one'||T.t=='radio')&&!T.xt) { S=eval(DFMsg[0]); } else if(T.xt) { S=eval(DFMsg[2]); } else S=eval(DFMsg[1]); } alert(S); return false; } function DFalert(a,cArr){ var c1=((cArr[0].length>0)? cArr[0][0]:cArr[0]); DFclrClass(c1.form); for(var i=0;i 0){ if(T[0].type=='radio'||T[0].type=='checkbox'){ for(var j=0;jT.maxL)){ if(T.t=='textarea'){ T.obj.value=T.v[0].substr(0,T.maxL); if(isDef(T.obj.form.DFcounter)){ DFtextareaCounter(T.obj); } } return T.ckFrmAlert((T.t!='textarea')? 7:6); } return true; } function DFckFile(ext){ var e=ext.split(","); var v=this.v[0]; for(var i=0;i0&&v<32) { return true; } } function DFckDateMonth(v){ if(v>=0&&v<12) { return true; } } function DFckDateYear(v){ if(v>0&&trim(v).length==4&&parseInt(v,10)>=1900) { return true; } } function DFckDate() { var T=this; var Tdate=DFgetDateObject(T.v[0],T.v[1],T.v[2]); if(!Tdate)return Tdate; if(T.dIni||T.dFin) { if(T.xt=='datemmyyyy') { if(T.dIni) { T.dIni = '01/' + T.dIni; } if(T.dFin) { T.dFin = '01/' + T.dFin; } } var dI=T.dIni.split('/'); var dF=T.dFin.split('/'); var dI=(T.dIni)? DFgetDateObject(dI[0],dI[1],dI[2]):new Date(1900,00,01); var dF=(T.dFin)? DFgetDateObject(dF[0],dF[1],dF[2]):new Date(); if(Tdate < dI||Tdate > dF) { return false; } } return true; } function DFckCpf(v) { var s=null; var r=null; var a=null; if(v==null) { a=this.v; } else { a = new Array(); a[0]=v; } for(var j = 0; j < a.length; j++) { if(a[j].length != 11 || a[j].match(/1{11}|2{11}|3{11}|4{11}|5{11}|6{11}|7{11}|8{11}|9{11}|0{11}/)) { return false; } s = 0; for(var i = 0; i < 9; i++) { s += parseInt(a[j].charAt(i)) * (10-i); } r = 11 - (s % 11); if(r == 10 || r == 11) { r=0; } if(r != parseInt(a[j].charAt(9))) { return false; } s = 0; for(var i = 0; i < 10; i++) { s += parseInt(a[j].charAt(i)) * (11-i); } r = 11 - (s % 11); if(r == 10 || r == 11) { r = 0; } if(r != parseInt(a[j].charAt(10))) { return false; } } return true; } function DFckCnpj(v){ if(v==null) { v=this.v[0]; } if(v=='00000000000000') { return false; } var m=['543298765432','6543298765432']; var d=[0,0]; for(var t=0;t<2;t++){ for(x=0;x<13;x++){ if((t==0&&x!=12)||t==1)d[t]+=(parseInt(v.slice(x,x+1))*parseInt(m[t].slice(x,x+1))); } d[t]=(d[t]*10)% 11; if(d[t]==10)d[t]=0; } return(d[0]==parseInt(v.slice(12,13))&&d[1]==parseInt(v.slice(13,14))); } function DFtextareaMaxLen(f,l,e){ if(is.ns){ if(e.which==0||e.which==8) { return true; } } if(f.value.length>=l) { return false; } } function DFtextareaCounter(f){ f.form.DFcounter.value=f.value.length; } function DFonlyThisChars(n,l,o,e){ if(window.event) { key=window.event.keyCode; } else if(e) { key=e.which; } else { return true; } S=(o)?o:''; if(n) { S+='0123456789'; } if(l) { S+='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; } if(key==null||key==0||key==8||key==9||key==13||key==27) { return true; } else if(S.indexOf(String.fromCharCode(key))!=-1) { return true; } else { return false; } } function DFnotOnlyThisChars(S,e){ if(window.event) { key=window.event.keyCode; } else if(e) { key=e.which; } else { return true; } if(!S) { return false; } else if(key==null||key==0||key==8||key==9||key==13||key==27) { return true; } else if(S.indexOf(String.fromCharCode(key))!=-1) { return false; } else { return true; } } function DFchangeField(o,e,d){ if(window.event) { key=window.event.keyCode; } else if(e) { key=e.which; } else { return true; } if(key==9||key==2||key==16) { return false; } if(d<=2&&o.value.length==o.maxLength){ for(var i=0;i 1&&o.value.length==0&&key==8){ for(var i=0;i0;j--){ soma+=(mult*parseInt(v.substring(j,j-1),10)); mult++; if(mult>iCod) { mult=2; } } soma=(soma*10)%11; if(soma==10) { v+="0"; } else { v+=soma; } } return v.substring(v.length-d,v.length); } function DFckCpforcnpj(){ var v=this.v[0]; return (DFckCpf(v) || DFckCnpj(v)); } function DFckDatebefore() { var T=this; var Tdate=DFgetDateObject(T.v[0],T.v[1],T.v[2]); if(!Tdate) return Tdate; var dBefore = T.getDateFieldObject(T.dBefore); if(!dBefore) { return true; } if(dBefore > Tdate) { return T.ckFrmAlert(9); } return true; } function DFckDateafter() { var T=this; var Tdate=DFgetDateObject(T.v[0],T.v[1],T.v[2]); if(!Tdate) return Tdate; var dAfter = T.getDateFieldObject(T.dAfter); if(!dAfter) { return true; } if(Tdate > dAfter) { return T.ckFrmAlert(9); } return true; } function DFchangeClassFocus(a,c){ alert(a); clearClass(c.form); if(c.type=="radio"){ for(var i=0;i29 || (d==29&&((y%4)!=0)))) { return false; } return true; } function DFcheckDateDay(v){ if(v>=1&&v<=31) { return true; } } function DFcheckDateMonth(v){ if(v>=1&&v<=12) { return true; } } function DFcheckDateYear(v){ if(v>=1) { return true; } } function DFckRangemin() { var T = this; var v = parseFloat(T.v[0]); var min = parseFloat(T.rangeMin); if(v < min) { if(T.rangeMax) { return T.ckFrmAlert(10); } else { return T.ckFrmAlert(11); } } return true; } function DFckRangemax() { var T = this; var v = parseFloat(T.v[0]); var max = parseFloat(T.rangeMax); if(v > max) { if(T.rangeMin) { return T.ckFrmAlert(10); } else { return T.ckFrmAlert(12); } } return true; } function DFckGreaterthan(gt) { var T = this; var v = parseFloat(T.v[0]); var reference = parseFloat(gt.value); if(v < reference) { return T.ckFrmAlert(13); } return true; } function DFckLowerthan(lt) { var T = this; var v = parseFloat(T.v[0]); var reference = parseFloat(lt.value); if(v > reference) { return T.ckFrmAlert(14); } return true; }