var appName=navigator.appName;var appVer=parseInt(navigator.appVersion);var _CF_F;var _CF_E;var _CF_O;var obj;var msg;var field;var conv=0;var value;var m;var day;var mon;var year;var hour;var min;var sec;var num;
var input='';var pm='';var ok=true;var okfield='';var check=true;var today='';var now='';var language='D';var zeros='';var defaultyear=0;var wday=0;var numbers=30;var decimals=9;var dep='';var typ='';
var num_rest='';var format='';var tel_country='';var tel_number='';var old_name='';var old_value='';var old_check='';var buttons=new Array();var inputOk=new Array();var inputNeed=new Array();var noalert=0;var nocheck=0;
var day_e=new Array(7);var mon_e=new Array(13);day_e[0]='sunday';day_e[1]='monday';day_e[2]='thuesday';day_e[3]='wednesday';day_e[4]='thursday';day_e[5]='friday';day_e[6]='saturday';mon_e[1]='january';mon_e[2]='february';mon_e[3]='march';
mon_e[4]='april';mon_e[5]='may';mon_e[6]='june';mon_e[7]='july';mon_e[8]='august';mon_e[9]='september';mon_e[10]='october';mon_e[11]='november';mon_e[12]='december';var day_d=new Array(7);var mon_d=new Array(13);
day_d[0]='sonntag';day_d[1]='montag';day_d[2]='dienstag';day_d[3]='mittwoch';day_d[4]='donnerstag';day_d[5]='freitag';day_d[6]='samstag';mon_d[1]='januar';mon_d[2]='februar';mon_d[3]='märz';mon_d[4]='april';mon_d[5]='mai';mon_d[6]='juni';
mon_d[7]='juli';mon_d[8]='august';mon_d[9]='september';mon_d[10]='oktober';mon_d[11]='november';mon_d[12]='dezember';var day_n=new Array(7);var mon_n=new Array(13);day_n[0]='zondag';day_n[1]='maandag';day_n[2]='dinsdag';
day_n[3]='woensdag';day_n[4]='donderdag';day_n[5]='vrijdag';day_n[6]='zaterdag';mon_n[1]='januari';mon_n[2]='februari';mon_n[3]='maart';mon_n[4]='april';mon_n[5]='mei';mon_n[6]='juni';mon_n[7]='juli';mon_n[8]='augustus';mon_n[9]='september';
mon_n[10]='oktober';mon_n[11]='november';mon_n[12]='december';
function CF_Mon2Num(name){var n=name.toLowerCase();var l=n.length;for(var i=1;i<=12;i++){if(n==mon_e[i].substring(0,l)||n==mon_d[i].substring(0,l)||n==mon_n[i].substring(0,l)) return i;}return 0;}
function CF_Num2Mon(nr,size,lang){nr=parseInt(nr,10);var m='';if(!lang) lang=language;if(nr>0&&nr<13){m=mon_d[nr];if(lang=='E') m=mon_e[nr];if(lang=='N') m=mon_n[nr];
if(lang!='N') m=m.charAt(0).toUpperCase()+m.substring(1,size);else m=m.substring(0,size);}return m;}
function CF_Day2Num(name){var n=name.toLowerCase();var l=n.length;for(var i=0;i<=6;i++){if(n==day_e[i].substring(0,l)||n==day_d[i].substring(0,l)||n==day_n[i].substring(0,l)) return i;}return -1;}
function CF_Num2Day(nr,size,lang){nr=parseInt(nr,10);var d='';if(!lang) lang=language;if(nr>=0&&nr<=6){d=day_d[nr];if(lang=='E') d=day_e[nr];if(lang=='N') d=day_n[nr];if(lang!='N') d=d.charAt(0).toUpperCase()+d.substring(1,size);}return d;}
function CF_Consists(text,test){for(var i=0;i<text.length;i++)if(test.indexOf(text.charAt(i))<0) return false;return true;}
function CF_Contains(text,test){for(var i=0;i<text.length;i++)if(test.indexOf(text.charAt(i))>=0) return true;return false;}
function CF_GetMonthDays(m,y){m=parseInt(m,10);y=parseInt(y,10);d=31;if(m==2) if((!(y%4)&&(y%100))||!(y%400)) d=29;else d=28;if(m==4||m==6||m==9||m==11) d=30;return d;}
function CF_SetForm(form){if(!form) form=0;_CF_F=document.forms[form];if(!_CF_F) alert('ERROR: form \''+form+'\' not found');}
function CF_NoSpaces(S){return S.replace(/\s|\xA0|\r|\n/g,"");}
function CF_CleanStr(S){if(!S) return '';S=S.replace(/\r\n/g,"\n");S=S.replace(/\r/g,"\n");S=S.replace(/\xA0/g," ");var l=S.length;for(var s=0;(S.charAt(s)==' '||S.charAt(s)=='\n')&&s<l;s++);for(var e=l-1;(S.charAt(e)==' '|| S.charAt(e)=='\n')&&e>s;e--);
if(S.charAt(e)==' '||S.charAt(e)=='\n') S='';else S=S.substring(s,e+1);return S;}
function CF_IsNum(text){text=''+text;if(!text.length) return false;return CF_Consists(text,'0123456789');}
function CF_Focus(obj){var o=obj;if(!o.type) o=obj[0];if(o.type!='hidden'){if(o.style&&o.style.display=='none'&&document.all){o=document[o.form.name+'_IF_'+o.name];if(o) o.focus();}else o.focus();}else{if(firstgroupfield) firstgroupfield.focus();}}
function CF_GetObj(field){var obj=_CF_F.elements[field];if(!obj){alert('ERROR: Field \''+field+'\' not found');return (check=false);}var t=obj.type;if(!t){t=obj[0].type.toLowerCase();
if(t=='hidden'||t.indexOf('text')>-1||t=='password'||t.indexOf('select')>-1){alert('ERROR: more than one field \''+field+'\' found');return (check=false);}}return obj;}
function _CF_GetObjName(obj){var objname=obj.name;if(!obj.name&&obj[0]&&obj[0].name) objname=obj[0].name;return objname;}
function CF_ConvertValue(v){if(conv==1){CF_ReadDate(''+v);v=CF_Format('DATE');}if(conv==2){CF_ReadTime(''+v);v=CF_Format('TIME');}if(conv==3){num=CF_GetNum(''+v);v=CF_Format('NUMBER');}return v;}
function CF_ResolveKeywords(s){s=CF_Replace(s,'%FORMAT',format,false);s=CF_Replace(s,'%INPUT',input,false);s=CF_Replace(s,'%COUNTRY',tel_country,false);s=CF_Replace(s,'%TODAY',today,false);s=CF_Replace(s,'%NOW',now,false);return s;}
function CF_Resolve(v){if(v=='%TODAY') v=today;if(v=='%NOW') v=now;if(v.charAt(0)!='%') v=CF_ConvertValue(v);return v;}
function CF_GetLimit(obj,i){var v=obj.value.split('|');return CF_Resolve(CF_CleanStr(v[i]));}
function CF_Allowed(f){var s1;var s2;var x;var a=false;var v=value.toUpperCase();for(var i=f;i<val.length&&!a;i++){s1=CF_ResolveKeywords(val[i].toUpperCase());s2=v;x=s1.indexOf('*');var l1=s1.length;var l2=s2.length;
if(x>-1&&l1>1){s1=s1.substring(0,x)+s1.substring(x+1,l1);s2=s2.substring(0,x)+s2.substring(l2-l1+x+1,l2);}if(s1==s2) a=true;} return a;}
function CF_SetValue(){if(!noalert&&typ.indexOf('select')==-1&&value!='') obj.value=value;}
function CF_GetValue(multi){if(!obj) return '';var v='';var x=0;var t='';var y=0;if(obj.type) typ=obj.type.toLowerCase();else typ=obj[0].type.toLowerCase();if(typ.indexOf('select')>-1){y=1;
for(var i=0;obj.options[i];i++){if(obj.options[i].selected){t=obj.options[i].value;if(t=='') t=obj.options[i].text;if(x==multi) v=t;if(!multi&&multi!=0) v=v+t;x++;}}}if(typ=='submit'){y=1;}if(typ=='radio'||typ=='checkbox'){y=1;
if(obj.length){for(var i=0;i<obj.length;i++){if(obj[i].checked){if(x==multi) v=obj[i].value;x++;}}}else if(!multi&&obj.checked) v=obj.value;}if(typ.indexOf('text')>-1||typ=='hidden'||typ=='file'||typ=='password'){y=1;
if(!multi){v=obj.value;}}if(!y) alert('Unknown Type: '+typ);v=CF_CleanStr(v);return v;}
function CF_IsGroup(O){if(O.type=='hidden'&&O.value.substr(0,11)=='_form_group') return true;return false;}
function CF_GetGroupValue(multi){var val=CF_GetValue(multi);firstgroupfield = '';if(!CF_IsGroup(obj)) return val;var groupobj=obj;var felder = val.split('|');var f='';var val='';var need = '';for(i=1;i<felder.length;i++){f+=felder[i]+' / ';
obj=_CF_F.elements[felder[i]];if(i==1) firstgroupfield=obj;var ex=0;var O=_CF_E['exclude.'+groupobj.name];if(O) ex=1;if(obj){var v=CF_GetValue();
if(v){if(ex&&val&&check){_CF_O=obj=O;msg=O.value;CF_Alert('Please fil out/select only one field');}val+=v;}}}obj=groupobj;return val;}
function CF_Referer(o,i){obj=_CF_F.elements[o];if(o.charAt(0)>='A'&&obj){val[i]=CF_GetValue();if(val[i]==''){var name=_CF_GetObjName(obj);obj=_CF_E['date.'+name];if(obj) val[i]=CF_GetLimit(obj,i);obj=_CF_E['time.'+name];if(obj) val[i]=CF_GetLimit(obj,i);
obj=_CF_E['number.'+name];if(obj) val[i]=CF_GetLimit(obj,i);}return true;}return false;}
function CF_Get(){var a;conv=0;field=_CF_O.name.substr(_CF_O.name.indexOf('.')+1,255);if(_CF_E['date.'+field]) conv=1;if(_CF_E['time.'+field]) conv=2;if(_CF_E['number.'+field]) conv=3;var v=_CF_O.value=CF_CleanStr(_CF_O.value.replace(/\|+/g, "|"));
if(v=='-') v='';val=v.split('|');msg=val[0];if(val[1]) dep=val[1];for(var i=1;i<val.length;i++){val[i]=CF_CleanStr(val[i]);c=val[i].charAt(0);if(c=='%') val[i]=CF_Resolve(val[i]);else{if(c=='$'){var f=val[i].substring(1);
if(!CF_Referer(f,i)){alert('ERROR: field '+val[i]+' not found');}if(_CF_O.name.indexOf('depend.')==0){conv=0;if(_CF_E['date.'+f]) conv=1;if(_CF_E['time.'+f]) conv=2;if(_CF_E['number.'+f]) conv=3;}}else{a=false;
if(i==1&&_CF_O.name.indexOf('depend.')>=0) a=CF_Referer(val[i],i);if(!a) val[i]=CF_ConvertValue(val[i]);}}}return (obj=CF_GetObj(field));}
function CF_Depend(){var X=val;var objname=_CF_GetObjName(obj);_CF_O=_CF_F.elements['need.'+objname];var a=false;if(_CF_O&&_CF_O.value&&CF_Get()){a=CF_Allowed(1);}if(a) value='';_CF_O=_CF_F.elements['depend.'+objname];if(!_CF_O) return true;
if(!(CF_Get())) return false;var d=val;val=X;if(dep.charAt(0)=='$') dep=dep.substring(1);var v='';var b=false;var i=0;X=obj;obj=_CF_F.elements[dep];if(obj){var y=0;var t=CF_GetGroupValue(y++).toUpperCase();do{v=t;
for(i=2;d[i]&&!b;i++){if(v==d[i].toUpperCase()) b=true;}t=CF_GetValue(y++).toUpperCase();} while (!b&&t);}obj=X;if(i==2&&v) b=true;if(b) return m;if(!value){check=true;return false}m=CF_CleanStr(d[0]);if(!m) m='No input necessary';return true;}
function CF_PrepareMsg(msg){msg=CF_ResolveKeywords(msg);msg=msg.replace(/\$/g,'§');var m=msg+' ';m=m.replace(/\'|\"|\s|\n|\r|\.|%|!|\?|\(|\)|=/g,' ');var y=m.indexOf('§');var s;var f;var X=obj;do{s=m.indexOf(' ',y+1);if(s>0){f=m.substring(y,s);
obj=_CF_F.elements[f.substring(1,100)];s=CF_GetValue(0);if(s) msg=msg.replace(f,s);}y=m.indexOf('§',y+1);} while (y>=0);obj=X;msg=msg.replace(/\§/g,'$');return msg;}
function CF_Alert(alt,warn,depend){var o=obj;m=CF_CleanStr(msg);objn=_CF_GetObjName(obj);if(!m&&m!='#'){_CF_O=_CF_F.elements['date.'+objn];if(_CF_O&&!msg) CF_Get();_CF_O=_CF_F.elements['name.'+objn];if(_CF_O&&!msg) CF_Get();
_CF_O=_CF_F.elements['time.'+objn];if(_CF_O&&!msg) CF_Get();_CF_O=_CF_F.elements['email.'+objn];if(_CF_O&&!msg) CF_Get();_CF_O=_CF_F.elements['emails.'+objn];if(_CF_O&&!msg) CF_Get();_CF_O=_CF_F.elements['phone.'+objn];if(_CF_O&&!msg) CF_Get();
_CF_O=_CF_F.elements['number.'+objn];if(_CF_O&&!msg) CF_Get();_CF_O=_CF_F.elements['url.'+objn];if(_CF_O&&!msg) CF_Get();_CF_O=_CF_F.elements['need.'+objn];if(_CF_O&&!msg) CF_Get();m=CF_CleanStr(msg);}if(warn) alt=warn;if(!m) m=alt;
if(depend) depend=CF_Depend();else depend=true;if(depend&&m!='#'){if(val){for(var i=1;i<val.length;i++){if(val[i]!='') m=m.replace('\%'+i,CF_CleanStr(val[i]));}}m=m.replace(/\x0A/g,"");m=m.replace(/\\n/g, '\n');check=false;
m=CF_Replace(m,'%INPUT',input,false);m=CF_PrepareMsg(m);CF_setClass(o,inputNeed[_CF_F.name]);if(!noalert&&m!='-'){if(warn){check=confirm(m);if(!check) CF_Focus(o);}else{alert(m);CF_Focus(o);}}}}
function CF_GetNum(text){text=CF_CleanStr((''+text).replace(/,/g,'.'));if(text=='') return '';var num='';var i;var vz=1;var d;zeros='';var n=text.split('.');var c=n[0].charAt(0);if(c=='-') vz='<';else vz='>';
if(c<'0'||c>'9') n[0]=n[0].substring(1, n[0].length);if(CF_IsNum(n[0])){for(var i=0;i<n[0].length-1&&n[0].charAt(i)=='0';i++) zeros+='0';if(i<numbers) num=n[0].substring(i,numbers);}var a=CF_IsNum(n[1]);if(!num&&!a) return '';
d='';for(i=0;i<decimals;i++) d=d+'0';if(n[1]&&a) d=(n[1]+d).substring(0,decimals);num=num+''+d;var l=num.length;for(i=numbers+decimals;i>l;i--) vz=vz+'0';return vz+num;}
function CF_Replace(text,str,val,zero){if(text&&text.indexOf(str)>-1){tmp=''+val;if(zero&&tmp.length<2) tmp='0'+val;text=text.replace(str,tmp);}return text;}
function CF_Format(type,text){var n;var s;var i;format='';if(_CF_O&&_CF_O.name){var v=_CF_O.name.split('.');if(v[1]) n=v[1];else n=v[0];var ff=_CF_O.form.elements['format.'+n];if(ff) format=ff.value;}if(!format){if(type=='DATE') format='%DD-%MMM-%YYYY';
if(type=='TIME') format='%hh:%mm:%ss';if(type=='NUMBER') format='%99';}if(!text) text=format;if(!text) return '';text=CF_ResolveKeywords(text);if(type=='DATE'){var ad='n. Chr.';if(language=='E') ad='A.D.';var bc='v. Chr.';if(language=='E') bc='B.C.';
if(day&&mon){text=CF_Replace(text,'%GER_DATE','%D. %MON %YYYY',false);text=CF_Replace(text,'%ENG_DATE','%D%TH %MON %YYYY',false);if(text.indexOf("D%TH")>-1){s='th';if(day=='1'||day=='21'||day=='31') s='st';if(day=='2'||day=='22') s='nd';
if(day=='3'||day=='23') s='rd';text=text.replace(/D%TH/g, 'D'+s);}text=CF_Replace(text,'%DAY',CF_Num2Day(wday,12),false);text=CF_Replace(text,'%DDD',CF_Num2Day(wday,3),false);text=CF_Replace(text,'%DD',day,true);text=CF_Replace(text,'%D',day,false);
text=CF_Replace(text,'%MON',CF_Num2Mon(mon,12),false);text=CF_Replace(text,'%MMM',CF_Num2Mon(mon,3),false);text=CF_Replace(text,'%MM',mon,true);text=CF_Replace(text,'%M',mon,false);var y=year;if(year>=0){text=CF_Replace(text,'%YEAR',y+' '+ad,false);
text=CF_Replace(text,'%YYYY',('0000'+y).substr(y.length),false);text=CF_Replace(text,'%YY',y.substr(y.length-2),false);}else{y=''+(0-year);text=CF_Replace(text,'%YEAR',y+' '+bc,false);text=CF_Replace(text,'%YYYY','-'+('0000'+y).substr(y.length),false);
text=CF_Replace(text,'%YY','-'+y.substr(y.length-2),false);}text=CF_Replace(text,'%Y',year,false);}else text='';}if(type=='TIME'){if(hour!=''){text=CF_Replace(text,'%GER_TIME','%h:%mm:%ss',false);text=CF_Replace(text,'%ENG_TIME','%h:%mm:%ss %pm',false);
var h=parseInt(hour,10);if(text.indexOf('%pm')>0){if(h>=12){h-=12;pm='pm';}else pm='am';if(h==0) h=12;text=CF_Replace(text,'%pm',pm,true);}else pm='';text=CF_Replace(text,'%hh',''+h,true);text=CF_Replace(text,'%h',''+h,false);
text=CF_Replace(text,'%mm',min,true);text=CF_Replace(text,'%m',min,false);text=CF_Replace(text,'%ss',sec,true);text=CF_Replace(text,'%s',sec,false);}else text='';}if(type=='NUMBER'){format=CF_CleanStr(text);text=''+num;if(text=='') return '';
i=1;n=numbers;var d=0;var zahl=num.substring(1,200);var t='';var s='';var a='|';var v='';var z='';var x;var k='';var vz=num.charAt(0);if(format&&format.charAt(0)=='%'){x=format.charAt(i);if(x=='-'||x=='+'){z=x;i++;}else z='';x=format.charAt(i);
if(x==' '||x=='0'){a=x;i++;}else a='-';x=format.charAt(i);if(x=='t'){t=x;i++;}x=format.charAt(i);if(x>='0'&&x<='9'){n=parseInt(x,10);i++;}else{n=99;a='z';}x=format.charAt(i);if(x>='0'&&x<='9'){n=10*n+parseInt(x,10);i++;}x=format.charAt(i);
if(x=='.'||x==','){k=x;i++;}x=format.charAt(i);if(x>='0'&&x<='9'){d=parseInt(x,10);i++;}else d=0;}if(i<format.length) num_rest=format.substring(i);if(n<1||n>numbers) n=numbers;if(d>decimals) d=decimals;if(vz=='<') v='-';else{if(z=='-') v=' ';
if(z=='+') v='+';}var komma=',';if(language=='E') komma='.';if(!k) komma='';for(i=numbers-n;i<numbers-1&&zahl.charAt(i)=='0';i++){if(a==' '||a=='0') s=s+''+a;}z=zahl.substring(i,numbers);if(z=='') z='0';k=zahl.substring(numbers,numbers+d);
if(v!=''&&CF_Consists(z,'0')&&CF_Consists(k,'0')) v=' ';if(a==' ') s=s+v;var l=z.length;if(t&&l>3){if(language=='E') t=',';else t='.';x=parseInt(''+((l-1)/3));text=z;z=text.substring(0,l-x*3);
for(i=x;i>0;i--) z=z+t+text.substring(l-3*i,l-3*i+3);}s=s+z+komma+k;if(a=='z') s=zeros+s;if(a!=' ') s=v+s;text=s;}return text;}
function CF_ReadDate(value){var x=new Array(4);var m;var a;var y;var m;var d;var t=value.split(' ');if(CF_Day2Num(t[0])>-1) value=value.substr(t[0].length+1);t=value.split(',');if(t[1]) value=CF_CleanStr(t[1]);var date=new Date();
value=value.replace(/\xA0/g,' ');value=value.replace(/ +/g,' ');value=value.replace(/ |\. /g,'.');s='-';if(value.indexOf('.')>0) s='.';if(value.indexOf('/')>0) s='/';var t=value.split(s);if(!t[1]&&t[0]&&t[0].length>=8){t[2]=t[0].substring(0,4);
t[1]=t[0].substring(4,6);t[0]=t[0].substring(6,8);}if(t[2]==''&&t[3]>0) t[2]=0-t[3];for(var i=0;i<3;i++){if(!t[i]) t[i]='';x[i]=''+parseInt(t[i],10);if(x[i]=='NaN') x[i]='';
if(i<2&&x[i]==0) x[i]='';}if(s=='/'&&language!='N'){day=x[1];mon=x[0];}else{day=x[0];mon=x[1];}if(t[0].length>2){mon=''+CF_Mon2Num(t[0]);day=x[1];}if(t[1].length>2){mon=''+CF_Mon2Num(t[1]);day=x[0];}year=x[2];if(year=='') year=defaultyear;
y=parseInt(year,10);m=parseInt(mon,10);d=parseInt(day,10);if((value.indexOf('B.C.')>0||value.indexOf('v.Chr.')>0)&&y>0) y=0-y;if(shortyear){if(y<0) y=0;if(y>40&&y<200) y+=1900;if(y<=40) y+=2000;if(y>9999) y=9999;}year=''+y;
if(m>12&&m<32&&d<=12){a=mon;mon=day;day=a;a=m;m=d;d=a;}if(d<=0||d>CF_GetMonthDays(m,y)) day='';if(m<=0||m>12){mon='';}date.setDate(parseInt(day,10));date.setMonth(parseInt(mon,10)-1);date.setYear(parseInt(year,10));wday=date.getDay();}
function CF_ReadTime(value){hour='';min='';sec='';var x=new Array(4);var p='';var a;if(!value) return;if(value.indexOf('p')>0) p='p';if(value.indexOf('a')>0) p='a';value=value.replace(/\xA0|p|a|m/g,'');value=value.replace(/\./g,':');
if(value.length>=14) value=value.substring(8,14);var t=value.split(':');if(!t[1]&&t[0].length>2){value=value.substring(0,6);if(t[0].length % 2) t[0]='0'+t[0];t[2]=t[0].substring(4,6);t[1]=t[0].substring(2,4);
t[0]=t[0].substring(0,2);}for(var i=0;i<3;i++){if(!t[i]) t[i]='0';a=t[i];if(a&&a.length>1&&a.charAt(0)=='0') a=a.charAt(1);if(CF_IsNum(a)) x[i]=a;else x[i]='';if(i>0&&x[0]!=''&&!x[i]) x[i]='0';}hour=x[0];min=x[1];sec=x[2];if(sec){var s=parseInt(sec,10);
if(s<0||s>59) sec='';}if(min){var m=parseInt(min,10);if(m<0||m>59) min='';}if(hour){var h=parseInt(hour,10);if(p=='p'&&h<12) hour=''+(h+12);if(h==24||(p=='a'&&h==12)) hour='0';if(h>24) hour=''+(h%24);}}
function CF_ConvertDate(){if(!(CF_Get())) return;if(val[0].charAt(0)=='$') val[0]=val[0].substring(1,100);var dest=CF_GetObj(val[0]);if(!dest) return;if(!val[1]) val[1]='%YYYY%MM%DD';CF_ReadDate(obj.value);dest.value=CF_Format('DATE',val[1]);}
function CF_getDays(d,m,y){return (y*372+m*31+1*d) }
function CF_CheckDate(){var s=CF_getDays(1,1,1900);var e=CF_getDays(31,12,2100);if(!shortyear){s=CF_getDays(1,1,-9999);e=CF_getDays(31,12,9999);}if(!(CF_Get())) return;input=value=obj.value;if(!value) return;
if(val[1]){CF_ReadDate(val[1]);s=CF_getDays(day,mon,year);}if(val[2]){CF_ReadDate(val[2]);e=CF_getDays(day,mon,year);}CF_ReadDate(value);value=CF_Format('DATE');CF_SetValue();var d=CF_getDays(day,mon,year);var a=CF_Allowed(3);if(!day||!mon) a=true;
if(a||d<s||d>e||s>e||year==0){msg=CF_Format('DATE',msg);CF_Alert(value+' is not valid.\nPlease enter a valid date.');}}
function CF_CheckTime(){var s='000000';var e='235959';if(!(CF_Get())) return;input=value=obj.value;if(!value) return;
if(val[1]){CF_ReadTime(val[1]);s=CF_Format('TIME','%hh%mm%ss');}if(val[2]){CF_ReadTime(val[2]);e=CF_Format('TIME','%hh%mm%ss');}if(e=='000000') e='235959';CF_ReadTime(value);value=CF_Format('TIME');CF_SetValue();var t=CF_Format('TIME','%hh%mm%ss');
var a=CF_Allowed(3);if(!min||!sec) a=true;if(a||t<s||t>e){msg=CF_Format('TIME',msg);CF_Alert(value+' is not valid.\nPlease enter a valid time.');}}
function CF_CheckURL(){if(!(CF_Get())) return;input=value=CF_NoSpaces(obj.value);value=value.replace(/http\:\/\/|https\:\/\//ig,'');CF_SetValue();if(value=='') return;var a=CF_Allowed(1);if(CF_Contains(value,'+,\'´`\\*"@§\^°µ\|;<>()\[\]{}')) a=true;
if(value.indexOf('ftp:')>=0) a=true;var url=value.split('\/');url=url[0].split('\.');var l=url.length;if(a||l<2||url[0].length<2||l>1&&(url[1].length<2||url[l-2].length<1||url[l-1].length<2||url[l-1].length>4))CF_Alert('Please enter a valid URL.');}
function CF_CheckName(){if(!(CF_Get())) return;input=value=CF_CleanStr(obj.value);CF_SetValue();if(value=='') return;var a=CF_Allowed(1);var n=value.split(' ');var l=n.length;
if(a||l<2||n[0].length<2||l>1&&(n[1].length<2||n[l-1].length<2||CF_Contains(value,'0123456789?!$#+&:\\*"@§\^°µ\|;<>()\/_\[\]{}\'´`\%²³€~')))CF_Alert('Please enter a valid name.');}
function CF_CheckChars(){if(!(CF_Get())) return;input=value=CF_CleanStr(obj.value);CF_SetValue();if(value=='') return;var a=CF_Allowed(1);
if(a||CF_Contains(value,'0123456789?!$#+&:\\*"@§\^°µ\|;<>()\/_\[\]{}\'´`\%²³€~,.-'))CF_Alert('Please enter only valid chars.');}
function CF_CheckPhone(){var a;var s='';var c;var x;var l;var country='';var number='';if(!(CF_Get())) return;input=value=CF_CleanStr(obj.value);CF_SetValue();if(value=='') return;if(!CF_Consists(value,'0123456789 _/-()+')) a=true;else{x=1;l=value.length;
c=value.charAt(0);if(value.substring(0,2)=='00'||c=='+'){while (x<=l&&(c=='0'||c=='+')) c=value.charAt(x++);while (x<=l&&'0123456789'.indexOf(c)!=-1){country+=c;c=value.charAt(x++);}}while (x<=l&&'0123456789('.indexOf(c)==-1) c=value.charAt(x++);
while (x<=l&&'0123456789 _/-()'.indexOf(c)!=-1){number+=c;c=value.charAt(x++);}if(country) country='+'+country;if(country&&number) s=' / ';tel_country=country;tel_number=number;value=country+s+number;CF_SetValue();
a=CF_Allowed(1);}if(a||!value) CF_Alert('Please enter a valid phone number.');}
function CF_Swap(x){var s=x;if(x.charAt(0)=='<'){s='<';var l=x.length;for(var i=1;i<l;i++) s=s+('9'-x.charAt(i));}return s;}
function CF_CheckNumber(){if(!(CF_Get())) return;input=value=CF_CleanStr(obj.value);if(value=='') return;var x0='';if(val[1]) x0=CF_Swap(CF_GetNum(val[1]));var x1='';if(val[2]) x1=CF_Swap(CF_GetNum(val[2]));if(x0>x1){x=x0;x0=x1;x1=x};num=CF_GetNum(value);
value=CF_Format('NUMBER');num=CF_Swap(CF_GetNum(value));CF_SetValue();var a=CF_Allowed(3);if(num==''||a||(x0!=''&&num<x0)||(x1!=''&&num>x1))CF_Alert('Please enter a valid number.');}
function CF_CheckEmail(me){if(!(CF_Get())) return;value=obj.value.replace(/\s+|\r+|\n+|, /g,',');value=value.replace(/,+/g,', ');CF_SetValue();if(value=='') return;var a=CF_Allowed(1);var ea=new Array();if(me) ea=value.split(', ');else ea[0]=value;
for(var ec in ea) if(!a){input=ea[ec];if(CF_Contains(input,'!"#$%&\'()*+,/:;<=>?[\\]^`{|}~„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦¨§©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿€‚ƒ„')) a=true;var e=input.split('@');var le=e.length;var n=e[0].split('\.');var ln=n.length;
var p=e[le-1].split('\.');var lp=p.length;
if(a||le!=2||lp<2||p[0].length<1||lp>1&&(p[1].length<1||p[lp-2].length<1||p[lp-1].length<2||p[lp-1].length>4)||e[0].length<1||n[0].length<1||ln>1&&(n[ln-1].length<1)){CF_Alert("'%INPUT' is no valid email address.");a=true;}}}
function CF_CheckNeed(need){if(!(CF_Get())) return;var i=0;var a;var input=v=value=CF_GetGroupValue(i++);do{if(!CF_IsGroup(obj)) CF_SetValue();a=CF_Allowed(1);
if(v==''||a){if(need) CF_Alert('Please enter something','',true);else CF_Alert('','Nothing entered. Continue ?',true);}else{msg='#';if(need) CF_Alert('#','',true);else CF_Alert('','#',true);}v=value=CF_GetValue(i++);} while (check&&v);}
function CF_nocheck(){nocheck=1;}
function CF_setClass(o,c){if(o&&c){if(o.type&&o.type!='hidden'){if(o.className!=c) o.className=c;}}}
function push(a,v){a[a.length]=v;}
function CF_Init(){shortyear=1;var d=new Date();day=''+d.getDate();mon=''+(d.getMonth()+1);year=d.getYear();if(year<200) year+=1900;year=''+year;defaultyear = year;today=CF_Format('DATE','%YYYY%MM%DD');hour=''+d.getHours();min=''+d.getMinutes();
sec=''+d.getSeconds();now=CF_Format('TIME','%hh%mm%ss');if(document.forms[0]&&document.forms[0]._form_language) language=document.forms[0]._form_language.value.charAt(0).toUpperCase();
if(document.forms[0]&&document.forms[0]._form_shortyear) shortyear=parseInt(document.forms[0]._form_shortyear.value,10);if(document.forms[0]&&document.forms[0]._form_defaultyear) defaultyear=parseInt(document.forms[0]._form_defaultyear.value,10);
if((typeof _CF_depends)=='undefined'&&document.forms.length){_CF_depends = new Array();for(f=0;f<document.forms.length;f++){var F=document.forms[f];if(F){var Fn=F.name;_CF_depends[Fn] = new Array();
for(i=0;i<F.elements.length;i++){var O=F.elements[i];var n=O.name;var x=n.indexOf('.');if(x>-1){var type=n.substring(0,x);if(type=='depend'){var o=n.substring(x+1);var v=O.value;var d=v.substr(v.indexOf('|$')+2);var l=d.indexOf('|');
if(l>0) d=d.substr(0,l);if(d){if((typeof _CF_depends[Fn][d])=='undefined') _CF_depends[Fn][d]=new Array();push(_CF_depends[Fn][d],o);}}}}}}}}
function checkField_NR(this_obj,init){checkField(this_obj,init);}
function checkField(this_obj,init){if(nocheck) return true;noalert=0;if(init) noalert=1;obj=this_obj;conv=0;objname=_CF_GetObjName(obj);
if(!ok&&!okfield&&objname){ok=check=old_check=true;}if(!noalert&&!ok&&objname!=okfield){okfield='';return ok;}CF_Init();check=ok=true;okfield=objname;if(!obj.form) return ok;_CF_F=obj.form;_CF_E=_CF_F.elements;value=CF_GetValue();CF_SetValue();
if(!noalert&&value==old_value&&objname==old_name){ok=check=old_check;return ok;}old_name=objname;if(!noalert) old_value=value;_CF_O=_CF_E['warn.'+objname];if(check&&_CF_O) CF_CheckNeed(false);
_CF_O=_CF_E['need.'+objname];if(check&&_CF_O) CF_CheckNeed(true);_CF_O=_CF_E['date.'+objname];if(check&&_CF_O) CF_CheckDate();_CF_O=_CF_E['name.'+objname];if(check&&_CF_O) CF_CheckName();_CF_O=_CF_E['time.'+objname];if(check&&_CF_O) CF_CheckTime();
_CF_O=_CF_E['email.'+objname];if(check&&_CF_O) CF_CheckEmail(0);_CF_O=_CF_E['emails.'+objname];if(check&&_CF_O) CF_CheckEmail(1);_CF_O=_CF_E['phone.'+objname];if(check&&_CF_O) CF_CheckPhone();_CF_O=_CF_E['chars.'+objname];if(check&&_CF_O) CF_CheckChars();
_CF_O=_CF_E['number.'+objname];if(check&&_CF_O) CF_CheckNumber();_CF_O=_CF_E['url.'+objname];if(check&&_CF_O) CF_CheckURL();
_CF_O=_CF_E['convert.'+objname];if(check&&_CF_O){if(_CF_O.length){var A=_CF_O;for(var i=0;i<A.length;i++){_CF_O=A[i];if(check) CF_ConvertDate();}}else CF_ConvertDate();}if(!check) CF_setClass(obj,inputNeed[_CF_F.name]);else CF_setClass(obj,inputOk[_CF_F.name]);
if(_CF_depends[_CF_F.name]&&_CF_depends[_CF_F.name][objname]){var deps=_CF_depends[_CF_F.name][objname];for(var d=0;d<deps.length;d++){checkField(_CF_F.elements[deps[d]],1)}}obj=this_obj;conv=0;if(!noalert) old_value=CF_GetValue();
check_old=ok=check;return ok;}
function initForm(F,ok,need){if(document.forms[0]){if(!F) F=document.forms[0].name;if(!F) F='F1';if(document.forms[F]){if(!ok) ok='';if(!need) need='';inputOk[F] = ok;inputNeed[F] = need;checkForm('',F,1);}}}
function checkForm(secmsg,F,init){if(nocheck) return true;var i;var v;var n;var x;var type;noalert=0;if(init) noalert=1;old_check=check=ok=true;CF_SetForm(F);if(!_CF_F){check=false;
return check;}if((typeof hta_onSubmit)!='undefined') hta_onSubmit();CF_Init();if(_CF_F.CheckForm){if(_CF_F.CheckForm[0]){alert('ERROR: more than one field \'CheckForm\' found');check=false;}else{v=_CF_F.CheckForm.value;
if(!v){alert('ERROR: no value for \'CheckForm\' given');check=false;}else{v=v.split('|');x=v.length;i=0;while (check&&i<x){ok=true;old_name='';old_value='';if(!_CF_F.elements[v[i]]){alert('ERROR: field \''+v[i]+'\' not found');
check=false;}else check=CheckField(_CF_F.elements[v[i]],init);i++;}ok=true;old_name='';old_value='';}}}else{oldfeld='';for(i=0;i<_CF_F.elements.length&&check;i++){_CF_E=_CF_F.elements;_CF_O=_CF_E[i];n=_CF_O.name;
x=n.indexOf('.');if(x>-1){type=n.substring(0,x);feld=n.substring(x+1);obj='';if(feld!=oldfeld){cfo=_CF_O;_CF_O=_CF_E['warn.'+feld];if(check&&_CF_O) CF_CheckNeed(false);_CF_O=_CF_E['need.'+feld];if(check&&_CF_O) CF_CheckNeed(true);_CF_O=cfo;
if(check&&type=='date') CF_CheckDate();if(check&&type=='time') CF_CheckTime();if(check&&type=='name') CF_CheckName();if(check&&type=='email') CF_CheckEmail(0);if(check&&type=='emails') CF_CheckEmail(1);if(check&&type=='phone') CF_CheckPhone();
if(check&&type=='chars') CF_CheckChars();if(check&&type=='number') CF_CheckNumber();if(check&&type=='url') CF_CheckURL();if(check&&type=='convert') CF_ConvertDate();if(noalert){if(!check){oldfeld=feld;check=true;
CF_setClass(obj,inputNeed[_CF_F.name]);}else{CF_setClass(obj,inputOk[_CF_F.name]);}}else{if(!check) return check;}}}} if(check) Ask(secmsg);}return check;}
function Ask(msg){if(msg){var m=msg.replace(/\\n|\\r|\'|\"|\\/g, ' ')+' ';m=m.replace(/\%/g, ' %');x=m.indexOf('\%');while (x>-1){x++;y=m.indexOf(' ',x);if(y>x)var s=m.substring(x,y);obj=CF_GetObj(s);var value=CF_GetValue();s='%'+s;
msg=msg.replace(s,value);x=m.indexOf('\%',x);}check=confirm(msg);}return check;};CF_Init();
function CF_toggle(type, formname, fieldname, id, pic1, pic2, value, uncheck){CF_SetForm(formname);if(!_CF_F) return;var O=_CF_F.elements[fieldname];if(!O) return;var picname = 'PIC'+formname+fieldname+'R'+id;var pic = CF_getImage(picname);
if(O.value==value){if(uncheck){O.value='';pic.src=pic1;}else if(pic.src.indexOf(pic2)==-1) pic.src=pic2;}else{O.value=value;pic.src=pic2;if(type=='radio'){var i=0;do{i++;picname = 'PIC'+formname+fieldname+'R'+i;pic = CF_getImage(picname);
if(pic&&i!=id){if(pic.src.indexOf(pic2)>=0) pic.src=pic1;}} while (pic);}}}CF_textlengthok = new Array();
function CF_maxLengthTA(E,max){if(E.value.length > max){var o=CF_textlengthok[E.form.name+'.'+E.name];var n=E.value;if(o.length < n.length){var c=0;while (c<o.length&&o.charAt(c)==n.charAt(c)) c++;E.value=o;E.focus();
if(typeof document.selection!='undefined'){var range=document.selection.createRange();range.move('character', c-o.length);range.select();}else if(typeof E.selectionStart!='undefined'){var pos = E.selectionStart;E.selectionStart = c;
E.selectionEnd = c;}}}else CF_textlengthok[E.form.name+'.'+E.name] = E.value;}
function CF_getImage(name){var img=null;if(!img&&document.getElementById) img=document.images[name];if(!img&&document.layers) img=CF_findNN4image(document,name);if(!img&&document.all) img=document.all[name];return img;}
function CF_findNN4image(d,name){var i,img=null;for(i=0;i<d.images.length;i++) if(d.images[i].name==name) return d.images[i];for(i=0;i<d.layers.length;i++) if((img=CF_findNN4image(d.layers[i].document, name))!=null){img.container=d.layers[i];
return img;}return img;}
function _CF_getObj(f,o){var O='';var F=document.forms[f];if(F) O=F.elements[o];return O;}
function disableSubmit(F, button, rc, msg){B=_CF_getObj(F,button);if((typeof rc)=='undefined') rc=1;if(rc&&B){if(!msg) msg='Bitte warten';var n=B.value;if(!n){n='Daten abschicken';}buttons[F+'#'+button]=n;B.value=msg;B.disabled=true;}return rc;}
function enableSubmit(F, button){B=_CF_getObj(F,button);if(B){B.value=buttons[F+'#'+button];B.disabled=false;}}
function setLanguage(lang){language=lang.charAt(0).toUpperCase();}//shortyear MUSS über das hidden Feld _form_shortyear gesetzt werden!!!