var DataObject=function(data){this.data=data;this.formId=null;this.orig_fehler="";this.fehler=[];this.debug=function(txt){if(typeof jQuery.log=="function"){jQuery.log(txt)}};this.serialize=function(){return jQuery.param(this.data)};this.getVal=function(k){var wert=eval("this.data."+k);var _wert="";switch(wert){case"true":_wert=true;break;case"false":_wert=false;break;default:_wert=wert;break}return _wert};this.setVal=function(k,v){eval("this.data."+k+" = '"+v+"'")};this.completeDateInput=function(_datum){var seperators=["-","/","."];for(var i=0;i<seperators.length;i++){var sep=seperators[i];if(_datum.indexOf(sep)!=-1){break}}var firstSep=_datum.indexOf(sep);var aktDateObj=new Date();var month=aktDateObj.getMonth();month=month+1;var thisMonth=month;var today=aktDateObj.getDate();var year=aktDateObj.getFullYear();var regExtract=/[^0-9]*/;if(-1!=firstSep){var dateArray=_datum.split(sep);if(dateArray.length<=3){dateArray[0]=dateArray[0].replace(regExtract,"");if(typeof dateArray[1]=="string"&&""!=dateArray[1]){dateArray[1]=dateArray[1].replace(regExtract,"")}else{dateArray[1]=thisMonth.toString()}if(typeof dateArray[2]=="string"){dateArray[2]=dateArray[2].replace(regExtract,"")}else{dateArray[2]=year.toString()}if((dateArray[0]<=31)&&(dateArray[1]<=12)){if(dateArray[0].length==1){var day="0"+dateArray[0]}else{if(dateArray[0].length==2){var day=dateArray[0]}}if(dateArray[1].length==1){month="0"+dateArray[1]}else{if(dateArray[1].length==2){month=dateArray[1]}}if(dateArray[2]){if(dateArray[2].length==2){year="20"+dateArray[2]}else{if(dateArray[2].length==4){year=dateArray[2]}}}else{if(month<thisMonth){year=1+year}}}}}else{_datum=_datum.replace(regExtract,"");y1=_datum.substring(4,8);y2x=_datum.substring(2,4);y2=y2x-1;y3=_datum.substring(0,2);y4=0;y5=0;vd=new Date(y1,y2,y3,y4,y5,0);vn=new Date(vd.getTime());vz1=vn.getDate();vz2=vn.getMonth();if(vn.getFullYear){vz3=vn.getFullYear()}else{vz3=vn.getYear();if(vz3<1000){vz3+=1900}}vdm=new Date();nz1=vdm.getDate();nz2=vdm.getMonth();if(vdm.getFullYear){nz3=vdm.getFullYear()}else{nz3=vdm.getYear();if(nz3<1000){nz3+=1900}}if(y1.length<1){if(nz2>vz2){new_jahr=nz3+1}else{new_jahr=nz3}}else{new_jahr=vz3}if(y2x.length<1){if(nz1>y3){new_month=nz2+1}else{new_month=nz2}}else{new_month=vz2}if(new_jahr<2000){new_jahr+=100}new_day="0"+vz1.toString();xx=new Date(new_jahr,new_month,vz1,0,0,0);xd=new Date(xx.getTime());xd1=xd.getDate();xd1a="0"+xd1.toString();xd1b=xd1a.substring(xd1a.length-2,xd1a.length);xd2=xd.getMonth()+1;xd2a="0"+xd2.toString();xd2b=xd2a.substring(xd2a.length-2,xd2a.length);if(xd.getFullYear){xd3=xd.getFullYear()}else{xd3=xd.getYear();if(xd3<1000){xd3+=1900}}xd3a="0000"+xd3.toString();xd3b=xd3a.substring(xd3a.length-4,xd3a.length);if(xd1b!=y3&&xd2b!=y2&&y1==""&&(this.isSchaltjahr(new_jahr))){y2+=1;if(y2<10){y2="0"+y2.toString()}if(y3<10){y3="0"+y3.toString()}if(xd3b==y1){xd3b=Number(xd3b)+1}year=xd3b;month=y2;day=y3}else{year=xd3b;month=xd2b;day=xd1b}}var _fdate=day+"."+month+"."+year;if(!day){return null}else{return _fdate}};this.printError=function(){if(this.getVal("fehleranzeige")!=null){jQuery(this.getVal("fehleranzeige")).html(this.orig_fehler)}if(arguments.length==1&&typeof arguments[0]=="object"&&arguments[0]!=null){this.fehler=[];var errObj=arguments[0];if(errObj.text!=""){this.fehler.push(errObj.text);this.setVal("fehleranzeige",errObj.selector)}}if(this.getVal("fehleranzeige")!=null){var txt="";if(typeof this.orig_fehler!="undefined"&&this.orig_fehler!=""&&this.orig_fehler!="undefined"){txt=this.orig_fehler+"<br />"+this.fehler.join("<br />")}else{txt=this.fehler.join("<br />")}switch(this.getVal("fehleranzeige")){case"thickbox":if(this.fehler.length>0){alertBox(this.fehler.join("<br />"))}break;default:jQuery(this.getVal("fehleranzeige")).html(txt);break}}else{if(this.fehler.length>0){alert(this.fehler.join("\n"))}}};this.isSchaltjahr=function(jahr){newjahr=jahr/4;tmp=Math.ceil(newjahr);if(tmp>newjahr){return(false)}new_jahr1=jahr/100;new_jahr2=jahr/400;r_new_jahr1=Math.ceil(new_jahr1);r_new_jahr2=Math.ceil(new_jahr2);if(new_jahr1==r_new_jahr1&&new_jahr2!=r_new_jahr2){return(false)}return(true)}};
