﻿
var waitgif='<img class="waitgif" src="img/spacer.gif" width="20" height="20" alt="Bitte warten">';
var timoutgif='<img src="img/timeout.gif" width="20" height="20" alt="Fehler (Timeout)">';
var offerte;
var nextpersonid=1;
var btns={};
var emailDialog;
var zustellAdresseDialog;
var arbeitgeberDialog;
var TitleText;
var DomainText=new Array();
var waitdialog=new YAHOO.widget.Panel("wait",{width:"240px",
fixedcenter:true,
underlay:"shadow",
close:false,
draggable:false,
modal:true,
effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.5}});
var of;
var ExportTyp={Unknown:0,EMail:1,Post:2,PDF:3,InhousePrintOverEMail:4,Print:5,BomExport:6,ValsanaExport:7};
var _gaq=_gaq||[];
if(!window.console)console={};
console.log=console.log||function(){};
console.warn=console.warn||function(){};
console.error=console.error||function(){};
console.info=console.info||function(){};
var netque=function(){
var _requestQueue=[];
var _responses=[];
var _id=0;
var _processResponses=function(){
while(_requestQueue.length>0&&_requestQueue[0].requestComplete){
c=_requestQueue.shift();
if(c.success){
c.onSuccess.apply(null,[c.returnValue,c.context]);}else{
c.onFailure.apply(null,[c.returnValue,c.context]);}}}
var _onRequestSuccess=function(ret,context){
for(var i=0;i<_requestQueue.length;i++){
if(_requestQueue[i].id===context.id){
_requestQueue[i].returnValue=ret;
_requestQueue[i].success=true;
_requestQueue[i].requestComplete=true;
break;}}
_processResponses();};
var _onRequestFailure=function(ret,context){
for(var i=0;i<_requestQueue.length;i++){
if(_requestQueue[i].id===context.id){
_requestQueue[i].returnValue=ret;
_requestQueue[i].success=false;
_requestQueue[i].requestComplete=true;
break;}}
_processResponses();};
return{
request:function(f){
var args=[];
for(var i=1;i<arguments.length-3;i++){
args[i-1]=arguments[i];}
args[args.length]=_onRequestSuccess;
args[args.length]=_onRequestFailure;
args[args.length]={
onSuccess:arguments[arguments.length-3],onFailure:arguments[arguments.length-2],context:arguments[arguments.length-1],id:++_id};
f.apply(null,args);
_requestQueue.push(args[args.length-1]);}}}();
function initpage(){
offerte=new Offerte();
window.setInterval(autoSave,60000);
YAHOO.util.Dom.removeClass(document.getElementById('addperson_panel'),'invisible');
YAHOO.util.Event.addListener(document.getElementById('addperson'),'click',Person.cmdclick);
for(var i=Mandant.Buttons.length;--i>=0;){
var btn_obj=Mandant.Buttons[i];
if(btn_obj.visible){
var btn=new Button(btn_obj.name,btn_obj.icon,btn_obj.text,btn_obj.tooltip);
btn.setEnabled(false);
btn.onclick(Action[btn_obj.func]);
Action.add(btn);}}
if(!(document.getElementById('ShowSaveButton').innerHTML=='true')){
if(btns['Speichern']){
Action.remove(btns['Speichern']);}}
BAMBUS.cpw2.CountryToolbar.Init('country_toolbar');
if(Mandant.Toolbar.Laden.visible&&document.getElementById('ShowSaveButton').innerHTML.toLowerCase()=='true'){
var load=new ToolbarButton('Laden','img/open.gif',Localisation['js_toolbar_gespeicherte_offerten'],Localisation['js_toolbar_gespeicherte_offerten_tooltip']);
load.onclick(function(){location.href='ListOffert.aspx';});
load.setEnabled(true);
BAMBUS.cpw2.Toolbar.add(load);}
if(Mandant.Toolbar.LadenExtended.visible&&document.getElementById('ShowSaveButton').innerHTML.toLowerCase()=='true'){
var loadExtended=new ToolbarButton('Laden','img/open.gif',Localisation['js_toolbar_gespeicherte_offerten'],Localisation['js_toolbar_gespeicherte_offerten_tooltip']);
loadExtended.onclick(function(){location.href='ListOffertExtended.aspx';});
loadExtended.setEnabled(true);
BAMBUS.cpw2.Toolbar.add(loadExtended);}
if(Mandant.Toolbar.NeueOfferte.visible){
var newOffert=new ToolbarButton('NeueOfferte','img/new.gif',Localisation['js_toolbar_neue_offerte'],Localisation['js_toolbar_neue_offerte_tooltip']);
newOffert.onclick(function(){location.href='NewOffert.aspx';});
newOffert.setEnabled(false);
BAMBUS.cpw2.Toolbar.add(newOffert);}
if(document.getElementById('KundenNr')!=null){
var knr=document.getElementById('KundenNr');
offerte.setKundenNr(knr.innerHTML);}
BAMBUS.cpw2.Profile.load('AltersgrenzeArbEnabled');
BAMBUS.cpw2.Profile.load('AltersgrenzeArbSet');
setUpEmailDialog();
setUpZustellAdresseDialog();
setUpArbeitgeberDialog();
var anim=new YAHOO.util.Anim(document.getElementById('loading'),{opacity:{to:0}},0.5);
if(document.getElementById('loadthispersons')){
anim.onComplete.subscribe(loadPersons);}else{
anim.onComplete.subscribe(createNewPerson);}
anim.animate();
var onKvListRetreave=function(kvList){
if(!kvList||kvList.length==0)return;
offerte.kvList=kvList;
if(kvList.length==1){
offerte.setKollektivVertrag(kvList[0].Id);
return;}
var el_sel=document.createElement("SELECT");
YAHOO.util.Dom.addClass(el_sel,"toolbar_dropdown");
offerte.kollektivVertragSelect=new SelectComponent(el_sel);
for(var i=0;i<kvList.length;i++){
offerte.kollektivVertragSelect.addOption(kvList[i].Name,kvList[i].Id,null,kvList[i].Selected);}
var el_toolbar=BAMBUS.cpw2.Toolbar.getElement();
el_toolbar.appendChild(el_sel);
offerte.setKollektivVertrag(offerte.kollektivVertragSelect.value());
var onchange=function(e,sel){
if(Mandant.KollektivvertragVerhalten=='reinitPerson'){
offerte.setKollektivVertrag(sel.value());
if(offerte.personen[0].variante.length>0){
offerte.reinitPersons();}}else{
offerte.setKollektivVertrag(sel.value());
offerte.setDirtyAllProducts();
offerte.requestPrices();}};
YAHOO.util.Event.addListener(el_sel,"change",onchange,offerte.kollektivVertragSelect);};
if(Mandant.GoogleAnalytics.Enabled){
_gaq.push(['_setAccount',Mandant.GoogleAnalytics.Account],['_setDomainName',Mandant.GoogleAnalytics.Domain],['_trackPageview',Localisation['js_tracking_step1']]);}
if(Mandant.Tracking&&Mandant.Tracking().TrackStart){
Mandant.Tracking().TrackStart();}
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.GetKollektivVertraege,onKvListRetreave,OnError,null);}
function autoSave(){
if(offerte.getDirty()){
offerte.save();}}
function createNewPerson(){
var pers=new Person(true);
YAHOO.util.Dom.setStyle(pers.el,'opacity','0');
offerte.add(pers);
var anim=new YAHOO.util.Anim(pers.el,{opacity:{to:1}},0.5);
anim.animate();
anim.onComplete.subscribe(
function(){
var focusOK=false;
if(getElementsByAttribute('name','plz','input',pers.el)[0].className.indexOf('hidden')==-1){
getElementsByAttribute('name','plz','input',pers.el)[0].focus();
focusOK=true;}
if(!focusOK&&getElementsByAttribute('name','jahrgang','input',pers.el)[0].className.indexOf('hidden')==-1){
getElementsByAttribute('name','jahrgang','input',pers.el)[0].focus();
focusOK=true;}
if(!focusOK&&getElementsByAttribute('name','VertragsBeginn','input',pers.el)[0].className.indexOf('hidden')==-1){
getElementsByAttribute('name','VertragsBeginn','input',pers.el)[0].focus();
focusOK=true;}});}
function loadPersons(){
waitdialog.setHeader(Localisation['js_loading_bitte_warten']);
waitdialog.setBody('<img class="waitdialog" src="./img/wait.gif"/>');
waitdialog.render(document.body);
waitdialog.show();
of=eval('('+document.getElementById('loadthispersons').innerHTML+')');
if(of.KollektivVertragId)offerte.setKollektivVertrag(of.KollektivVertragId);
var pers;
var p_data;
var elem;
var elemText;
for(var i=0;i<of.Personen.length;i++){
p_data=of.Personen[i];
pers=new Person(p_data.IsHP,p_data.Id);
offerte.add(pers);
pers.setOrte([p_data.Ort]);
pers.setPLZ(p_data.Ort.PLZ);
pers.setJahrgang(p_data.BirthYear);
pers.setGeschlecht(p_data.Geschlecht);
pers.setUnfall(p_data.Unfall);
pers.setVertragsBeginn(p_data.VertragsBeginn);
pers.personalien.setValue('Vorname','input',null,p_data.Vorname);
pers.personalien.setValue('Nachname','input',null,p_data.Nachname);
pers.personalien.setValue('Zivilstand','input',null,p_data.Zivilstand);
pers.personalien.setValue('Beruf','input',null,p_data.Beruf);
pers.personalien.setValue('Nationalitaet','input',null,p_data.Nationalitaet);
pers.personalien.setValue('Aufenthaltsbewilligung','input',null,p_data.Aufenthaltsbewilligung);
pers.personalien.setValue('AhvNr','input',null,p_data.AhvNr);
pers.personalien.setValue('isKunde','input',null,p_data.IsKunde);
pers.personalien.setValue('PoliceNr','input',null,p_data.PolicenNr||'');
pers.personalien.setValue('VersichertenNr','input',null,p_data.VersichertenNr||'');
pers.personalien.setPolicenNrXabled();
pers.personalien.setValue('VorversKvgId','select',null,p_data.VorversKvgId);
pers.personalien.setValue('VorversKvg','input',null,p_data.VorversKvg);
pers.personalien.setValue('VorversKvgGekuendigtId','select',null,p_data.VorversKvgGekuendigtId);
pers.personalien.setValue('VorversKvgGekuendigtDatum','input',null,p_data.VorversKvgGekuendigtDatum);
pers.personalien.setVorversKvgXabled();
pers.personalien.setVorversKvgGekuendigtIdXabled();
pers.personalien.setValue('VorversVvg','input',null,p_data.VorversVvg);
pers.personalien.setValue('VorversVvgGekuendigtId','select',null,p_data.VorversVvgGekuendigtId);
pers.personalien.setValue('VorversVvgGekuendigtDatum','input',null,p_data.VorversVvgGekuendigtDatum);
pers.personalien.setVorversVvgXabled();
pers.personalien.setVorversVvgGekuendigtIdXabled();
pers.personalien.setValue('VorversAusland','input',null,p_data.VorversAusland);
pers.personalien.setValue('VorversAuslandImigrationDatum','input',null,p_data.VorversAuslandImigrationDatum);
pers.personalien.setValue('VorversAuslandGekuendigtDatum','input',null,p_data.VorversAuslandGekuendigtDatum);
pers.personalien.setVorversAuslandXabled();
pers.personalien.setValue('Bemerkung','textarea',null,p_data.Bemerkung);
pers.personalien.setValue('Geb-Tag','input',null,p_data.BirthDay);
pers.personalien.setValue('Geb-Monat','input',null,p_data.BirthMonth);
if(p_data.IsHP){
pers.personalien.setValue('Strasse','input',null,of.Strasse);
pers.personalien.setValue('AdressZusatz','input',null,of.AdressZusatz);
pers.personalien.setValue('telefon','input',null,of.Telefon);
pers.personalien.setValue('telefonG','input',null,of.TelefonG);
pers.personalien.setValue('telefonM','input',null,of.TelefonM);
pers.personalien.setValue('email','input',null,of.Email);
if(document.getElementById('SendToEmail').innerHTML==""){
pers.personalien.setValue('emailVersand','input',null,of.EmailVersand);}
pers.personalien.setValue('zustellAdrAnredeId','input',null,of.ZustellAdrAnredeId);
pers.personalien.setValue('zustellAdrName','input',null,of.ZustellAdrName);
pers.personalien.setValue('zustellAdrVorname','input',null,of.ZustellAdrVorname);
pers.personalien.setValue('zustellAdrStrasse','input',null,of.ZustellAdrStrasse);
pers.personalien.setValue('zustellAdrAdressZusatz','input',null,of.ZustellAdrAdressZusatz);
pers.personalien.setValue('zustellAdrPlz','input',null,of.ZustellAdrPlz);
pers.personalien.setValue('zustellAdrOrt','input',null,of.ZustellAdrOrt);
pers.personalien.setValue('zustellAdrZeile','input',null,of.ZustellAdrZeile);
elem=pers.personalien.getElement('zustellAdrZeileDisplay');
while(elem.firstChild){
elem.removeChild(elem.firstChild);}
elemText=document.createTextNode(of.ZustellAdrZeile);
elem.appendChild(elemText);
pers.personalien.setValue('arbeitgeberName','input',null,of.ArbeitgeberName);
pers.personalien.setValue('arbeitgeberNameZusatz','input',null,of.ArbeitgeberNameZusatz);
pers.personalien.setValue('arbeitgeberStrasse','input',null,of.ArbeitgeberStrasse);
pers.personalien.setValue('arbeitgeberAdressZusatz','input',null,of.ArbeitgeberAdressZusatz);
pers.personalien.setValue('arbeitgeberPlz','input',null,of.ArbeitgeberPlz);
pers.personalien.setValue('arbeitgeberOrt','input',null,of.ArbeitgeberOrt);
pers.personalien.setValue('arbeitgeberZeile','input',null,of.ArbeitgeberZeile);
elem=pers.personalien.getElement('arbeitgeberZeileDisplay');
while(elem.firstChild){
elem.removeChild(elem.firstChild);}
elemText=document.createTextNode(of.ArbeitgeberZeile);
elem.appendChild(elemText);
pers.personalien.setValue('arbeitgeberBranche','input',null,of.ArbeitgeberBranche);
pers.personalien.setValue('arbeitgeberUVGNr','input',null,of.ArbeitgeberUVGNr);
pers.personalien.setValue('arbeitgeberRechtsform','input',null,of.ArbeitgeberRechtsform);
pers.personalien.setValue('arbeitgeberHandelsregistereintrag','select',null,of.ArbeitgeberHandelsregisterEintrag);
pers.personalien.setValue('bankName','input',null,of.BankName);
pers.personalien.setValue('bankPostcheckNr','input',null,of.BankPostcheck);
pers.personalien.setValue('bankKontoNr','input',null,of.BankKontoNr);
pers.personalien.setValue('newsletterElektronisch','input',null,of.MarketingNLElektronisch=="True"?true:false);
pers.personalien.setValue('newsletterEmailAdresse','input',null,of.MarketingNLEmailAdresse);
pers.personalien.setValue('newsletterPost','input',null,of.MarketingNLPost=="True"?true:false);
pers.personalien.setValue('newsletterPostAnzahl','input',null,of.MarketingNLPostAnzahl);
pers.personalien.setValue('zustaendigePerson','input',null,of.PersonZustaendig);
pers.personalien.setValue('Zustellung_'+pers.id,'input',2,of.PrintZustellung);}
YAHOO.util.Dom.addClass(pers.el,'loading_person');
for(var j=0;j<of.Personen[i].VarianteCount;j++){
var elroot=YAHOO.util.Dom.getElementsByClassName('person_product_detail',null,pers.el)[0];
pers.variante[j]=new Variante(pers,j,elroot);}
pers.updateVarianteAddState();}
offerte.personen[0].requestDetail(0);}
function setUpEmailDialog(){
var handleCancel=function(){this.cancel();};
var handleSubmit=function(){this.submit();};
var buttons=[{text:Localisation['js_button_ok'],handler:handleSubmit,isDefault:true},{text:Localisation['js_button_cancel'],handler:handleCancel}];
emailDialog=new YAHOO.widget.Dialog('EnterEmail',{postmethod:'none',modal:true,visible:false,width:"350px",fixedcenter:true,constraintoviewport:true,draggable:false});
var lsnrESC=new YAHOO.util.KeyListener(document,{keys:27},{fn:handleCancel,scope:emailDialog,correctScope:true});
var lsndRET=new YAHOO.util.KeyListener(document,{keys:13},{fn:handleSubmit,scope:emailDialog,correctScope:true});
emailDialog.cfg.queueProperty('buttons',buttons);
emailDialog.cfg.queueProperty("keylisteners",[lsnrESC,lsndRET]);
var handleManual=function(type,args,obj){
var email=this.getData().email;
if(CheckEmail(email)){
this.hide();
offerte.getHauptpolice().personalien.setValue('email','input',null,email);
if(offerte.exportToEnterprise(ExportTyp.EMail)){
waitdialog.setHeader(Localisation['js_button_email_sende_bitte_warten']);
waitdialog.setBody('<img class="waitdialog" src="./img/wait.gif"/>');
waitdialog.render(document.body);
waitdialog.show();}}else{
alert(Localisation['js_error_keine-gültige-email']);}};
emailDialog.manualSubmitEvent.subscribe(handleManual,emailDialog,true);
emailDialog.cfg.setProperty('postmethod','none');
emailDialog.render();}
function setUpZustellAdresseDialog(){
var handleCancel=function(){this.cancel();};
var handleSubmit=function(){this.submit();};
var buttons=[{text:Localisation['js_button_ok'],handler:handleSubmit,isDefault:true},{text:Localisation['js_button_cancel'],handler:handleCancel}];
zustellAdresseDialog=new YAHOO.widget.Dialog('EnterZustellAdresse',{postmethod:'none',modal:true,visible:false,width:"500px",fixedcenter:true,constraintoviewport:true,draggable:false});
var lsnrESC=new YAHOO.util.KeyListener(document,{keys:27},{fn:handleCancel,scope:zustellAdresseDialog,correctScope:true});
var lsndRET=new YAHOO.util.KeyListener(document,{keys:13},{fn:handleSubmit,scope:zustellAdresseDialog,correctScope:true});
zustellAdresseDialog.cfg.queueProperty('buttons',buttons);
zustellAdresseDialog.cfg.queueProperty("keylisteners",[lsnrESC,lsndRET]);
var handleManual=function(type,args,obj){
this.hide();
var anrede=this.getData().anrede[0];
offerte.getHauptpolice().personalien.setValue('zustellAdrAnredeId','input',null,anrede);
var name=this.getData().name;
offerte.getHauptpolice().personalien.setValue('zustellAdrName','input',null,name);
var vorname=this.getData().vorname;
offerte.getHauptpolice().personalien.setValue('zustellAdrVorname','input',null,vorname);
var strasse=this.getData().strasse;
offerte.getHauptpolice().personalien.setValue('zustellAdrStrasse','input',null,strasse);
var adresszusatz=this.getData().adresszusatz;
offerte.getHauptpolice().personalien.setValue('zustellAdrAdressZusatz','input',null,adresszusatz);
var plz=this.getData().plz;
offerte.getHauptpolice().personalien.setValue('zustellAdrPlz','input',null,plz);
var ort=this.getData().ort;
offerte.getHauptpolice().personalien.setValue('zustellAdrOrt','input',null,ort);
var adrZeile='';
if(name!=''||vorname!=''){
adrZeile=name+' '+vorname;
if(strasse!='')adrZeile=adrZeile+' / '+strasse;
if(adresszusatz!='')adrZeile=adrZeile+' / '+adresszusatz;
adrZeile=adrZeile+' / '+plz+' '+ort;}
offerte.getHauptpolice().personalien.setValue('zustellAdrZeile','input',null,adrZeile);
var elem=offerte.getHauptpolice().personalien.getElement('zustellAdrZeileDisplay');
while(elem.firstChild){
elem.removeChild(elem.firstChild);}
var elemText=document.createTextNode(adrZeile);
elem.appendChild(elemText);};
zustellAdresseDialog.manualSubmitEvent.subscribe(handleManual,zustellAdresseDialog,true);
zustellAdresseDialog.cfg.setProperty('postmethod','none');
zustellAdresseDialog.render();}
function zustellAdresseDialogAnzeigen(){
zustellAdresseDialog.form.anrede.value=offerte.getHauptpolice().personalien.getValue('zustellAdrAnredeId','input');
zustellAdresseDialog.form.name.value=offerte.getHauptpolice().personalien.getValue('zustellAdrName','input',100);
zustellAdresseDialog.form.vorname.value=offerte.getHauptpolice().personalien.getValue('zustellAdrVorname','input',100);
zustellAdresseDialog.form.strasse.value=offerte.getHauptpolice().personalien.getValue('zustellAdrStrasse','input',100);
zustellAdresseDialog.form.adresszusatz.value=offerte.getHauptpolice().personalien.getValue('zustellAdrAdressZusatz','input',100);
zustellAdresseDialog.form.plz.value=offerte.getHauptpolice().personalien.getValue('zustellAdrPlz','input',8);
zustellAdresseDialog.form.ort.value=offerte.getHauptpolice().personalien.getValue('zustellAdrOrt','input',100);
zustellAdresseDialog.show();}
function setUpArbeitgeberDialog(){
var handleCancel=function(){this.cancel();};
var handleSubmit=function(){this.submit();};
var buttons=[{text:Localisation['js_button_ok'],handler:handleSubmit,isDefault:true},{text:Localisation['js_button_cancel'],handler:handleCancel}];
arbeitgeberDialog=new YAHOO.widget.Dialog('EnterArbeitgeber',{postmethod:'none',modal:true,visible:false,width:"500px",fixedcenter:true,constraintoviewport:true,draggable:false});
var lsnrESC=new YAHOO.util.KeyListener(document,{keys:27},{fn:handleCancel,scope:arbeitgeberDialog,correctScope:true});
var lsndRET=new YAHOO.util.KeyListener(document,{keys:13},{fn:handleSubmit,scope:arbeitgeberDialog,correctScope:true});
arbeitgeberDialog.cfg.queueProperty('buttons',buttons);
arbeitgeberDialog.cfg.queueProperty("keylisteners",[lsnrESC,lsndRET]);
var handleManual=function(type,args,obj){
this.hide();
var name=this.getData().name;
offerte.getHauptpolice().personalien.setValue('arbeitgeberName','input',null,name);
var namezusatz=this.getData().namezusatz;
offerte.getHauptpolice().personalien.setValue('arbeitgeberNameZusatz','input',null,namezusatz);
var strasse=this.getData().strasse;
offerte.getHauptpolice().personalien.setValue('arbeitgeberStrasse','input',null,strasse);
var adresszusatz=this.getData().adresszusatz;
offerte.getHauptpolice().personalien.setValue('arbeitgeberAdressZusatz','input',null,adresszusatz);
var plz=this.getData().plz;
offerte.getHauptpolice().personalien.setValue('arbeitgeberPlz','input',null,plz);
var ort=this.getData().ort;
offerte.getHauptpolice().personalien.setValue('arbeitgeberOrt','input',null,ort);
var adrZeile='';
if(name!=''||namezusatz!=''){
adrZeile=name+' '+namezusatz;
if(strasse!='')adrZeile=adrZeile+' / '+strasse;
if(adresszusatz!='')adrZeile=adrZeile+' / '+adresszusatz;
adrZeile=adrZeile+' / '+plz+' '+ort;}
offerte.getHauptpolice().personalien.setValue('arbeitgeberZeile','input',null,adrZeile);
var elem=offerte.getHauptpolice().personalien.getElement('arbeitgeberZeileDisplay');
while(elem.firstChild){
elem.removeChild(elem.firstChild);}
var elemText=document.createTextNode(adrZeile);
elem.appendChild(elemText);};
arbeitgeberDialog.manualSubmitEvent.subscribe(handleManual,arbeitgeberDialog,true);
arbeitgeberDialog.cfg.setProperty('postmethod','none');
arbeitgeberDialog.render();}
function arbeitgeberDialogAnzeigen(){
arbeitgeberDialog.form.name.value=offerte.getHauptpolice().personalien.getValue('arbeitgeberName','input',100);
arbeitgeberDialog.form.namezusatz.value=offerte.getHauptpolice().personalien.getValue('arbeitgeberNameZusatz','input',100);
arbeitgeberDialog.form.strasse.value=offerte.getHauptpolice().personalien.getValue('arbeitgeberStrasse','input',100);
arbeitgeberDialog.form.adresszusatz.value=offerte.getHauptpolice().personalien.getValue('arbeitgeberAdressZusatz','input',100);
arbeitgeberDialog.form.plz.value=offerte.getHauptpolice().personalien.getValue('arbeitgeberPlz','input',8);
arbeitgeberDialog.form.ort.value=offerte.getHauptpolice().personalien.getValue('arbeitgeberOrt','input',100);
arbeitgeberDialog.show();}
var Action={};
Action.print=function(){
if(Mandant.GoogleAnalytics.Enabled){
_gaq.push(['_trackPageview',Localisation['js_tracking_offertedrucken']]);}
if(Mandant.Tracking&&Mandant.Tracking().TrackPrint){
Mandant.Tracking().TrackPrint();}
var w=640;
var h=500;
var id=YAHOO.util.Dom.generateId(null,'wnd');
var newwindow=window.open('Print.aspx',id,'menubar=yes,scrollbars=yes,resizable=yes,width='+w+',height='+h+',left='+((screen.width-w)/2)+',top='+((screen.height-h)/2));
if(!newwindow.opener)newwindow.opener=self;};
Action.mail=function(email){
emailDialog.show();};
Action.save=function(){
offerte.save();};
Action.antrag=function(){
var answer=offerte.isComplete();
if(!answer)return;
if(Mandant.GoogleAnalytics.Enabled){
_gaq.push(['_trackPageview',Localisation['js_tracking_step2']]);}
if(Mandant.Tracking&&Mandant.Tracking().TrackAntrag){
Mandant.Tracking().TrackAntrag();}
var attributes={
scroll:{to:[0,0]}};
var anim=new YAHOO.util.Scroll(document.getElementsByTagName('html')[0],attributes,0.5);
anim.animate();
for(var i=0;i<offerte.personen.length;i++){
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'new_person','personalien');
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'inactive_person','personalien');
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'active_person','personalien');}
for(var button in btns){
btns[button].setVisible(false);}
var export_cancel=new Button('Export_Cancel','cancel',Localisation['js_button_cancel'],Localisation['js_personalien_button_cancel_tooltip']);
export_cancel.onclick(Action.cancelExport);
export_cancel.setVisible(true);
Action.add(export_cancel);
var export_ok=new Button('Export_Ok','ok',Localisation['js_button_ok'],Localisation['js_personalien_button_ok_tooltip']);
export_ok.onclick(Action.doExport);
export_ok.setVisible(true);
Action.add(export_ok);
if(getElementsByAttribute('name','Vorname','input',offerte.personen.el)[0].className.indexOf('nofocus')==-1){
offerte.personen[0].getPersonalien().getElement('Vorname','INPUT').focus();}else if(getElementsByAttribute('name','arbeitgeberName','input',offerte.personen.el)[0].className.indexOf('hidden')==-1&&
offerte.personen[0].getPersonalien().getElement('arbeitgeberName','INPUT').className.indexOf('dynamicInvisible')==-1){
offerte.personen[0].getPersonalien().getElement('arbeitgeberName','INPUT').focus();}
offerte.setUiStatusNr(3);};
Action.doExport=function(){
if(Mandant&&Mandant.GoogleAnalytics&&Mandant.GoogleAnalytics.Enabled){
_gaq.push(['_trackPageview',Localisation['js_tracking_offerteerstellen']]);}
if(Mandant.Tracking&&Mandant.Tracking().TrackExport){
Mandant.Tracking().TrackExport();}
var p=offerte.personen[0];
if(p.personalien.getValue('Zustellung_'+p.id,'input',0)){
if(offerte.exportToEnterprise(ExportTyp.PDF,Mandant.DoExportCheckField,
function(resp){
if(!newwindow.closed&&newwindow.location){
newwindow.location.href='PdfOfferte.aspx?id='+resp.JobId;
offerte.setKundenNr(resp.KundenNr);}})){
var w=438;
var h=500;
var id=YAHOO.util.Dom.generateId(null,'wnd');
var newwindow=window.open('PdfOfferte.aspx',id,'menubar=yes,scrollbars=yes,resizable=yes,width='+w+',height='+h+',left='+((screen.width-w)/2)+',top='+((screen.height-h)/2));
if(!newwindow.opener)newwindow.opener=self;
Action.remove(Action.get('Export_Ok'));
Action.remove(Action.get('Export_Cancel'));
for(var button in btns){
btns[button].setVisible(true);}
offerte.personen[0].getPersonalien().setEmailIsMandatory(true);
offerte.personen[0].getPersonalien().setZustellungVisible(true);
for(var i=0;i<offerte.personen.length;i++){
if(i==0||Mandant.MaxVariantenCount>1){
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'personalien','active_person');}else{
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'personalien','inactive_person');}}}}else{
if(p.personalien.getValue('Zustellung_'+p.id,'input',null,1)){
if(offerte.exportToEnterprise(ExportTyp.EMail,true)){
var el_icon=YAHOO.util.Dom.getElementsByClassName('action_icon',null,Action.get('Export_Ok').el)[0];
YAHOO.util.Dom.replaceClass(el_icon,'ok','wait');
Action.get('Export_Cancel').setEnabled(false);
Action.get('Export_Ok').setEnabled(false);}}else if(p.personalien.getValue('Zustellung_'+p.id,'input',null,2)){
if(offerte.exportToEnterprise(ExportTyp.Post,true)){
var el_icon2=YAHOO.util.Dom.getElementsByClassName('action_icon',null,Action.get('Export_Ok').el)[0];
YAHOO.util.Dom.replaceClass(el_icon2,'ok','wait');
Action.get('Export_Cancel').setEnabled(false);
Action.get('Export_Ok').setEnabled(false);}}else if(p.personalien.getValue('Zustellung_'+p.id,'input',null,3)){
if(offerte.exportToEnterprise(ExportTyp.InhousePrintOverEMail,true)){
var el_icon3=YAHOO.util.Dom.getElementsByClassName('action_icon',null,Action.get('Export_Ok').el)[0];
YAHOO.util.Dom.replaceClass(el_icon3,'ok','wait');
Action.get('Export_Cancel').setEnabled(false);
Action.get('Export_Ok').setEnabled(false);}}else if(p.personalien.getValue('Zustellung_'+p.id,'input',null,4)){
if(offerte.exportToEnterprise(ExportTyp.Print,true)){
var el_icon4=YAHOO.util.Dom.getElementsByClassName('action_icon',null,Action.get('Export_Ok').el)[0];
YAHOO.util.Dom.replaceClass(el_icon4,'ok','wait');
Action.get('Export_Cancel').setEnabled(false);
Action.get('Export_Ok').setEnabled(false);}}else if(p.personalien.getValue('Zustellung_'+p.id,'input',null,5)){
if(offerte.exportToEnterprise(ExportTyp.BomExport,true)){
var el_icon5=YAHOO.util.Dom.getElementsByClassName('action_icon',null,Action.get('Export_Ok').el)[0];
YAHOO.util.Dom.replaceClass(el_icon5,'ok','wait');
Action.get('Export_Cancel').setEnabled(false);
Action.get('Export_Ok').setEnabled(false);}}else if(p.personalien.getValue('Zustellung_'+p.id,'input',null,6)){
if(offerte.exportToEnterprise(ExportTyp.ValsanaExport,true)){
var el_icon6=YAHOO.util.Dom.getElementsByClassName('action_icon',null,Action.get('Export_Ok').el)[0];
YAHOO.util.Dom.replaceClass(el_icon6,'ok','wait');
Action.get('Export_Cancel').setEnabled(false);
Action.get('Export_Ok').setEnabled(false);}}}};
Action.cancelExport=function(){
Action.remove(Action.get('Export_Ok'));
Action.remove(Action.get('Export_Cancel'));
for(var button in btns){
btns[button].setVisible(true);}
offerte.personen[0].getPersonalien().setEmailIsMandatory(true);
offerte.personen[0].getPersonalien().setZustellungVisible(true);
for(var i=0;i<offerte.personen.length;i++){
if(i==0||Mandant.MaxVariantenCount>1){
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'personalien','active_person');}else{
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'personalien','inactive_person');}}
offerte.setUiStatusNr(2);};
Action.add=function(button){
document.getElementById('actions').appendChild(button.el);
btns[button.name]=button;};
Action.remove=function(button){
document.getElementById('actions').removeChild(button.el);};
Action.get=function(name){
return btns[name];};
Action.EnableAll=function(){
for(var btn in btns){
btns[btn].setEnabled(true);}};
Action.DisableAll=function(){
for(var btn in btns){
btns[btn].setEnabled(false);}};
var BAMBUS={};
BAMBUS.cpw2={};
BAMBUS.cpw2.Toolbar=function(){
var el;
var btns_toolbar={};
return{
add:function(button){
if(el==null)el=document.getElementById('toolbar');
YAHOO.util.Dom.removeClass(el,'invisible');
el.appendChild(button.el);
btns_toolbar[button.name]=button;},
remove:function(button){
if(el==null)el=document.getElementById('toolbar');
el.removeChild(button.el);},
get:function(name){
return btns_toolbar[name];},
getElement:function(){
return el;}};}();
BAMBUS.cpw2.CountryToolbar=function(){
var el;
var country;
var btns_toolbar={};
var getButton=function(countryisocode,selected,btncssclass){
var btn1=new ToolbarButton('NeueOfferte_'+countryisocode,'img/'+countryisocode+'1.gif',Localisation['js_country_toolbar_'+countryisocode],Localisation['js_country_toolbar_'+countryisocode+'_tooltip'],btncssclass);
btn1.onclick(function(){location.href='NewOffert.aspx?country='+countryisocode;});
btn1.setEnabled(true);
if(selected){
YAHOO.util.Dom.addClass(btn1.el,'active_country');}
return btn1;};
return{
Init:function(){
country=document.getElementById('Country').innerHTML.toLowerCase();
el=document.getElementById('country_toolbar');
if(el){
BAMBUS.cpw2.CountryToolbar.add(getButton('ch','ch'==country,'toolbar_action'));
BAMBUS.cpw2.CountryToolbar.add(getButton('de','de'==country,'toolbar_action_right'));
BAMBUS.cpw2.CountryToolbar.add(getButton('fr','fr'==country,'toolbar_action_right'));
var text=new ToolbarText('Grenzgaenger',Localisation['js_country_toolbar_captiongrenzgaenger'],'toolbar_action_right');
BAMBUS.cpw2.CountryToolbar.add(text);}},
add:function(button){
YAHOO.util.Dom.removeClass(el,'invisible');
el.appendChild(button.el);
btns_toolbar[button.name]=button;},
remove:function(button){
if(el==null)el=document.getElementById('toolbar');
el.removeChild(button.el);},
get:function(name){
return btns_toolbar[name];},
getCountry:function(){
return country.toLowerCase();}};}();
BAMBUS.cpw2.PLZDialog=function(){
var _dialog;
var _orte;
return{
initialized:false,
init:function(){
var el_root=document.createElement('div');
var el_head=document.createElement('div');
var el_body=document.createElement('div');
var el_form=document.createElement('form');
YAHOO.util.Dom.addClass(el_head,'hd');
YAHOO.util.Dom.addClass(el_body,'bd');
el_form.id='mainform';
var el_title=document.createElement('p');
el_title.appendChild(document.createTextNode(Localisation['js_person_ort_seldesc1']));
el_title.appendChild(document.createElement('br'));
el_title.appendChild(document.createTextNode(Localisation['js_person_ort_seldesc2']));
el_form.appendChild(el_title);
el_form.appendChild(document.createElement('div'));
el_head.appendChild(document.createTextNode(Localisation['js_person_ort_seltitle']));
el_root.appendChild(el_head);
el_root.appendChild(el_body);
el_body.appendChild(el_form);
var el1=document.getElementById('EnterEmail_c');
el1.parentNode.insertBefore(el_root,el1);
var handleCancel=function(){
BAMBUS.cpw2.PLZDialog.onCancel.fire('');
this.cancel();};
var handleSubmit=function(){
if(this.getData().OrtIndex==null){
return;}
this.hide();
BAMBUS.cpw2.PLZDialog.onSubmit.fire(_orte[this.getData().OrtIndex]);};
_dialog=new YAHOO.widget.Dialog(
el_root,{fixedcenter:true,
underlay:"shadow",
close:false,
draggable:false,
modal:true,
effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.2}});
var myButtons=[{text:Localisation['js_person_ort_ok'],handler:handleSubmit,isDefault:true},{text:Localisation['js_person_ort_cancel'],handler:handleCancel}];
_dialog.cfg.queueProperty("buttons",myButtons);
_dialog.render();},
show:function(orte){
_orte=orte;
var form=_dialog.form;
var el_container;
var children=form.childNodes;
for(var i=0;i<children.length;i++){
if(children[i].nodeName.toLowerCase()=='div'){
el_container=children[i];}};
while(el_container.firstChild){
el_container.removeChild(el_container.firstChild);}
var html='';
for(var ii=0;ii<orte.length;ii++){
html+='<input type="radio" name="OrtIndex" value="'+ii+'"/>';
html+=orte[ii].PLZ+' '+orte[ii].OrtBezeichnung;
html+='<br />';}
el_container.innerHTML=html;
_dialog.show();},
onSubmit:new YAHOO.util.CustomEvent("PLZ-Dialog-Submit",this),
onCancel:new YAHOO.util.CustomEvent("PLZ-Dialog-Cancel",this)};}();
BAMBUS.cpw2.Profile=function(){
return{
Init:function(){},
load:function(name){
if(document.getElementById(name)!=null){
BAMBUS.cpw2.Profile[name]=document.getElementById(name).innerHTML;}}};}();
function Offerte(){
this.el=document.getElementById('offerte');
this.personen=[];
this.Tarifjahr=parseInt(document.getElementById('Tarifjahr').innerHTML);
this.loaded_ort=null;
this.email=null;
this.dirty=false;
this.total=0;
this.el_total=YAHOO.util.Dom.getElementsByClassName('total_total')[0];
this.el_totalJahr=YAHOO.util.Dom.getElementsByClassName('total_totalJahr')[0];
this.el_totalMonat=YAHOO.util.Dom.getElementsByClassName('total_totalMonat')[0];
this.uiStatusNr=1;
this.kollektivVertrag=null;
this.kollektivVertragSelect=null;
this.Minwert=null;}
Offerte.prototype.add=function(person){
if(document.getElementById('loading')){
this.el.replaceChild(person.el,document.getElementById('loading'));}else{
this.el.appendChild(person.el);}
this.personen.push(person);
if(person.isHP()){
var bol=true;
if(Mandant&&Mandant.Header&&Mandant.Header.Unfall_HP){
bol=Mandant.Header.Unfall_HP();}
person.setUnfall(bol);
if(getElementsByAttribute('name','plz','input',person.el)[0].className.indexOf('hidden')==-1){
getElementsByAttribute('name','plz','input',person.el)[0].focus();}}else{
var bol2=false;
if(Mandant&&Mandant.Header&&Mandant.Header.Unfall_NotHP){
bol2=Mandant.Header.Unfall_NotHP();}
person.setUnfall(bol2);
if(getElementsByAttribute('name','jahrgang','input',person.el)[0].className.indexOf('hidden')==-1){
getElementsByAttribute('name','jahrgang','input',person.el)[0].focus();}}};
Offerte.prototype.remove=function(person){
this.el.removeChild(person.el);
Array.remove(this.personen,person);
this.updatePrice();};
Offerte.prototype.setDirtyAllProducts=function(){
for(var i=0;i<this.personen.length;i++){
this.personen[i].setDirtyAllProducts();}};
Offerte.prototype.requestPrices=function(){
for(var i=0;i<this.personen.length;i++){
this.personen[i].requestPrices();}};
Offerte.prototype.updatePrice=function(){
var price=0;
for(var i=0;i<this.personen.length;i++){
if(this.personen[i].variante.length>0){
price+=parseFloat(this.personen[i].variante[0].total);}}
price=Math.max(price,this.getMinimumTotal()||0);
if(this.el_totalMonat){
this.el_totalMonat.innerHTML=FormatCurrency(price/12,Localisation['js_general_waehrung_total']);}
if(this.el_totalJahr){
this.el_totalJahr.innerHTML=FormatCurrency(price,Localisation['js_general_waehrung_total']);}else{
this.el_total.innerHTML=FormatCurrency(price,Localisation['js_general_waehrung_total']);}
this.total=price;};
Offerte.prototype.getMinimumTotal=function(){
var prod=this.getHauptpolice().variante[0].getProductByName(Mandant.MindestBetragCtrl);
if(!prod)return;
var el=prod.getProductOptionElement('minofferte');
if(!el)return;
return parseFloat(prod.getProductValue(el));};
Offerte.prototype.setActivePerson=function(person){
var anim;
for(var i=0;i<this.personen.length;i++){
if(this.personen[i]==person){
YAHOO.util.Dom.replaceClass(this.personen[i].el,'new_person','active_person');
YAHOO.util.Dom.replaceClass(this.personen[i].el,'inactive_person','active_person');}else{
this.personen[i].minPerson();}}};
Offerte.prototype.getHauptpolice=function(){
for(var i=0;i<this.personen.length;i++){
if(this.personen[i].isHP())return this.personen[i];}};
Offerte.prototype.getPLZ=function(){
return this.plz;};
Offerte.prototype.reinitPersons=function(person_to_exclude){
for(var i=0;i<this.personen.length;i++){
while(this.personen[i].variante.length>1){
this.personen[i].remove(this.personen[i].variante[1]);}
offerte.paintState();
if(person_to_exclude!=this.personen[i]){
YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName('person_details',null,this.personen[i].el)[0],'edit','show');
this.personen[i].requestDetail(0);}}};
Offerte.prototype.reinitPerson=function(person){
while(person.variante.length>1){
person.remove(person.variante[1]);}
offerte.paintState();
YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName('person_details',null,person.el)[0],'edit','show');};
Offerte.prototype.print=function(){};
Offerte.prototype.exportToEnterprise=function(exportTyp,personalien,oncompletefunc){
var savereq=new ch.bambus.webrechner.SaveRequest();
var pers=[];
var fields=[];
for(var i=0;i<offerte.personen.length;i++){
var p=offerte.personen[i];
var srv_p=new ch.bambus.webrechner.SaveRequestPerson();
srv_p.PersonId=p.id;
srv_p.Vorname=p.personalien.checkAndGetValue('Vorname','input',64,1,i);
srv_p.Nachname=p.personalien.checkAndGetValue('Nachname','input',64);
srv_p.Zivilstand=p.personalien.checkAndGetValue('Zivilstand','input',50);
srv_p.Beruf=p.personalien.checkAndGetValue('Beruf','input',64);
srv_p.Nationalitaet=p.personalien.checkAndGetValue('Nationalitaet','input');
srv_p.Aufenthaltsbewilligung=p.personalien.checkAndGetValue('Aufenthaltsbewilligung','input');
srv_p.AhvNr=p.personalien.checkAndGetValue('AhvNr','input',14);
srv_p.IsKunde=p.personalien.checkAndGetValue('isKunde','input');
srv_p.PolicenNr=p.personalien.checkAndGetValue('PoliceNr','input',64);
srv_p.VersichertenNr=p.personalien.checkAndGetValue('VersichertenNr','input',64);
srv_p.VorversKvgId=p.personalien.checkAndGetValue('VorversKvgId','select');
srv_p.VorversKvg=p.personalien.checkAndGetValue('VorversKvg','input');
srv_p.VorversKvgGekuendigtId=p.personalien.checkAndGetValue('VorversKvgGekuendigtId','select');
srv_p.VorversKvgGekuendigtDatum=p.personalien.checkAndGetValue('VorversKvgGekuendigtDatum','input');
srv_p.VorversVvg=p.personalien.checkAndGetValue('VorversVvg','input');
srv_p.VorversVvgGekuendigtId=p.personalien.checkAndGetValue('VorversVvgGekuendigtId','select');
srv_p.VorversVvgGekuendigtDatum=p.personalien.checkAndGetValue('VorversVvgGekuendigtDatum','input');
srv_p.VorversAusland=p.personalien.checkAndGetValue('VorversAusland','input');
srv_p.VorversAuslandImigrationDatum=p.personalien.checkAndGetValue('VorversAuslandImigrationDatum','input');
srv_p.VorversAuslandGekuendigtDatum=p.personalien.checkAndGetValue('VorversAuslandGekuendigtDatum','input');
if(Localisation['js_personalien_error_vorvers_angeben']!=''){
if(srv_p.IsKunde==false&&srv_p.VorversKvg==''&&srv_p.VorversVvg==''&&srv_p.VorversAusland==''){
alert(Localisation['js_personalien_error_vorvers_angeben']);
return false;}
if(srv_p.VorversKvg!=''){
if(srv_p.VorversKvgGekuendigtId=='1'){
if(srv_p.VorversKvgGekuendigtDatum==''){
el=p.personalien.getElement('VorversKvgGekuendigtDatum','input');
YAHOO.util.Dom.addClass(el,'invalid');}}else if(srv_p.VorversKvgGekuendigtId!='0'){
el=p.personalien.getElement('VorversKvgGekuendigtId','select');
YAHOO.util.Dom.addClass(el,'invalid');}}
if(srv_p.VorversVvg!=''){
if(srv_p.VorversVvgGekuendigtId=='1'){
if(srv_p.VorversVvgGekuendigtDatum==''){
el=p.personalien.getElement('VorversVvgGekuendigtDatum','input');
YAHOO.util.Dom.addClass(el,'invalid');}}else if(srv_p.VorversVvgGekuendigtId!='0'){
el=p.personalien.getElement('VorversVvgGekuendigtId','select');
YAHOO.util.Dom.addClass(el,'invalid');}}
if(srv_p.VorversAusland!=''){
if(srv_p.VorversAuslandImigrationDatum==''){
el=p.personalien.getElement('VorversAuslandImigrationDatum','input');
YAHOO.util.Dom.addClass(el,'invalid');}
if(srv_p.VorversAuslandGekuendigtDatum==''){
el=p.personalien.getElement('VorversAuslandGekuendigtDatum','input');
YAHOO.util.Dom.addClass(el,'invalid');}}}
srv_p.Bemerkung=p.personalien.checkAndGetValue('Bemerkung','textarea');
var tag=ConvertToInt(p.personalien.checkAndGetValue('Geb-Tag','input',2));
var monat=ConvertToInt(p.personalien.checkAndGetValue('Geb-Monat','input',2));
var jg=ConvertToInt(p.personalien.checkAndGetValue('jahrgang','span',2));
if(Mandant.RechnerTyp=='lohn'&&p.geschlecht=='f'){
tag=1;
monat=1;}
var date=new Date(jg,monat-1,tag);
srv_p.BirthDay=date.getDate()||1;
srv_p.BirthMonth=(date.getMonth()+1)||1;
srv_p.BirthYear=date.getFullYear()||p.getJahrgang;
if(date==NaN||date.getMonth()!=monat-1){
var el=p.personalien.getElement('Geb-Tag','input');
YAHOO.util.Dom.addClass(el,'invalid');
el=p.personalien.getElement('Geb-Monat','input');
YAHOO.util.Dom.addClass(el,'invalid');}
if(p.isHP()){
savereq.Strasse=p.personalien.checkAndGetValue('Strasse','input',64);
savereq.AdressZusatz=p.personalien.checkAndGetValue('AdressZusatz','input',64);
savereq.Ort=p.selected_ort;
if(savereq.Ort.OrtBezeichnung==''){
savereq.Ort.OrtBezeichnung=p.personalien.getValue('ort','input',128);}
savereq.Telefon=p.personalien.checkAndGetValue('telefon','input',32);
savereq.TelefonG=p.personalien.checkAndGetValue('telefonG','input',32);
savereq.TelefonM=p.personalien.checkAndGetValue('telefonM','input',32);
savereq.ZustellAdrAnredeId=p.personalien.checkAndGetValue('zustellAdrAnredeId','input');
savereq.ZustellAdrName=p.personalien.checkAndGetValue('zustellAdrName','input',100);
savereq.ZustellAdrVorname=p.personalien.checkAndGetValue('zustellAdrVorname','input',100);
savereq.ZustellAdrStrasse=p.personalien.checkAndGetValue('zustellAdrStrasse','input',100);
savereq.ZustellAdrAdressZusatz=p.personalien.checkAndGetValue('zustellAdrAdressZusatz','input',100);
savereq.ZustellAdrPlz=p.personalien.checkAndGetValue('zustellAdrPlz','input');
savereq.ZustellAdrOrt=p.personalien.checkAndGetValue('zustellAdrOrt','input',100);
savereq.ZustellAdrZeile=p.personalien.checkAndGetValue('zustellAdrZeile','input');
savereq.ArbeitgeberName=p.personalien.checkAndGetValue('arbeitgeberName','input',100);
savereq.ArbeitgeberNameZusatz=p.personalien.checkAndGetValue('arbeitgeberNameZusatz','input',100);
savereq.ArbeitgeberStrasse=p.personalien.checkAndGetValue('arbeitgeberStrasse','input',100);
savereq.ArbeitgeberAdressZusatz=p.personalien.checkAndGetValue('arbeitgeberAdressZusatz','input',100);
savereq.ArbeitgeberPlz=p.personalien.checkAndGetValue('arbeitgeberPlz','input');
savereq.ArbeitgeberOrt=p.personalien.checkAndGetValue('arbeitgeberOrt','input',100);
savereq.ArbeitgeberZeile=p.personalien.checkAndGetValue('arbeitgeberZeile','input');
savereq.ArbeitgeberBranche=p.personalien.checkAndGetValue('arbeitgeberBranche','input',100);
savereq.ArbeitgeberUVGNr=p.personalien.checkAndGetValue('arbeitgeberUVGNr','input',100);
savereq.ArbeitgeberRechtsform=p.personalien.checkAndGetValue('arbeitgeberRechtsform','input',100);
savereq.ArbeitgeberHandelsregisterEintrag=p.personalien.checkAndGetValue('arbeitgeberHandelsregistereintrag','select');
savereq.BankName=p.personalien.checkAndGetValue('bankName','input',100);
savereq.BankPostcheck=p.personalien.checkAndGetValue('bankPostcheckNr','input',100);
savereq.BankKontoNr=p.personalien.checkAndGetValue('bankKontoNr','input',100);
savereq.MarketingNLElektronisch=p.personalien.checkAndGetValue('newsletterElektronisch','input');
savereq.MarketingNLEmailAdresse=p.personalien.checkAndGetValue('newsletterEmailAdresse','input',100);
savereq.MarketingNLPost=p.personalien.checkAndGetValue('newsletterPost','input');
savereq.MarketingNLPostAnzahl=p.personalien.checkAndGetValue('newsletterPostAnzahl','input');
savereq.PersonZustaendig=p.personalien.checkAndGetValue('zustaendigePerson','input',100);
savereq.TotalBetrag=offerte.total;
savereq.PrintZustellung=p.personalien.getValue('Zustellung_'+p.id,'input',null,2);
savereq.Email=p.personalien.checkAndGetValue('email','input',128);
savereq.EmailVersand=p.personalien.checkAndGetValue('emailVersand','input',128);
p.personalien.CheckPersonalienEMail(p.personalien.getElement('email','input'));}
var vars=[];
for(var varInd=0;varInd<p.variante.length;varInd++){
var v=p.variante[varInd];
var srv_v=new ch.bambus.webrechner.SaveRequestVariante();
srv_v.IsSelected=v.GetIsSelected();
srv_v.TotalBetrag=v.total;
vars.push(srv_v);}
srv_p.Varianten=vars;
if(personalien){
var els=YAHOO.util.Dom.getElementsByClassName('invalid',null,p.personalien.el);
if(els.length>0){
alert(Localisation['js_personalien_error_eingabenfehlerhaft']);
els[0].focus();
if(els[0].tagName=='INPUT')els[0].select();
return false;}
var hpOnly=true;
if(YAHOO.util.Dom.getElementsByClassName('entwederoder_0',null,p.personalien.el).length>0){
for(var ii=0;YAHOO.util.Dom.getElementsByClassName('entwederoder_'+ii+'',null,p.personalien.el).length>0;ii++){
var OK=0;
var els2=YAHOO.util.Dom.getElementsByClassName('entwederoder_'+ii,null,p.personalien.el);
var check=true;
if(YAHOO.util.Dom.hasClass(els2,'hpOnly').length>0&&!p.hp){
check=false;}
ignore=false;
for(var i3=0;els2.length>i3;i3++){
if(YAHOO.util.Dom.hasClass(els2[i3],'doublecheck')){
if(Css.getParent(els2[i3],'infoshow').className.indexOf('hide')>=0)ignore=true;}
if(els2[i3].value.length>0)OK=OK+1;
if(ignore)OK=1;
if(!p.personalien.getValue('Zustellung_'+p.id,'input',null,1)){
if(els2[i3].name=="email"||els2[i3].name=="emailVersand")OK=1;}else{
if(OK>1&&(els2[i3].name=="email"||els2[i3].name=="emailVersand"))OK=1;}}
if(OK!=1&&check){
YAHOO.util.Dom.addClass(els2,'invalid2');
if(OK>1){
alert(Localisation['js_personalien_error_eingabeentwederoder_zuviel']);}else{
alert(Localisation['js_personalien_error_eingabeentwederoder_leer']);}
return false;}else{
YAHOO.util.Dom.removeClass(els2,'invalid2');}}}}else{
var els2=YAHOO.util.Dom.getElementsByClassName('invalid',null,p.personalien.el);
YAHOO.util.Dom.removeClass(els2,'invalid');}
pers.push(srv_p);}
savereq.Personen=pers;
var onExportComplete=function(resp){
if(Mandant.Tracking&&Mandant.Tracking().TrackExportSuccess){
Mandant.Tracking().TrackExportSuccess();}
offerte.setKundenNr(resp.KundenNr);
offerte.setUiStatusNr(4);
if(document.getElementById('final_page')==null){
if(savereq.PrintZustellung){
alert(Localisation['js_personalien_message_antraggespeichert_print']);}else{
alert(Localisation['js_personalien_message_antraggespeichert']);}}
if(personalien){
Action.remove(Action.get('Export_Ok'));
Action.remove(Action.get('Export_Cancel'));
if(document.getElementById('final_page')==null){
for(var button in btns){
btns[button].setVisible(true);}}
for(var i=0;i<offerte.personen.length;i++){
if(i==0||Mandant.MaxVariantenCount>1){
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'personalien','active_person');}else{
YAHOO.util.Dom.replaceClass(offerte.personen[i].el,'personalien','inactive_person');}}}else{
waitdialog.hide();}
if(document.getElementById('final_page')!=null){
YAHOO.util.Dom.removeClass('final_page','print');
YAHOO.util.Dom.removeClass('final_page','email');
if(savereq.PrintZustellung){
YAHOO.util.Dom.addClass('final_page','print');}else{
YAHOO.util.Dom.addClass('final_page','email');}
var el_container=Css.getParent(document.getElementById('final_page'),'page_content');
YAHOO.util.Dom.addClass(el_container,'final_page_active');
var final_ok_action=function(){
Action.remove(Action.get('Final_Ok'));
for(var button in btns){
btns[button].setVisible(true);}
YAHOO.util.Dom.removeClass(el_container,'final_page_active');
offerte.setUiStatusNr(2);};
var finalpage_ok=new Button('Final_Ok',null,Localisation['js_final_page_button_ok'],Localisation['js_final_page_button_ok_tooltip']);
finalpage_ok.onclick(final_ok_action);
finalpage_ok.setVisible(true);
Action.add(finalpage_ok);}};
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.ExportToEnterprise,exportTyp,savereq,oncompletefunc||onExportComplete,OnError,this);
return true;};
Offerte.prototype.save=function(){
YAHOO.util.Dom.setStyle('saving','display','block');
YAHOO.util.Dom.setStyle('saving','top',document.documentElement.scrollTop+'px');
YAHOO.util.Dom.setStyle('saving','left',document.documentElement.scrollLeft+600+'px');
YAHOO.util.Dom.setStyle('saving','background','url(\'img/loading_bg.gif\') no-repeat top');
var anim=new YAHOO.util.Anim('saving',{opacity:{to:1}},0.1);
anim.animate();
var savereq=new ch.bambus.webrechner.SaveRequest();
var pers=[];
for(var i=0;i<offerte.personen.length;i++){
var p=offerte.personen[i];
if(YAHOO.util.Dom.hasClass(p.el,'new_person'))continue;
var srv_p=new ch.bambus.webrechner.SaveRequestPerson();
srv_p.PersonId=p.id;
srv_p.Vorname=p.personalien.getValue('Vorname','input',64,i);
srv_p.Nachname=p.personalien.getValue('Nachname','input',64);
srv_p.Zivilstand=p.personalien.getValue('Zivilstand','input',50);
srv_p.Beruf=p.personalien.getValue('Beruf','input',64);
srv_p.Nationalitaet=p.personalien.getValue('Nationalitaet','input');
srv_p.Aufenthaltsbewilligung=p.personalien.getValue('Aufenthaltsbewilligung','input');
srv_p.AhvNr=p.personalien.getValue('AhvNr','input',14);
srv_p.IsKunde=p.personalien.getValue('isKunde','input');
srv_p.PolicenNr=p.personalien.getValue('PoliceNr','input',64);
srv_p.VersichertenNr=p.personalien.checkAndGetValue('VersichertenNr','input',64);
srv_p.VorversKvgId=p.personalien.getValue('VorversKvgId','select');
srv_p.VorversKvg=p.personalien.getValue('VorversKvg','input');
srv_p.VorversKvgGekuendigtId=p.personalien.getValue('VorversKvgGekuendigtId','select');
srv_p.VorversKvgGekuendigtDatum=p.personalien.getValue('VorversKvgGekuendigtDatum','input');
srv_p.VorversVvg=p.personalien.getValue('VorversVvg','input');
srv_p.VorversVvgGekuendigtId=p.personalien.getValue('VorversVvgGekuendigtId','select');
srv_p.VorversVvgGekuendigtDatum=p.personalien.getValue('VorversVvgGekuendigtDatum','input');
srv_p.VorversAusland=p.personalien.getValue('VorversAusland','input');
srv_p.VorversAuslandImigrationDatum=p.personalien.getValue('VorversAuslandImigrationDatum','input');
srv_p.VorversAuslandGekuendigtDatum=p.personalien.getValue('VorversAuslandGekuendigtDatum','input');
srv_p.Bemerkung=p.personalien.getValue('Bemerkung','textarea');
srv_p.BirthDay=ConvertToInt(p.personalien.getValue('Geb-Tag','input'));
srv_p.BirthMonth=ConvertToInt(p.personalien.getValue('Geb-Monat','input'));
srv_p.BirthYear=ConvertToInt(p.personalien.getValue('jahrgang','span'));
if(isNaN(srv_p.BirthDay))srv_p.BirthDay=0;
if(isNaN(srv_p.BirthMonth))srv_p.BirthMonth=0;
if(p.isHP()){
savereq.Strasse=p.personalien.getValue('Strasse','input',64);
savereq.AdressZusatz=p.personalien.getValue('AdressZusatz','input',64);
savereq.Ort=p.selected_ort;
savereq.Telefon=p.personalien.getValue('telefon','input',32);
savereq.TelefonG=p.personalien.getValue('telefonG','input',32);
savereq.TelefonM=p.personalien.getValue('telefonM','input',32);
savereq.ZustellAdrAnredeId=p.personalien.getValue('zustellAdrAnredeId','input');
savereq.ZustellAdrName=p.personalien.getValue('zustellAdrName','input',100);
savereq.ZustellAdrVorname=p.personalien.getValue('zustellAdrVorname','input',100);
savereq.ZustellAdrStrasse=p.personalien.getValue('zustellAdrStrasse','input',100);
savereq.ZustellAdrAdressZusatz=p.personalien.getValue('zustellAdrAdressZusatz','input',100);
savereq.ZustellAdrPlz=p.personalien.getValue('zustellAdrPlz','input');
savereq.ZustellAdrOrt=p.personalien.getValue('zustellAdrOrt','input',100);
savereq.ZustellAdrZeile=p.personalien.getValue('zustellAdrZeile','input');
savereq.ArbeitgeberName=p.personalien.getValue('arbeitgeberName','input',100);
savereq.ArbeitgeberNameZusatz=p.personalien.getValue('arbeitgeberNameZusatz','input',100);
savereq.ArbeitgeberStrasse=p.personalien.getValue('arbeitgeberStrasse','input',100);
savereq.ArbeitgeberAdressZusatz=p.personalien.getValue('arbeitgeberAdressZusatz','input',100);
savereq.ArbeitgeberPlz=p.personalien.getValue('arbeitgeberPlz','input');
savereq.ArbeitgeberOrt=p.personalien.getValue('arbeitgeberOrt','input',100);
savereq.ArbeitgeberZeile=p.personalien.getValue('arbeitgeberZeile','input');
savereq.ArbeitgeberBranche=p.personalien.checkAndGetValue('arbeitgeberBranche','input',100);
savereq.ArbeitgeberUVGNr=p.personalien.checkAndGetValue('arbeitgeberUVGNr','input',100);
savereq.ArbeitgeberRechtsform=p.personalien.checkAndGetValue('arbeitgeberRechtsform','input',100);
savereq.ArbeitgeberHandelsregisterEintrag=p.personalien.checkAndGetValue('arbeitgeberHandelsregistereintrag','select');
savereq.BankName=p.personalien.checkAndGetValue('bankName','input',100);
savereq.BankPostcheck=p.personalien.checkAndGetValue('bankPostcheckNr','input',100);
savereq.BankKontoNr=p.personalien.checkAndGetValue('bankKontoNr','input',100);
savereq.MarketingNLElektronisch=p.personalien.checkAndGetValue('newsletterElektronisch','input');
savereq.MarketingNLEmailAdresse=p.personalien.checkAndGetValue('newsletterEmailAdresse','input',100);
savereq.MarketingNLPost=p.personalien.checkAndGetValue('newsletterPost','input');
savereq.MarketingNLPostAnzahl=p.personalien.checkAndGetValue('newsletterPostAnzahl','input');
savereq.PersonZustaendig=p.personalien.checkAndGetValue('zustaendigePerson','input',100);
savereq.TotalBetrag=offerte.total;
savereq.PrintZustellung=p.personalien.getValue('Zustellung_'+p.id,'input',null,2);
savereq.Email=p.personalien.getValue('email','input',128);
savereq.EmailVersand=p.personalien.getValue('emailVersand','input',128);}
var vars=[];
for(var ib=0;ib<p.variante.length;ib++){
var v=p.variante[ib];
var srv_v=new ch.bambus.webrechner.SaveRequestVariante();
srv_v.IsSelected=v.GetIsSelected();
srv_v.TotalBetrag=v.total;
vars.push(srv_v);}
srv_p.Varianten=vars;
pers.push(srv_p);}
savereq.Personen=pers;
var onSaveComplete=function(){
offerte.setDirty(false);
var f=function(){
var anim=new YAHOO.util.Anim('saving',{opacity:{to:0}},0.1);
anim.onComplete.subscribe(function(){YAHOO.util.Dom.setStyle('saving','background','');});
anim.animate();};
window.setTimeout(f,500);};
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.Save,savereq,onSaveComplete,OnError,offerte);
return true;};
Offerte.prototype.getDirty=function(){
return this.dirty;};
Offerte.prototype.setDirty=function(_dirty){
this.dirty=_dirty;};
Offerte.prototype.setMW=function(){
if(Mandant.KollektivvertragVerhalten!='reinitPerson')return;
varTextM=null;
varTextF=null;
var iSelected=0
for(var i=0;i<this.kvList.length;i++){
if(this.kvList[i].Id==offerte.kollektivVertrag){
iSelected=i;
break;}}
for(var ii=0;ii<this.kvList[i].Options.length;ii++){
if(this.kvList[i].Options[ii].Key=='OptionTextM'.toLowerCase()){
varTextM=this.kvList[i].Options[ii].Value;}
if(this.kvList[i].Options[ii].Key=='OptionTextF'.toLowerCase()){
varTextF=this.kvList[i].Options[ii].Value;}}
var elTemp=document.getElementById('person_template');
var elTemp2=getElementsByAttribute('name','geschlecht_{id}','INPUT',elTemp);
var el=getElementsByAttribute('name','geschlecht_1','INPUT',offerte.el);
var elTextM=YAHOO.util.Dom.getElementsByClassName('person_m',null,offerte.el)[0];
var elTextF=YAHOO.util.Dom.getElementsByClassName('person_f',null,offerte.el)[0];
var elTextTempM=YAHOO.util.Dom.getElementsByClassName('person_m',null,elTemp)[0];
var elTextTempF=YAHOO.util.Dom.getElementsByClassName('person_f',null,elTemp)[0];
if(varTextM){
YAHOO.util.Dom.removeClass(el[0],'invisible');
YAHOO.util.Dom.addClass(el[0],'visible');
YAHOO.util.Dom.removeClass(elTemp2[0],'invisible');
YAHOO.util.Dom.addClass(elTemp2[0],'visible');
if(elTextM)elTextM.firstChild.nodeValue=varTextM;
if(elTextTempM)elTextTempM.firstChild.nodeValue=varTextM;}else{
YAHOO.util.Dom.removeClass(el[0],'visible');
YAHOO.util.Dom.addClass(el[0],'invisible');
YAHOO.util.Dom.removeClass(elTemp2[0],'visible');
YAHOO.util.Dom.addClass(elTemp2[0],'invisible');
if(elTextM)elTextM.firstChild.nodeValue="";
if(elTextTempM)elTextTempM.firstChild.nodeValue="";}
if(varTextF){
YAHOO.util.Dom.removeClass(el[1],'invisible');
YAHOO.util.Dom.addClass(el[1],'visible');
YAHOO.util.Dom.removeClass(elTemp2[1],'invisible');
YAHOO.util.Dom.addClass(elTemp2[1],'visible');
if(elTextF)elTextF.firstChild.nodeValue=varTextF;
if(elTextTempF)elTextTempF.firstChild.nodeValue=varTextF;}else{
YAHOO.util.Dom.removeClass(el[1],'visible');
YAHOO.util.Dom.addClass(el[1],'invisible');
YAHOO.util.Dom.removeClass(elTemp2[1],'visible');
YAHOO.util.Dom.addClass(elTemp2[1],'invisible');
if(elTextF)elTextF.firstChild.nodeValue="";
if(elTextTempM)elTextTempF.firstChild.nodeValue="";}
DomainText['OptionTextM']=new Array();
DomainText['OptionTextM']["name"]=varTextM;
DomainText['OptionTextF']=new Array();
DomainText['OptionTextF']["name"]=varTextF;}
Offerte.prototype.setKollektivVertrag=function(kv){
this.kollektivVertrag=kv;
if(this.kollektivVertragSelect!=null){
this.kollektivVertragSelect.selectOption(kv);}
this.setMW();};
Offerte.prototype.getKollektivVertrag=function(){
return this.kollektivVertrag;};
Offerte.prototype.paintState=function(){
var enabled=this.personen.length>0;
for(var btn in btns){
btns[btn].setEnabled(enabled);}
if(BAMBUS.cpw2.Toolbar.get('NeueOfferte')){
BAMBUS.cpw2.Toolbar.get('NeueOfferte').setEnabled(enabled);}};
Offerte.prototype.setKundenNr=function(kundenNr){
if(document.getElementById('KundenNr')!=null){
var btn=BAMBUS.cpw2.Toolbar.get('KundenNr');
if(btn!=null)BAMBUS.cpw2.Toolbar.remove(btn);
if(kundenNr.length>0){
var knrbtn=new ToolbarButton('KundenNr','img/spacer.gif',Localisation['js_toolbar_kundennr_prefix']+kundenNr,Localisation['js_toolbar_kundennr_tooltip'],'toolbar_action_right');
knrbtn.onclick(function(){return false;});
knrbtn.setEnabled(false);
BAMBUS.cpw2.Toolbar.add(knrbtn);}}};
Offerte.prototype.setUiStatusNr=function(_uiStatusNr){
if(document.getElementById('uistatusbar')!=null){
var el=document.getElementById('uistatusbar');
YAHOO.util.Dom.replaceClass(el,'uistatus'+this.uiStatusNr,'uistatus'+_uiStatusNr);
this.uiStatusNr=_uiStatusNr;}};
Offerte.prototype.isComplete=function(){
for(var i=0;i<offerte.personen.length;i++){
var p=offerte.personen[i];
if(!p.isComplete())return false;}
return true;};
function FormatCurrency(value,WaehrungStr){
var sign='';
if(value<0){
sign='-';}
value=Math.abs(value);
var francs=Math.floor(value);
var francsAry=francs.toString().split("");
francs="";
var iDelimiter=0;
for(var i=francsAry.length-1;i>=0;--i){
if(Math.floor(iDelimiter/3)){
francs="'"+francs;
iDelimiter=0;}
francs=francsAry[i]+francs;
iDelimiter=iDelimiter+1;}
var cents='00'+Math.round(value*100)%100;
var str=WaehrungStr+' ';
str+=sign+francs+'.'+cents.substring(cents.length-2);
return str;}
function ConvertToInt(value){
var value2=value.replace(/^0*(.+)/,'$1');
return parseInt(value2);}
function Person(isHp,id){
this.hp=isHp;
if(id){
this.id=id;
nextpersonid=id+1;}else{
this.id=nextpersonid++;}
this.orte=null;
this.orte_transfer=false;
this.orte_event=new YAHOO.util.CustomEvent("orte_transfer_success",this);
this.jahrgang=null;
this.geschlecht=null;
this.unfall=null;
this.vertragsbeginn=null;
this.fields=new Array();
this.jahrgangBlurEventInProgress=false;
this.jahrgangBlurFinished_event=new YAHOO.util.CustomEvent("jahrgangBlurFinished_event",this);
this.selected_ort=null;
this.variante=[];
this.total=0;
this.el=document.createElement('div');
this.el.className='person new_person';
if(this.hp)YAHOO.util.Dom.addClass(this.el,'hp');
this.el.id='person_'+this.id;
var template=document.getElementById('person_template').innerHTML;
template=template.replace(/{id}/g,this.id);
this.el.innerHTML=template;
if(offerte.Tarifjahr==new Date().getFullYear()){
var now=new Date();
var y=now.getFullYear()+Math.floor((now.getMonth()+1)/12);
var m=(now.getMonth()+1)%12;
var d=1;
this.setVertragsBeginn(new Date(y,m,d));}else{
this.setVertragsBeginn('01.01.'+offerte.Tarifjahr);}
Action.DisableAll();
this.registerClickable();
this.registerCommitEventSource();
this.registerPLZBlurEventSource();
this.registerJahrgangBlurEventSource();
this.registerVertragsbeginnEventSource();
this.registerGeschlechtBlurEventSource();
this.personalien=new Personalien(this);
this.el_total=YAHOO.util.Dom.getElementsByClassName('person_total',null,this.el)[0];}
Person.prototype.getSeqNr=function(){
offerte.indexOf(this)+1;};
Person.prototype.remove=function(variante){
variante.rootelement.removeChild(variante.el_container);
Array.remove(this.variante,variante);
offerte.updatePrice();
this.updateVarianteAddState();
for(var i=0;i<this.variante.length;i++){
this.variante[i].index=i;
this.variante[i].updateTitle();}};
Person.prototype.updateVarianteAddState=function(){
var el=YAHOO.util.Dom.getElementsByClassName('variante_new',null,this.el);
if(this.variante.length<Mandant.MaxVariantenCount){
YAHOO.util.Dom.removeClass(el,'invisible');}else{
YAHOO.util.Dom.addClass(el,'invisible');}
var el_delete=YAHOO.util.Dom.getElementsByClassName('variante_head_deleteaction',null,this.el);
if(this.variante.length>1){
YAHOO.util.Dom.removeClass(el_delete,'invisible');}else{
YAHOO.util.Dom.addClass(el_delete,'invisible');}};
Person.prototype.registerClickable=function(){
var elements=YAHOO.util.Dom.getElementsByClassName('clickable',null,this.el);
YAHOO.util.Event.addListener(elements,"click",Person.cmdclick,this);};
Person.prototype.registerCommitEventSource=function(){
var f=function(e,person){
if(e.keyCode!=13)return;
person.requestDetail(0);};
var inputs=YAHOO.util.Dom.getElementsByClassName('person_details',null,this.el)[0].getElementsByTagName('INPUT');
YAHOO.util.Event.addListener(inputs,'keypress',f,this);}
Person.prototype.registerJahrgangBlurEventSource=function(){
var el=getElementsByAttribute('name','jahrgang','INPUT',this.el)[0];
var f=function(e,p){
var jg=p.checkNum(this);
if(isNaN(jg))return;
if(jg<100&&jg>=0){
jg=jg+1900;
if(jg<(new Date().getFullYear()-99)){
jg=jg+100;}
this.value=jg;}
if(!p.checkNumForSQL(this))return;
var el=getElementsByAttribute('name','unfall','INPUT',p.el)[0];
var child=(offerte.Tarifjahr-jg<=BAMBUS.cpw2.Profile['AltersgrenzeArbEnabled']);
var disable=(offerte.Tarifjahr-jg<=BAMBUS.cpw2.Profile['AltersgrenzeArbEnabled']);
var setvalue_child=(offerte.Tarifjahr-jg<=BAMBUS.cpw2.Profile['AltersgrenzeArbSet']);
var fdis=function(){
el.checked=Mandant.Header.Unfall_NotHP();
el.disabled=true;
p.jahrgangBlurEventInProgress=false;
p.jahrgangBlurFinished_event.fire("blur event finished")};
var fen0=function(){
el.disabled=false;
el.checked=Mandant.Header.Unfall_NotHP();
p.jahrgangBlurEventInProgress=false;
p.jahrgangBlurFinished_event.fire("blur event finished")};
var fen1=function(){
el.disabled=false;
p.jahrgangBlurEventInProgress=false;
p.jahrgangBlurFinished_event.fire("blur event finished")};
p.jahrgangBlurEventInProgress=true;
if(disable){
window.setTimeout(fdis,200);}else if(setvalue_child){
window.setTimeout(fen0,200);}else{
window.setTimeout(fen1,200);}};
YAHOO.util.Event.addListener(el,'blur',f,this);};
Person.prototype.registerPLZBlurEventSource=function(){
var el=getElementsByAttribute('name','plz','INPUT',this.el)[0];
var f=function(e,p){
var plz=p.checkNum(this);
if(isNaN(plz))return;
if(plz<1000){
YAHOO.util.Dom.addClass(this,'invalid');
return;}
if(p.selected_ort==null||p.selected_ort.PLZ!=p.getPLZ()){
p.setOrte(null);
p.getOrte();}};
YAHOO.util.Event.addListener(el,'blur',f,this);};
Person.prototype.registerVertragsbeginnEventSource=function(){
var el=getElementsByAttribute('name','VertragsBeginn','INPUT',this.el)[0];
var f=function(e,p){
try{
var vertragsbeginn=new Date(p.getVertragsBeginn());
if(isNaN(vertragsbeginn)||Math.abs(new Date().getFullYear()-vertragsbeginn.getFullYear())>2){
YAHOO.util.Dom.addClass(this,'invalid');}else if(YAHOO.util.Dom.hasClass(this,'monthBegin')&&vertragsbeginn.getDate()!=1){
var datefill="0"
if((vertragsbeginn.getMonth()+1)>9)datefill="";
p.setVertragsBeginn('01.'+datefill+(vertragsbeginn.getMonth()+1)+'.'+vertragsbeginn.getFullYear());}else{
YAHOO.util.Dom.removeClass(this,'invalid');
p.setVertragsBeginn(vertragsbeginn);}}catch(e){
YAHOO.util.Dom.addClass(this,'invalid');}};
YAHOO.util.Event.addListener(el,'blur',f,this);};
Person.prototype.registerGeschlechtBlurEventSource=function(){
if(getElementsByAttribute('name','geschlecht_'+this.id,'INPUT',this.el).length==0){
var el=getElementsByAttribute('name','geschlecht_'+this.id,'SELECT',this.el);}else{
var el=getElementsByAttribute('name','geschlecht_'+this.id,'INPUT',this.el);}
var f=function(e,p){
try{
var elSpan=YAHOO.util.Dom.getElementsByClassName('person_jahrgang',null,p.el)[0];
if(elSpan){
if(el[0].checked){
YAHOO.util.Dom.removeClass(elSpan,'invisible');
p.setJahrgang("");}else{
YAHOO.util.Dom.addClass(elSpan,'invisible');
p.setJahrgang(1980);}}}catch(e){}};
YAHOO.util.Event.addListener(el,'click',f,this);};
Person.prototype.checkNum=function(el){
if(isNaN(el.value)){
YAHOO.util.Dom.addClass(el,'invalid');
return;}else{
YAHOO.util.Dom.removeClass(el,'invalid');}
return ConvertToInt(el.value);};
Person.prototype.checkNumForSQL=function(el){
if(el.value<1900){
YAHOO.util.Dom.addClass(el,'invalid');
return false;}
return true;};
Person.prototype.setActiveVariante=function(variante){
for(var i=0;i<this.variante.length;i++){
if(this.variante[i]==variante){
this.variante[i].maxVariante();
offerte.setActivePerson(this)}else{
this.variante[i].minVariante();}}};
Person.prototype.toggleDetail=function(){
if(YAHOO.util.Dom.hasClass(this.el,'active_person')){
YAHOO.util.Dom.replaceClass(this.el,'active_person','inactive_person');
for(var i=0;i<this.variante.length;i++){
this.variante[i].minVariante();}}else{
offerte.setActivePerson(this);}};
Person.prototype.maxDetail=function(){
if(!(YAHOO.util.Dom.hasClass(this.el,'active_person'))){
offerte.setActivePerson(this);}};
Person.prototype.minPerson=function(){
if(YAHOO.util.Dom.hasClass(this.el,'active_person')){
if(Mandant.MaxVariantenCount<=1){
YAHOO.util.Dom.replaceClass(this.el,'active_person','inactive_person');}
for(var i=0;i<this.variante.length;i++){
this.variante[i].minVariante();}}};
Person.prototype.maxPerson=function(){
if(YAHOO.util.Dom.hasClass(this.el,'inactive_person')){
YAHOO.util.Dom.replaceClass(this.el,'inactive_person','active_person');}};
Person.prototype.isHP=function(){
return(this.hp==true);};
Person.prototype.setOrte=function(orte){
if(orte==null)this.selected_ort=null;
if(orte!=null&&orte.Orte){
this.orte=orte.Orte;}else{
this.orte=orte;}
if(this.orte!=null&&this.orte.length==1){
this.selected_ort=this.orte[0];}};
Person.prototype.getOrte=function(){
if(this.orte!=null){
if(this.orte.length==0)return this.orte;
if(this.orte.length!=0&&this.orte[0].GemeindeNr>0)return this.orte;
if(this.orte.length!=0&&this.orte[0].LandIso.toLowerCase()!="ch")return this.orte;}
if(this.orte_transfer)return null;
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.GetOrtDesc,
this.getPLZ(),
BAMBUS.cpw2.CountryToolbar.getCountry(),
function(result,person){
person.setOrte(result);
person.orte_transfer=false;
if(result.GemeindeNr<0){
var el=getElementsByAttribute('name','plz','INPUT',person.el)[0];
YAHOO.util.Dom.addClass(el,'invalid');}
person.orte_event.fire(result);},
OnError,
this);
this.orte_transfer=true;
return null;};
Person.prototype.getPLZ=function(){
return getElementsByAttribute('name','plz','INPUT',this.el)[0].value;};
Person.prototype.setPLZ=function(plz){
getElementsByAttribute('name','plz','INPUT',this.el)[0].value=plz;};
Person.prototype.getJahrgang=function(){
return getElementsByAttribute('name','jahrgang','INPUT',this.el)[0].value;};
Person.prototype.setJahrgang=function(jahrgang){
getElementsByAttribute('name','jahrgang','INPUT',this.el)[0].value=jahrgang;
this.jahrgang=jahrgang;};
Person.prototype.getGeschlecht=function(){
if(getElementsByAttribute('name','geschlecht_'+this.id,'INPUT',this.el).length==0){
var els=getElementsByAttribute('name','geschlecht_'+this.id,'SELECT',this.el);
return els[0].value;}else{
var els=getElementsByAttribute('name','geschlecht_'+this.id,'INPUT',this.el);
for(var i=0;i<els.length;i++){
if(els[i].checked){
return els[i].value;}}}};
Person.prototype.setGeschlecht=function(geschlecht){
if(getElementsByAttribute('name','geschlecht_'+this.id,'INPUT',this.el).length==0){
var els=getElementsByAttribute('name','geschlecht_'+this.id,'SELECT',this.el);
els[0].value=geschlecht;}else{
var els=getElementsByAttribute('name','geschlecht_'+this.id,'INPUT',this.el);
for(var i=0;i<els.length;i++){
els[i].checked=(els[i].value==geschlecht);}}
this.geschlecht=geschlecht;};
Person.prototype.getUnfall=function(){
return getElementsByAttribute('name','unfall','INPUT',this.el)[0].checked;};
Person.prototype.setUnfall=function(unfall){
getElementsByAttribute('name','unfall','INPUT',this.el)[0].checked=unfall;
this.unfall=unfall;};
Person.prototype.getVertragsBeginn=function(){
var val=getElementsByAttribute('name','VertragsBeginn','INPUT',this.el)[0].value;
var regex=new RegExp("(\\d{1,2})\\.(\\d{1,2})\\.(\\d{2,4})");
var ret=regex.exec(val);
if(ret){
var day=ret[1];
var month=ret[2]-1;
var year=ret[3];
if(year.length<4)year=parseInt(year,10)+2000;
return new Date(year,month,day);}else{
return NaN;}};
Person.prototype.setVertragsBeginn=function(vertragsbeginn){
if(vertragsbeginn.getDate){
var tag='00000'+vertragsbeginn.getDate().toString();
var monat='00000'+(vertragsbeginn.getMonth()+1).toString();
var jahr=vertragsbeginn.getFullYear().toString();
vertragsbeginn=tag.slice(tag.length-2)+'.'+monat.slice(monat.length-2)+'.'+jahr;}
getElementsByAttribute('name','VertragsBeginn','INPUT',this.el)[0].value=vertragsbeginn;
this.vertragsbeginn=vertragsbeginn;};
Person.prototype.getTotal=function(){
return this.el_total.innerHTML;};
Person.prototype.setTotal=function(value){
this.el_total.innerHTML=FormatCurrency(value,Localisation['js_general_waehrung_produkt']);};
Person.prototype.setDescription=function(description,typ){
var elshow=YAHOO.util.Dom.getElementsByClassName('show',null,this.el)[0];
var text="";
var eldesc=YAHOO.util.Dom.getElementsByClassName('person_description',null,elshow)[0];
if(DomainText['OptionTextF']||DomainText['OptionTextM']){
if(typ=="women"||typ=="girl"){
text=DomainText['OptionTextF']["name"];}else if(typ=="men"||typ=="boy"){
text=DomainText['OptionTextM']["name"];}}
if(description.indexOf("##OptionText##")>0&&text!="")description=description.substring(0,(description.indexOf("##OptionText##")+14));
description=description.replace("##OptionText##",text);
eldesc.innerHTML=description;};
Person.prototype.getDescription=function(){
var el_shows=YAHOO.util.Dom.getElementsByClassName('person_description',null,this.el)[0];
return el_shows.firstChild.nodeValue;};
Person.prototype.getIconType=function(){
var el_shows=YAHOO.util.Dom.getElementsByClassName('show',null,this.el);
for(var i=0;i<el_shows.length;i++){
if(YAHOO.util.Dom.hasClass(el_shows[i],'person_details')){
if(YAHOO.util.Dom.hasClass(el_shows[i],'men'))return 'men';
if(YAHOO.util.Dom.hasClass(el_shows[i],'women'))return 'women';
if(YAHOO.util.Dom.hasClass(el_shows[i],'girl'))return 'girl';
if(YAHOO.util.Dom.hasClass(el_shows[i],'boy'))return 'boy';}}};
Person.prototype.setIconType=function(type){
var cls='person_details '+type+' show';
var els=YAHOO.util.Dom.getElementsByClassName('person_details',null,this.el);
YAHOO.util.Dom.batch(els,function(el){el.className=cls;});
YAHOO.util.Dom.removeClass(this.el,'men');
YAHOO.util.Dom.removeClass(this.el,'women');
YAHOO.util.Dom.removeClass(this.el,'girl');
YAHOO.util.Dom.removeClass(this.el,'boy');
YAHOO.util.Dom.addClass(this.el,type);};
Person.prototype.requestDetail=function(variante){
getElementsByAttribute('name','jahrgang','INPUT',this.el)[0].blur();
getElementsByAttribute('name','VertragsBeginn','INPUT',this.el)[0].blur();
getElementsByAttribute('name','plz','INPUT',this.el)[0].blur();
if(this.isHP()&&this.getOrte()==null){
if(this.orte_transfer){
this.orte_event.subscribe(
function(eventtype,argumentsarray,scope){
scope.requestDetail(variante);},
this);
return;}}
this.orte_event.unsubscribe();
if(this.jahrgangBlurEventInProgress){
this.jahrgangBlurFinished_event.subscribe(
function(eventtype,argumentsarray,scope){
scope.requestDetail(variante);},
this);
return;}
this.jahrgangBlurFinished_event.unsubscribe();
var srv_pers=new ch.bambus.webrechner.PersonUiRequestData();
srv_pers.Id=this.id;
var headelem=YAHOO.util.Dom.getElementsByClassName('person_details',null,this.el)[0];
srv_pers.Ort=this.selected_ort;
srv_pers.Jahrgang=this.getJahrgang();
srv_pers.Geschlecht=this.getGeschlecht();
srv_pers.Unfall=this.getUnfall();
srv_pers.VertragsBeginn=this.getVertragsBeginn().getDate()+'.'+(this.getVertragsBeginn().getMonth()+1)+'.'+this.getVertragsBeginn().getFullYear();
srv_pers.KollektivVertragId=offerte.kollektivVertrag;
srv_pers.IsHp=this.isHP();
if((!this.getPLZ()&&this.isHP())||!srv_pers.Jahrgang){
alert(Localisation['js_person_error_alle-felder-ausfüllen']);
if(getElementsByAttribute('name','plz','input',this.el)[0].className.indexOf('hidden')==-1){
getElementsByAttribute('name','plz','INPUT',this.el)[0].focus();
getElementsByAttribute('name','plz','INPUT',this.el)[0].select();
return;}
if(getElementsByAttribute('name','jahrgang','input',this.el)[0].className.indexOf('hidden')==-1){
getElementsByAttribute('name','jahrgang','input',this.el)[0].focus();
getElementsByAttribute('name','jahrgang','input',this.el)[0].select();}
return;}
if(isNaN(srv_pers.Jahrgang)||srv_pers.Jahrgang<1000||srv_pers.Jahrgang>3000){
alert(Localisation['js_person_error_jahrgang-fehlerhaft']);
getElementsByAttribute('name','jahrgang','INPUT',this.el)[0].focus();
getElementsByAttribute('name','jahrgang','INPUT',this.el)[0].select();
return;}
var el_plz=getElementsByAttribute('name','plz','INPUT',this.el)[0];
if(YAHOO.util.Dom.hasClass(el_plz,'invalid')){
alert(Localisation['js_person_ort_selerror']);
this.setOrte(null);
el_plz.focus();
el_plz.select();
waitdialog.hide();
return;}
if(this.isHP()&&(this.selected_ort==null||(this.selected_ort.GemeindeNr==0&&this.selected_ort.LandIso.toLowerCase()=="ch"))){
BAMBUS.cpw2.PLZDialog.init();
BAMBUS.cpw2.PLZDialog.onSubmit.subscribe(
function(eventname,params,scope){
scope.selected_ort=params[0];
scope.requestDetail(variante);
BAMBUS.cpw2.PLZDialog.onSubmit.unsubscribe();},
this);
BAMBUS.cpw2.PLZDialog.show(this.getOrte());
return;}
var el_head=YAHOO.util.Dom.getElementsByClassName('person_head',null,this.el)[0];
if(YAHOO.util.Dom.getElementsByClassName('invalid',null,el_head).length>0){
alert(Localisation['js_person_error_alle-felder-ausfüllen']);
getElementsByAttribute('name','plz','INPUT',this.el)[0].focus();
getElementsByAttribute('name','plz','INPUT',this.el)[0].select();
return;}
if(this.isHP()&&this.selected_ort!=null&&offerte.loaded_ort!=null&&(this.selected_ort.GemeindeNr!=offerte.loaded_ort.GemeindeNr)&&!confirm(Localisation['js_person_warnung_aendern-plz'])){
getElementsByAttribute('name','plz','INPUT',this.el)[0].value=offerte.loaded_ort.PLZ;
this.setJahrgang(this.jahrgang);
this.setGeschlecht(this.geschlecht);
this.setUnfall(this.unfall);
this.setVertragsBeginn(this.vertragsbeginn);
YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName('person_details',null,this.el)[0],'edit','show');
return;}
if(this.jahrgang!=null&&this.variante.length>0&&((this.jahrgang!=this.getJahrgang())||(this.geschlecht!=this.getGeschlecht())||(this.unfall!=this.getUnfall()))&&!confirm(Localisation['js_person_warnung_aendern-kopfzeile-parameter'])){
this.setJahrgang(this.jahrgang);
this.setGeschlecht(this.geschlecht);
this.setUnfall(this.unfall);
this.setVertragsBeginn(this.vertragsbeginn);
YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName('person_details',null,this.el)[0],'edit','show');
return;}
var _variante=variante;
var pers=this;
var onGetDetailComplete=function(result){
pers.setDetail(result,_variante);
offerte.setDirty(true);};
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.GetPersonDetailUI,srv_pers,_variante,onGetDetailComplete,OnError,this);
YAHOO.util.Dom.addClass(headelem,'wait');
if(Mandant.Tracking&&Mandant.Tracking().TrackCreate){
Mandant.Tracking().TrackCreate();}};
Person.prototype.setDetail=function(person,_variante){
if(person.ErrorMessage){
alert(person.ErrorMessage);
YAHOO.util.Dom.removeClass(YAHOO.util.Dom.getElementsByClassName('person_details',null,this.el)[0],'wait');
getElementsByAttribute('name','plz','INPUT',this.el)[0].focus();
getElementsByAttribute('name','plz','INPUT',this.el)[0].select();
return;}
Action.EnableAll();
offerte.setUiStatusNr(2);
this.setDescription(person.ToString,person.Class)
this.setIconType(person.Class);
if(this.variante.length-1<_variante){
var elroot=YAHOO.util.Dom.getElementsByClassName('person_product_detail',null,this.el)[0];
this.variante[_variante]=new Variante(this,_variante,elroot);
this.updateVarianteAddState();}
this.variante[_variante].setUIDetail(person.DetailUI);
this.setPersonalienUI(person.DetailPersonalienUI);
this.variante[_variante].RunUiInitCode(person.DetailUIJavaScript);
this.variante[_variante].InitUi();
if(this.isHP()&&offerte.loaded_ort!=null&&person.Ort.GemeindeNr!=offerte.loaded_ort.GemeindeNr){
offerte.reinitPersons(this);}
if(offerte.loaded_ort!=null){
if(person.Jahrgang!=this.jahrgang||person.Geschlecht!=this.geschlecht||person.Unfall!=this.unfall){
offerte.reinitPerson(this);}}
this.Ort=person.Ort;
if(this.isHP()){
offerte.loaded_ort=person.Ort;}
offerte.paintState();
this.personalien.setOrt(person.Ort);
this.personalien.setPlz(person.Ort);
this.personalien.setJahrgang(person.Jahrgang);
if(_variante<this.variante.length-1){
this.requestDetail(_variante+1);}
if(!(_variante<this.variante.length-1)){
if(!YAHOO.util.Dom.hasClass(this.el,'loading_person')){
this.maxDetail();
for(var i=0;i<this.variante.length;i++){
this.variante[i].requestPrices();}}else{
this.toggleDetail();
this.toggleDetail();
YAHOO.util.Dom.removeClass(this.el,'loading_person');
if(of){
of=null;}
var index=Array.indexOf(offerte.personen,this)+1;
if(index<offerte.personen.length){
offerte.personen[index].requestDetail(0);}else{
for(var ii=0;ii<offerte.personen.length;ii++){
offerte.personen[ii].requestPrices();}
waitdialog.hide();
offerte.setActivePerson(offerte.personen[0]);}}}
this.setJahrgang(person.Jahrgang);
this.setGeschlecht(person.Geschlecht);
this.setUnfall(person.Unfall);
this.setVertragsBeginn(person.Vertragsbeginn);};
Person.prototype.requestDelete=function(){
var jahrgang=getElementsByAttribute('name','jahrgang','input',this.el)[0].value;
if(getElementsByAttribute('name','geschlecht_'+this.id,'INPUT',this.el).length==0){
var els=getElementsByAttribute('name','geschlecht_'+this.id,'SELECT',this.el);
var geschlecht=els[0].value;}else{
var geschlecht=getElementsByAttribute('name','geschlecht_'+this.id,'input',this.el)[0].value;}
if(!confirm(Localisation['js_person_warnung_löschen_1']+geschlecht+", "+jahrgang+Localisation['js_person_warnung_löschen_2'])){
return;}
var pers=this;
var onGetDetailComplete=function(result){
var anim=new YAHOO.util.Anim(pers.el,{opacity:{to:0}},0.5,YAHOO.util.Easing.easeOut);
anim.onComplete.subscribe(function(){offerte.remove(pers);offerte.paintState();});
anim.animate();
offerte.setDirty(true);};
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.DeletePerson,this.id,onGetDetailComplete,OnError,this);};
Person.cmdclick=function(e,person){
if(YAHOO.util.Dom.hasClass(this,'person_status')){
person.toggleDetail();}
if(YAHOO.util.Dom.hasClass(this,'person_commit')){
person.requestDetail(0);}
if(YAHOO.util.Dom.hasClass(this,'person_add')){
if(offerte.personen[0]&&offerte.personen[0].variante[0]&&offerte.personen[0].variante[0].products.length==0){
alert(Localisation['js_person_error_zuerstperson1erfassen']);
var anim1=new YAHOO.util.Anim(offerte.personen[0].el,{opacity:{to:0.5}},.1);
var f=function(){
var anim=new YAHOO.util.Anim(offerte.personen[0].el,{opacity:{to:1}},.1);
var f2=function(){
getElementsByAttribute('name','plz','input',offerte.personen[0].el)[0].select();
getElementsByAttribute('name','plz','input',offerte.personen[0].el)[0].focus();};
anim.onComplete.subscribe(f2);
anim.animate();};
anim1.onComplete.subscribe(f);
anim1.animate();
return;}
var pers=new Person(offerte.personen.length<1);
offerte.add(pers);}
if(YAHOO.util.Dom.hasClass(this,'person_delete')){
person.requestDelete();}
if(YAHOO.util.Dom.hasClass(this,'person_edit')){
YAHOO.util.Dom.replaceClass(person.el,'active_person','new_person');
YAHOO.util.Dom.replaceClass(person.el,'inactive_person','new_person');
YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName('person_details',null,person.el)[0],'show','edit');
Action.DisableAll();}
if(YAHOO.util.Dom.hasClass(this,'variante_new_switch')){
person.requestDetail(person.variante.length);}};
Person.prototype.requestPrices=function(){
for(var i=0;i<this.variante.length;i++){
this.variante[i].requestPrices();}};
Person.prototype.updatePrice=function(){
for(var i=0;i<this.variante.length;i++){
this.variante[i].updatePrice();}};
Person.prototype.getProduct=function(element){
var el_variante=Css.getParent(element,'variante');
var variante=parseInt(getAttrib(el_variante,'name'));
return this.variante[variante].getProduct(element);};
Person.prototype.setDirtyAllProducts=function(){
for(var i=0;i<this.variante.length;i++){
this.variante[i].setDirtyAllProducts();}};
Person.prototype.getPersonalien=function(){
return this.personalien;};
Person.prototype.isComplete=function(){
for(var i=0;i<this.variante.length;i++){
if(!this.variante[i].isComplete()){
this.maxDetail();
return false;}}
return true;};
Person.prototype.setPersonalienUI=function(uidetail){};
function Variante(person,index,rootelement){
this.person=person;
this.index=index;
this.rootelement=rootelement;
this.total=0;
this.products=[];
this.reloadTarif=false;
this.selection={};
this.el_container=document.createElement('div');
YAHOO.util.Dom.addClass(this.el_container,'variante');
YAHOO.util.Dom.addClass(this.el_container,'active_variante');
setAttrib(this.el_container,'name',index);
this.el_head=document.createElement('div');
YAHOO.util.Dom.addClass(this.el_head,'variante_head');
this.el_total=document.createElement('span');
YAHOO.util.Dom.addClass(this.el_total,'variante_head_total');
this.el_head.appendChild(this.el_total);
var el_switch=document.createElement('span');
YAHOO.util.Dom.addClass(el_switch,'variante_head_switch');
YAHOO.util.Dom.addClass(el_switch,'clickable');
YAHOO.util.Event.addListener(el_switch,"click",Variante.toggleListener,this);
this.el_head.appendChild(el_switch);
var el_checkbox_span=document.createElement('span');
YAHOO.util.Dom.addClass(el_checkbox_span,'variante_head_chkbox');
this.el_checkbox=document.createElement('input');
setAttrib(this.el_checkbox,'type','checkbox');
setAttrib(this.el_checkbox,'name','isselected');
el_checkbox_span.appendChild(this.el_checkbox);
this.el_head.appendChild(el_checkbox_span);
this.el_checkbox.checked=true;
this.el_title=document.createElement('span');
YAHOO.util.Dom.addClass(this.el_title,'variante_head_title');
this.el_title.appendChild(document.createTextNode('Variante '+(index+1)));
this.el_head.appendChild(this.el_title);
var el_delete=document.createElement('a');
YAHOO.util.Dom.addClass(el_delete,'variante_head_deleteaction');
YAHOO.util.Dom.addClass(el_delete,'clickable');
YAHOO.util.Event.addListener(el_delete,"click",Variante.deleteListener,this);
var el_imgicon=document.createElement('img');
setAttrib(el_imgicon,'src','img/spacer.gif');
setAttrib(el_imgicon,'height',22);
setAttrib(el_imgicon,'width',22);
el_delete.appendChild(el_imgicon);
this.el_head.appendChild(el_delete);
this.el_body=document.createElement('div');
YAHOO.util.Dom.addClass(this.el_body,'variante_body');
this.el_container.appendChild(this.el_head);
this.el_container.appendChild(this.el_body);
this.rootelement.appendChild(this.el_container);
this.dirty=true;
this.setTotal(0);
this.person.setActiveVariante(this);};
Variante.prototype.GetIsSelected=function(){
var browserName=navigator.appName;
var browserVersion=parseInt(navigator.appVersion);
if(browserName=="Microsoft Internet Explorer"&&browserVersion==4&&navigator.appVersion.indexOf("MSIE 6.0")!=-1){
return true;}
var el=getElementsByAttribute('name','isselected','input',this.el_head)[0];
if(el!=null){
return el.checked;}
return true;};
Variante.prototype.updateTitle=function(){
while(this.el_title.firstChild){
this.el_title.removeChild(this.el_title.firstChild);}
this.el_title.appendChild(document.createTextNode('Variante '+(this.index+1)));};
Variante.prototype.requestDelete=function(){
if(!confirm(Localisation['js_variante_warnung_löschen'])){
return;}
var vari=this;
var onDeleteVarianteComplete=function(result){
var anim=new YAHOO.util.Anim(vari.el_container,{opacity:{to:0}},0.5,YAHOO.util.Easing.easeOut);
anim.onComplete.subscribe(function(){vari.person.remove(vari);offerte.paintState();});
anim.animate();
offerte.setDirty(true);};
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.DeleteVariante,this.person.id,this.index,onDeleteVarianteComplete,OnError,this);};
Variante.prototype.requestPrices=function(){
for(var i=0;i<this.products.length;i++){
var p=this.products[i];
if(p.isDirty()){
p.requestPrice();}}};
Variante.prototype.updatePrice=function(){
if(this.reloadTarif){
this.reloadTarif=false;
this.setDirtyAllProducts();
this.requestPrices();}
var price=0;
for(var i=0;i<this.products.length;i++){
price+=this.products[i].getPrice();}
this.setTotal(price);
offerte.updatePrice();};
Variante.prototype.getProduct=function(element){
var prod_el=Css.getParent(element,'product');
for(var i=0;i<this.products.length;i++){
if(getAttrib(prod_el,'name')==this.products[i].name){
return this.products[i];}}};
Variante.prototype.getProductByName=function(name){
for(var i=0;i<this.products.length;i++){
if(name==this.products[i].name){
return this.products[i];}}};
Variante.prototype.setFlagReloadTarif=function(){
this.reloadTarif=true;};
Variante.prototype.setDirtyAllProducts=function(){
for(var i=0;i<this.products.length;i++){
this.products[i].setDirty(true);}};
Variante.prototype.getBodyEl=function(){
return this.el_body;};
Variante.prototype.getHeadEl=function(){
return this.el_head;};
Variante.prototype.isActive=function(){
return this.el_checkbox.checked;};
Variante.prototype.setTotal=function(value){
var min=this.getMinimumTotal()||0;
this.total=Math.max(value,min);
while(this.el_total.firstChild){
this.el_total.removeChild(this.el_total.firstChild);}
this.el_total.appendChild(document.createTextNode(FormatCurrency(this.total,Localisation['js_general_waehrung_produkt'])));
if(this.index==0){
this.person.setTotal(this.total);}};
Variante.prototype.getTotal=function(){
return this.total;};
Variante.prototype.getMinimumTotal=function(){
var prod=this.getProductByName(Mandant.MindestBetragCtrl);
if(!prod)return;
var el=prod.getProductOptionElement('minvartiante');
if(!el)return;
return parseFloat(prod.getProductValue(el));};
Variante.toggleListener=function(e,variante){
variante.toggleVariante();};
Variante.deleteListener=function(e,variante){
variante.requestDelete();};
Variante.prototype.toggleVariante=function(){
if(YAHOO.util.Dom.hasClass(this.el_container,'active_variante')){
YAHOO.util.Dom.replaceClass(this.el_container,'active_variante','inactive_variante');}else{
this.person.setActiveVariante(this);}};
Variante.prototype.maxVariante=function(){
if(!(YAHOO.util.Dom.hasClass(this.el_container,'active_variante'))){
YAHOO.util.Dom.replaceClass(this.el_container,'inactive_variante','active_variante');}};
Variante.prototype.minVariante=function(){
if((YAHOO.util.Dom.hasClass(this.el_container,'active_variante'))){
YAHOO.util.Dom.replaceClass(this.el_container,'active_variante','inactive_variante');}};
Variante.prototype.setUIDetail=function(uidetail){
this.el_body.innerHTML=uidetail;};
Variante.prototype.RunUiInitCode=function(code){
eval(code);};
Variante.prototype.InitUi=function(){
Array.clear(this.products);
var f=function(el,variante){
var p=new Product(variante,getAttrib(el,'name'),el);
variante.products.push(p);};
var els=YAHOO.util.Dom.getElementsByClassName('product','li',this.el_body);
YAHOO.util.Dom.batch(els,f,this);
var fh=function(el,variante){
var myTooltip=new YAHOO.widget.Tooltip(el,{
context:el.parentNode,
showDelay:100,
hidedelay:2000,
autodismissdelay:40000});};
els=YAHOO.util.Dom.getElementsByClassName('tooltip','span',this.person.el);
YAHOO.util.Dom.batch(els,fh,this);
var f2=function(e,args,variante){
variante.getProduct(this).setDirty(true);
variante.requestPrices();};
for(var i in this.selection){
this.selection[i].subscribe(f2,this);}};
Variante.prototype.RegisterEventSource=function(name,selection_name){
var e='change';
var el=getElementsByAttribute('name',name,'select',this.el_body)[0];
if(!el)el=getElementsByAttribute('name',name,'input',this.el_body)[0];
if(YAHOO.util.Dom.hasClass(el,'checkbox'))e='click';
this.selection[selection_name]=new YAHOO.util.CustomEvent(selection_name,el);
var f=function(e,variante){
variante.selection[selection_name].fire();}
YAHOO.util.Event.addListener(el,e,f,this)};
Variante.prototype.RegisterTextBoxEventSource=function(name){
var el=getElementsByAttribute('name',name,null,this.el_body)[0];
if(YAHOO.util.Dom.hasClass(el,'textboxcollection')){
el=YAHOO.util.Dom.getElementsByClassName('textbox value_element','input',el);}
var f=function(e,variante){
var element=el;
if((e.type=='keypress')&&(e.keyCode!=13))return;
if(YAHOO.util.Dom.hasClass(this,'numeric')){
var Minvalue=element.getAttribute('MinValue');
var Maxvalue=element.getAttribute('MaxValue');
var Precision=element.getAttribute('Precision');
if(this.value<parseFloat(Minvalue))this.value=Minvalue;
if(this.value>parseFloat(Maxvalue))this.value=Maxvalue;
var validnumber=parseFloat(this.value.replace(/,/,'.'));
if(isNaN(validnumber)&&YAHOO.util.Dom.hasClass(this,'invalid'))return;
if(isNaN(validnumber)){
alert(Localisation['js_person_error_keine-gueltige-zahl']);
YAHOO.util.Dom.addClass(this,'invalid');
return;}
if(Precision){
this.value=validnumber.toFixed(Precision);}else{
this.value=validnumber.toFixed(2);}}else if(YAHOO.util.Dom.hasClass(this,'date')){
var regex=new RegExp("(\\d{1,2})\\.(\\d{1,2})\\.(\\d{2,4})");
var ret=regex.exec(this.value);
if(ret){
var day='00000'+ret[1];
var month='00000'+ret[2];
var year=ret[3];
if(year.length<4)year=parseInt(year,10)+2000;
this.value=day.slice(day.length-2)+'.'+month.slice(month.length-2)+'.'+year;}else{
alert(Localisation['js_person_error_kein-gueltiges-datum']);
YAHOO.util.Dom.addClass(this,'invalid');
this.value="";
return;}}
YAHOO.util.Dom.removeClass(this,'invalid');
var prod=variante.getProduct(this);
prod.setDirty(true);
variante.requestPrices();};
YAHOO.util.Event.addListener(el,'keypress',f,this);
YAHOO.util.Event.addListener(el,'blur',f,this);};
Variante.prototype.sp=function(parameter,value,description){
this.SetParameter(parameter,value,description);};
Variante.prototype.SetParameter=function(parameter,value,description){
var element=getElementsByAttribute('name',parameter,'span',this.el_body)[0];
element.innerHTML='';
var prm_val=document.createElement('span');
prm_val.setAttribute('parameter_value',value);
prm_val.className='parameter_value';
prm_val.appendChild(document.createTextNode(description));
element.appendChild(prm_val);
var p=this.getProduct(element);
if(p!=null)p.setDirty(true);};
Variante.prototype.GetParameter=function(parameter,description){
var element=getElementsByAttribute('name',parameter,'span',this.el_body)[0];
var el=YAHOO.util.Dom.getElementsByClassName("parameter_value","span",element)[0];
if(el){
return el.getAttribute('parameter_value');}
return null;};
Variante.prototype.SetCheckBox=function(checkbox,value,description,e){
var element=getElementsByAttribute('name',checkbox,'input',this.el_body)[0];
if(e!=null){
element.checked=value.toLowerCase()=='ja';}
var el=YAHOO.util.Dom.getElementsByClassName("product_title_text","span",element.parentNode)[0];
if(el){
el.innerHTML=description;}
var p=this.getProduct(element);
if(p!=null){
p.setDirty(true);}};
Variante.prototype.SetCheckBoxAktiv=function(checkbox,value,description){
var element=getElementsByAttribute('name',checkbox,'input',this.el_body)[0];
element.disabled=value.toLowerCase()!='ja';};
Variante.prototype.SetCurrencyFaktorMinMaxValue=function(currency,value,description,e){
var element=getElementsByAttribute('name',currency,'input',this.el_body)[0];
element.setAttribute(description.toLowerCase(),value);
var Minvalue=element.getAttribute('minvalue');
var Maxvalue=element.getAttribute('maxvalue');
var currvalue=element.value;
if(currvalue<Minvalue)element.value=Minvalue;
if(currvalue>Maxvalue)element.value=Maxvalue;};
Variante.prototype.runCode=function(prod,d,value,description){
eval(value);
eval(description);};
Variante.prototype.SwitchStyle=function(valueOld,valueNew){
if(valueOld.indexOf('personalien_')>=0){
YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName(valueOld,null,offerte.personen[0].personalien.el)[0],valueOld,valueNew);}else{
YAHOO.util.Dom.replaceClass(this.rootelement,valueOld,valueNew);}}
Variante.prototype.SetHausarztMandatory=function(hausarztControl,value,description,e){
var element=getElementsByAttribute('name',hausarztControl,'table',this.el_body)[0];
if(element==null)return;
if(value.toLowerCase()=='ja'){
YAHOO.util.Dom.addClass(element,"mandatory");}else{
YAHOO.util.Dom.removeClass(element,"mandatory");}
element.description=description;};
Variante.prototype.SetHausarztAktiv=function(hausarztControl,value,description,e){
var element=getElementsByAttribute('name',hausarztControl,'table',this.el_body)[0];
element.disabled=value.toLowerCase()!='ja';};
Variante.prototype.isComplete=function(){
var els=YAHOO.util.Dom.getElementsByClassName("mandatory",null,this.el_body);
var invalid_element=null;
for(var i=0;i<els.length;i++){
var element=els[i];
if(element.tagName=="INPUT"){
if(element.value=""){
YAHOO.util.Dom.addClass(element,"invalid");
if(invalid_element==null)invalid_element=element;}else{
YAHOO.util.Dom.removeClass(element,"invalid");}}
if(YAHOO.util.Dom.hasClass(element,"textboxcollection")){
var els_textbox=YAHOO.util.Dom.getElementsByClassName("value_element",null,element);
for(var j=0;j<els_textbox.length;j++){
if(els_textbox[j].value==""){
YAHOO.util.Dom.addClass(element,"invalid");
if(invalid_element==null)invalid_element=element;
break;}else{
YAHOO.util.Dom.removeClass(element,"invalid");}}}}
if(invalid_element!=null){
this.person.setActiveVariante(this);
var el_product=Css.getParent(invalid_element,'product');
if(el_product==null)el_product=invalid_element;
var selectedPosX=0;
var selectedPosY=0;
while(el_product!=null){
selectedPosX+=el_product.offsetLeft;
selectedPosY+=el_product.offsetTop;
el_product=el_product.offsetParent;}
var anim=new YAHOO.util.Scroll(document.getElementsByTagName('html')[0],{scroll:{to:[0,selectedPosY]}},0.2);
var onComplete=function(){
if(invalid_element.description&&invalid_element.description!=""){
window.alert(invalid_element.description);}else{
window.alert(Localisation['js_personalien_error_eingabenfehlerhaft']);}
if(invalid_element.tagName=="INPUT"){
invalid_element.focus();}else if(YAHOO.util.Dom.hasClass(invalid_element,"textboxcollection")){
YAHOO.util.Dom.getElementsByClassName("value_element",null,element)[0].focus();}}
anim.onComplete.subscribe(onComplete);
anim.animate();}else{
var els=YAHOO.util.Dom.getElementsByClassName("invalid",null,this.el_body);
YAHOO.util.Dom.removeClass(els,"invalid");}
return invalid_element==null;};
function Product(variante,name,element){
this.variante=variante;
this.name=name;
this.el=element;
this.value=0;
this.el_value=YAHOO.util.Dom.getElementsByClassName('product_value',null,this.el)[0];
this.el_chk=YAHOO.util.Dom.getElementsByClassName('chk_prod','input',this.el)[0];
this.dirty=true;
YAHOO.util.Dom.addClass(this.el,'product_detail_inactive');}
Product.prototype.setDirty=function(bol){
this.dirty=bol;};
Product.prototype.isDirty=function(){
return this.dirty;};
Product.prototype.setActive=function(bol){
if(bol){
YAHOO.util.Dom.replaceClass(this.el,'product_detail_inactive','product_detail_active');}else{
YAHOO.util.Dom.replaceClass(this.el,'product_detail_active','product_detail_inactive');}};
Product.prototype.isActive=function(){
if(YAHOO.util.Dom.hasClass(this.el,'product_detail_inactive'))return false;
return true;};
Product.prototype.setTitle=function(description){
var el=YAHOO.util.Dom.getElementsByClassName("product_title_text","span",this.el)[0];
if(el){
el.innerHTML=description;}};
Product.prototype.getProductOptionElement=function(name){
return getElementsByAttribute('name',this.name+'.'+name,null,this.el)[0];};
Product.prototype.getProductValue=function(element){
if(!element)return null;
if(YAHOO.util.Dom.hasClass(element,'parameter')){
return getAttrib(element.firstChild,'parameter_value');}
if(YAHOO.util.Dom.hasClass(element,'checkbox')){
return element.checked;}
if(YAHOO.util.Dom.hasClass(element,'textboxcollection')){
var els=YAHOO.util.Dom.getElementsByClassName("value_element","INPUT",element)
var value=[];
for(var i=0;i<els.length;i++){
value[i]=els[i].value;}
return value.join("|");}
return element.value;};
Product.prototype.requestPrice=function(){
console.log('ChkValue: '+this.name+' = '+(this.el_chk.checked?'true':'false'));
if(this.el_chk.checked){
this.requestAdd();}else{
if(this.isActive())this.requestDelete();}};
Product.prototype.getProductOptionValue=function(productrequest,name){
for(var i=0;i<productrequest.ProductOptions.length;i++){
if(productrequest.ProductOptions[i].Key==name){
return productrequest.ProductOptions[i].Value;}}};
Product.prototype.requestAdd=function(){
var srv_prod=new ch.bambus.webrechner.ProductRequest();
srv_prod.PersonId=this.variante.person.id;
srv_prod.Name=this.name;
srv_prod.ProductOptions=[];
srv_prod.KollektivVertrag=offerte.getKollektivVertrag();
var srv_prod_option=new ch.bambus.webrechner.ProductOptionRequest();
var prod=this;
var f=function(el){
srv_prod_option=new ch.bambus.webrechner.ProductOptionRequest();
srv_prod_option.Key=getAttrib(el,'name').replace(prod.name+'.','');
srv_prod_option.Value=prod.getProductValue(el)
srv_prod.ProductOptions.push(srv_prod_option);};
var els=YAHOO.util.Dom.getElementsByClassName('product_option_value_element',null,this.el);
YAHOO.util.Dom.batch(els,f);
if(this.getProductOptionValue(srv_prod,'bereich')=='DONOTCALC'){
this.setPrice(parseFloat(this.getProductOptionValue(srv_prod,'faktor')));
this.setActive(true);
return;}
this.el_value.innerHTML=waitgif;
prod=this;
var OnProductComplete=function(result,context){
prod.setActive(true);
prod.setPrice(result);
offerte.setDirty(true);
console.log("product add    response: "+prod.name);};
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.GetPrice,srv_prod,this.variante.index,OnProductComplete,OnError,prod);
this.setActive(true);
console.log("product add    request: "+this.name);};
Product.prototype.setPrice=function(value){
this.el_value.innerHTML=FormatCurrency(value,Localisation['js_general_waehrung_produkt']);
this.value=value;
this.variante.updatePrice();
this.dirty=false;};
Product.prototype.requestDelete=function(){
this.el_value.innerHTML=waitgif;
var prod=this;
var OnDeleteComplete=function(result){
prod.setDelete(result);
offerte.setDirty(true);
console.log("product delete response: "+prod.name);};
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.DeleteProduct,this.variante.person.id,this.variante.index,this.name,OnDeleteComplete,OnError,prod);
console.log("product delete request: "+this.name);};
Product.prototype.setDelete=function(value){
this.setActive(false);
this.variante.updatePrice();
this.dirty=false;};
Product.prototype.getPrice=function(){
if(YAHOO.util.Dom.hasClass(this.el,'product_detail_inactive'))return 0;
return this.value;};
function Personalien(person){
this.person=person;
this.el=YAHOO.util.Dom.getElementsByClassName('person_personalien',null,person.el)[0];
var el_radio=getElementsByAttribute('Name','Zustellung_'+person.id,'INPUT',this.el);
if(el_radio){
YAHOO.util.Event.addListener(el_radio,'click',this.EvtZustellungClick,this,true);}
var el_email=getElementsByAttribute('Name','email','INPUT',this.el);
YAHOO.util.Event.addListener(el_email,'blur',this.EvtEMailBlur,this,true);
var el_emailVersand=getElementsByAttribute('Name','emailVersand','INPUT',this.el);
if(el_emailVersand[0]){
el_emailVersand[0].value=document.getElementById('SendToEmail').innerHTML;
YAHOO.util.Event.addListener(el_emailVersand,'blur',this.EvtEMailBlur,this,true);}
var el_arbeitgeberPlz=getElementsByAttribute('Name','arbeitgeberPlz','INPUT',this.el);
if(el_arbeitgeberPlz[0]){
YAHOO.util.Event.addListener(el_arbeitgeberPlz,'blur',this.EvtArbeitgeberPlzBlur,this,true);}
var el_isKunde=getElementsByAttribute('Name','isKunde','INPUT',this.el);
YAHOO.util.Event.addListener(el_isKunde,'click',this.EvtIsKundeClick,this,true);
var el_vorversKvg=getElementsByAttribute('Name','VorversKvg','INPUT',this.el);
YAHOO.util.Event.addListener(el_vorversKvg,'blur',this.EvtVorversKvgBlur,this,true);
var el_vorversKvgGekuendigtId=getElementsByAttribute('Name','VorversKvgGekuendigtId','SELECT',this.el);
YAHOO.util.Event.addListener(el_vorversKvgGekuendigtId,'change',this.EvtVorversKvgGekuendigtIdChange,this,true);
var el_vorversVvg=getElementsByAttribute('Name','VorversVvg','INPUT',this.el);
YAHOO.util.Event.addListener(el_vorversVvg,'blur',this.EvtVorversVvgBlur,this,true);
var el_vorversVvgGekuendigtId=getElementsByAttribute('Name','VorversVvgGekuendigtId','SELECT',this.el);
YAHOO.util.Event.addListener(el_vorversVvgGekuendigtId,'change',this.EvtVorversVvgGekuendigtIdChange,this,true);
var el_vorversAusland=getElementsByAttribute('Name','VorversAusland','INPUT',this.el);
YAHOO.util.Event.addListener(el_vorversAusland,'blur',this.EvtVorversAuslandBlur,this,true);
var el_gebtag=getElementsByAttribute('Name','Geb-Tag','INPUT',this.el);
YAHOO.util.Event.addListener(el_gebtag,'blur',this.EvtGebTagBlur,this,true);
var el_gebmonat=getElementsByAttribute('Name','Geb-Monat','INPUT',this.el);
YAHOO.util.Event.addListener(el_gebmonat,'blur',this.EvtGebMonatBlur,this,true);}
Personalien.prototype.setOrt=function(ort){
var el=this.getElement('ortcontainer','span');
if(ort.OrtBezeichnung!=''){
el.innerHTML='<span name="ort">'+ort.OrtBezeichnung+'</span>';}else{
el.innerHTML='<input class="textbox" name="ort"></input>';}};
Personalien.prototype.setPlz=function(ort){
this.getElement('plz','span').innerHTML=ort.PLZ;};
Personalien.prototype.setJahrgang=function(jahrgang){
this.getElement('jahrgang','span').innerHTML=jahrgang;};
Personalien.prototype.getElementField=function(name,tagname,index){
tagname=tagname||null;
index=index||0;
return getElementsByAttributeField('Name',tagname,this.el,index)[index];};
function getElementsByAttributeField(attrib,tag,root,index){
var i=0;
var method=function(el){
var val=getAttribField(el,attrib);
if(val)var val2=this.getElementValueField(el);
Personalien.prototype.setFelder(val,val2,i,index,el)
i=i+1;
return true;};
return YAHOO.util.Dom.getElementsBy(method,tag,root);}
function getAttribField(el,attrib){
var value=el.getAttribute(attrib);
if(!value){value=el[attrib];}
return value;}
function getElementValueField(element){
if(!element)return null;
if(YAHOO.util.Dom.hasClass(element,'parameter')){return getAttrib(element.firstChild,'parameter_value');}
if(YAHOO.util.Dom.hasClass(element,'checkbox')){return element.checked;}
if(YAHOO.util.Dom.hasClass(element,'radio')){return element.checked;}
if(element.tagName=='SPAN'){return element.innerHTML;}
return element.value;};
Personalien.prototype.setFelder=function(name,value,id,index,el){
offerte.personen[index].fields[name]=new Array();
offerte.personen[index].fields[name]["name"]=name;
offerte.personen[index].fields[name]["value"]=value;
offerte.personen[index].fields[name]["element"]=el;}
Personalien.prototype.checkAndGetValue=function(name,tagname,maxlength,getfiles,index){
tagname=tagname||null;
getfiles=getfiles||0;
if(getfiles==1||getfiles==0){
if(getfiles==1)var test=this.getElementField(name,'input',index);
if(getfiles==1)var test=this.getElementField(name,'select',index);
if(getfiles==1)var test=this.getElementField(name,'span',index);
if(getfiles==1)var test=this.getElementField(name,'textarea',index);
if(!this.person.fields[name])return null;
var el=this.person.fields[name].element;
if(!el)return null;
var val=this.person.fields[name].value;}else if(getfiles==2){
var el=this.getElement(name,tagname);
if(!el)return null;
var val=this.getElementValue(el);}
if(maxlength)val.substring(0,maxlength);
ignore=true;
if(YAHOO.util.Dom.hasClass(el,'doublecheck')){
if(Css.getParent(el,'infoshow').className.indexOf('hide')>=0)ignore=false;}
if(val){
if(YAHOO.util.Dom.hasClass(Css.getParent(el,'value'),'numberonly')||el.className.indexOf("numberonly")>0){
if(isNaN(val)){
YAHOO.util.Dom.addClass(el,'invalid');
return val;}}
YAHOO.util.Dom.removeClass(el,'invalid');
return val;}
GeschlechtStimmt=true;
if(YAHOO.util.Dom.hasClass(el,'m')||YAHOO.util.Dom.hasClass(el,'f')){
if(!YAHOO.util.Dom.hasClass(el,this.person.geschlecht)){
GeschlechtStimmt=false;}}
if(YAHOO.util.Dom.hasClass(Css.getParent(el,'value'),'mandatory')&&GeschlechtStimmt&&ignore){
if(Css.getParent(el,'value').className.indexOf("dynamicInvisible")==-1){
YAHOO.util.Dom.addClass(el,'invalid');}}
return val;};
Personalien.prototype.getValue=function(name,tagname,maxlength,index){
var el_val=this.getElement(name,tagname,index);
return this.getElementValue(el_val,maxlength);};
Personalien.prototype.getElementValue=function(element,maxlength){
if(!element)return null;
if(YAHOO.util.Dom.hasClass(element,'parameter')){return getAttrib(element.firstChild,'parameter_value');}
if(YAHOO.util.Dom.hasClass(element,'checkbox')){return element.checked;}
if(YAHOO.util.Dom.hasClass(element,'radio')){return element.checked;}
if(element.tagName=='SPAN'){return element.innerHTML;}
if(maxlength)element.value.substring(0,maxlength);
return element.value;};
Personalien.prototype.setValue=function(name,tagname,index,value){
var el_val=this.getElement(name,tagname,index);
this.setElementValue(el_val,value);};
Personalien.prototype.setElementValue=function(element,value){
if(!element)return;
if(YAHOO.util.Dom.hasClass(element,'parameter')){setAttrib(element.firstChild,'parameter_value',value);return;}
if(YAHOO.util.Dom.hasClass(element,'checkbox')){element.checked=value;return;}
if(YAHOO.util.Dom.hasClass(element,'radio')){element.checked=value;return;}
if(element.tagName=='SPAN'){element.innerHTML=value;return;}
element.value=value;};
Personalien.prototype.getElement=function(name,tagname,index){
tagname=tagname||null;
index=index||0;
return getElementsByAttribute('Name',name,tagname,this.el)[index];};
Personalien.prototype.EvtZustellungClick=function(e){
var el=YAHOO.util.Event.getTarget(e);
var email=getAttrib(el,'checked')&&getAttrib(el,'value')=='E-Mail';
this.setEmailIsMandatory(email);};
Personalien.prototype.EvtEMailBlur=function(e){
this.CheckPersonalienEMail(YAHOO.util.Event.getTarget(e));};
Personalien.prototype.CheckPersonalienEMail=function(el){
var email=this.getElementValue(el);
var obligataire=YAHOO.util.Dom.hasClass(Css.getParent(el,'value'),'mandatory');
if(el.className.indexOf('entwederoder_')>=0)obligataire=false;
var valid=CheckEmail(email);
var length=email.length;
if(valid){
YAHOO.util.Dom.removeClass(el,'invalid');}else if(length==0&&!obligataire){
YAHOO.util.Dom.removeClass(el,'invalid');}else{
YAHOO.util.Dom.addClass(el,'invalid');}};
Personalien.prototype.EvtArbeitgeberPlzBlur=function(e){
var _elPlz=YAHOO.util.Event.getTarget(e);
var plz=_elPlz.value;
var _elOrt=this.getNextInputElement(_elPlz);
if(!YAHOO.util.Dom.hasClass(_elPlz,'checkPlz')){return;}
if(isNaN(_elPlz.value)||_elPlz.value==""){
alert(Localisation['js_person_ort_selerror']);
_elPlz.focus();
_elPlz.select();
_elOrt.value="";
return;}
var service=ch.bambus.webrechner.service.Cpw2;
service.set_timeout(20000);
netque.request(service.GetOrtDesc,
plz,
BAMBUS.cpw2.CountryToolbar.getCountry(),
function(result,_elOrt){
if(result.Orte.length==1){
_elOrt.value=result.Orte[0].OrtBezeichnung;}
if(result.Orte.length>1){
BAMBUS.cpw2.PLZDialog.init();
BAMBUS.cpw2.PLZDialog.onSubmit.subscribe(
function(eventname,params,scope){
scope.value=params[0].OrtBezeichnung;
BAMBUS.cpw2.PLZDialog.onSubmit.unsubscribe();},
_elOrt);
BAMBUS.cpw2.PLZDialog.show(result.Orte);}
if(result.GemeindeNr<0){
alert(Localisation['js_person_ort_selerror']);
_elPlz.focus();
_elPlz.select();}},
OnError,
_elOrt);};
Personalien.prototype.getNextInputElement=function(el){
var elNextInput=el.nextSibling;
while(elNextInput!=null&&elNextInput.nodeType!=1&&elNextInput.tagName!="INPUT"){
var elNextInput=elNextInput.nextSibling;}
return elNextInput;}
Personalien.prototype.EvtIsKundeClick=function(e){
this.setPolicenNrXabled();};
Personalien.prototype.setPolicenNrXabled=function(){
var el=this.getElement('isKunde','INPUT');
var el_textbox=this.getElement('PoliceNr','INPUT');
var el_policenr=Css.getParent(el_textbox,'value');
if(getAttrib(el,'checked')){
el_textbox.disabled=false;
YAHOO.util.Dom.removeClass(el_policenr,'disabled');}else{
el_textbox.value='';
el_textbox.disabled=true;
YAHOO.util.Dom.addClass(el_policenr,'disabled');}
var el_textbox2=this.getElement('VersichertenNr','INPUT');
if(el_textbox2){
var el_versichertennr=Css.getParent(el_textbox2,'value');
if(getAttrib(el,'checked')){
el_textbox2.disabled=false;
YAHOO.util.Dom.removeClass(el_versichertennr,'disabled');}else{
el_textbox2.value='';
el_textbox2.disabled=true;
YAHOO.util.Dom.addClass(el_versichertennr,'disabled');}}};
Personalien.prototype.EvtVorversKvgBlur=function(e){
this.setVorversKvgXabled();};
Personalien.prototype.setVorversKvgXabled=function(){
var el=this.getElement('VorversKvg','INPUT');
var el_select=this.getElement('VorversKvgGekuendigtId','SELECT');
var el_parent=Css.getParent(el_select,'value');
if(el.value!=''){
el_select.disabled=false;
YAHOO.util.Dom.removeClass(el_parent,'disabled');}else{
el_select.value='';
el_select.disabled=true;
YAHOO.util.Dom.addClass(el_parent,'disabled');
YAHOO.util.Dom.removeClass(el_select,'invalid');
el_select=this.getElement('VorversKvgGekuendigtDatum','INPUT');
el_parent=Css.getParent(el_select,'value');
el_select.value='';
el_select.disabled=true;
YAHOO.util.Dom.addClass(el_parent,'disabled');
YAHOO.util.Dom.removeClass(el_select,'invalid');}};
Personalien.prototype.EvtVorversKvgGekuendigtIdChange=function(e){
this.setVorversKvgGekuendigtIdXabled();};
Personalien.prototype.setVorversKvgGekuendigtIdXabled=function(){
var el=this.getElement('VorversKvgGekuendigtId','SELECT');
var el_select=this.getElement('VorversKvgGekuendigtDatum','INPUT');
var el_parent=Css.getParent(el_select,'value');
if(el.value=='1'){
el_select.disabled=false;
YAHOO.util.Dom.removeClass(el_parent,'disabled');}else{
el_select.value='';
el_select.disabled=true;
YAHOO.util.Dom.addClass(el_parent,'disabled');
YAHOO.util.Dom.removeClass(el_select,'invalid');}};
Personalien.prototype.EvtVorversVvgBlur=function(e){
this.setVorversVvgXabled();};
Personalien.prototype.setVorversVvgXabled=function(){
var el=this.getElement('VorversVvg','INPUT');
var el_select=this.getElement('VorversVvgGekuendigtId','SELECT');
var el_parent=Css.getParent(el_select,'value');
if(el.value!=''){
el_select.disabled=false;
YAHOO.util.Dom.removeClass(el_parent,'disabled');}else{
el_select.value='';
el_select.disabled=true;
YAHOO.util.Dom.addClass(el_parent,'disabled');
YAHOO.util.Dom.removeClass(el_select,'invalid');
el_select=this.getElement('VorversVvgGekuendigtDatum','INPUT');
el_parent=Css.getParent(el_select,'value');
el_select.value='';
el_select.disabled=true;
YAHOO.util.Dom.addClass(el_parent,'disabled');
YAHOO.util.Dom.removeClass(el_select,'invalid');}};
Personalien.prototype.EvtVorversVvgGekuendigtIdChange=function(e){
this.setVorversVvgGekuendigtIdXabled();};
Personalien.prototype.setVorversVvgGekuendigtIdXabled=function(){
var el=this.getElement('VorversVvgGekuendigtId','SELECT');
var el_select=this.getElement('VorversVvgGekuendigtDatum','INPUT');
var el_parent=Css.getParent(el_select,'value');
if(el.value=='1'){
el_select.disabled=false;
YAHOO.util.Dom.removeClass(el_parent,'disabled');}else{
el_select.value='';
el_select.disabled=true;
YAHOO.util.Dom.addClass(el_parent,'disabled');
YAHOO.util.Dom.removeClass(el_select,'invalid');}};
Personalien.prototype.EvtVorversAuslandBlur=function(e){
this.setVorversAuslandXabled();};
Personalien.prototype.setVorversAuslandXabled=function(){
var el=this.getElement('VorversAusland','INPUT');
var el_select=this.getElement('VorversAuslandImigrationDatum','INPUT');
var el_parent=Css.getParent(el_select,'value');
var only=YAHOO.util.Dom.hasClass(el_parent,'only');
if(el.value!=''||only){
el_select.disabled=false;
YAHOO.util.Dom.removeClass(el_parent,'disabled');}else{
el_select.value='';
el_select.disabled=true;
YAHOO.util.Dom.addClass(el_parent,'disabled');
YAHOO.util.Dom.removeClass(el_select,'invalid');}
el_select=this.getElement('VorversAuslandGekuendigtDatum','INPUT');
el_parent=Css.getParent(el_select,'value');
if(el.value!=''){
el_select.disabled=false;
YAHOO.util.Dom.removeClass(el_parent,'disabled');}else{
el_select.value='';
el_select.disabled=true;
YAHOO.util.Dom.addClass(el_parent,'disabled');
YAHOO.util.Dom.removeClass(el_select,'invalid');}};
Personalien.prototype.EvtGebTagBlur=function(e){
var el=YAHOO.util.Event.getTarget(e);
var value=this.checkNum(el,1,31);};
Personalien.prototype.EvtGebMonatBlur=function(e){
var el=YAHOO.util.Event.getTarget(e);
var value=this.checkNum(el,1,12);};
Personalien.prototype.checkNum=function(el,min,max){
var val=el.value;
var min2=min||Number.MIN_VALUE;
var max2=max||Number.MAX_VALUE;
if(isNaN(val)||val<min2||val>max2){
YAHOO.util.Dom.addClass(el,'invalid');
return;}else{
YAHOO.util.Dom.removeClass(el,'invalid');}
return ConvertToInt(el.value);};
Personalien.prototype.setEmailIsMandatory=function(isMandatory){
var el_email=Css.getParent(this.getElement('email','INPUT'),'value');
if(!isMandatory){
YAHOO.util.Dom.removeClass(el_email,'mandatory');}else{
YAHOO.util.Dom.addClass(el_email,'mandatory');}
this.CheckPersonalienEMail(this.getElement('email','INPUT'));};
Personalien.prototype.setZustellungVisible=function(isZustellungVisible){
var el=Css.getParent(getElementsByAttribute('Name','Zustellung_'+this.person.id,'INPUT',this.el)[0],'value')
if(isZustellungVisible){
YAHOO.util.Dom.addClass(el,'mandatory');
YAHOO.util.Dom.removeClass(el,'transparent');}else{
YAHOO.util.Dom.removeClass(el,'mandatory');
YAHOO.util.Dom.addClass(el,'transparent');}};
function Button(name,icon,caption,tooltiptext){
this.name=name;
var root=document.createElement("div");
YAHOO.util.Dom.addClass(root,"action");
var roundleft=document.createElement("span");
YAHOO.util.Dom.addClass(roundleft,"action_roundleft");
root.appendChild(roundleft);
var action_icon=document.createElement("span");
YAHOO.util.Dom.addClass(action_icon,"action_icon");
YAHOO.util.Dom.addClass(action_icon,icon);
root.appendChild(action_icon);
var action_caption=document.createElement("span");
YAHOO.util.Dom.addClass(action_caption,"action_caption");
root.appendChild(action_caption);
var link=document.createElement("a");
link.appendChild(document.createTextNode(caption));
action_caption.appendChild(link);
var roundright=document.createElement("span");
YAHOO.util.Dom.addClass(roundright,"action_roundright");
root.appendChild(roundright);
var myTooltip=new YAHOO.widget.Tooltip("myTooltip",{
context:link,
text:tooltiptext,
showDelay:100,
autodismissdelay:20000});
this.el=root;}
Button.prototype.setVisible=function(isVisible){
if(isVisible){
YAHOO.util.Dom.removeClass(this.el,"invisible");}else{
YAHOO.util.Dom.addClass(this.el,"invisible");}};
Button.prototype.onclick=function(handler){
var hdl=handler;
var f=function(e,cmd){
if(cmd.isEnabled())
hdl.call(cmd,e);};
YAHOO.util.Event.addListener(this.el,'click',f,this);};
Button.prototype.setEnabled=function(isEnabled){
if(isEnabled){
YAHOO.util.Dom.removeClass(this.el,"disabled");}else{
YAHOO.util.Dom.addClass(this.el,"disabled");}};
Button.prototype.isEnabled=function(){
return !YAHOO.util.Dom.hasClass(this.el,"disabled");};
function ToolbarButton(name,icon,caption,tooltiptext,cssclass){
this.name=name;
var link=document.createElement('a');
link.setAttribute("href","#");
YAHOO.util.Dom.addClass(link,cssclass||'toolbar_action');
var action_icon=document.createElement('img');
action_icon.src=icon;
action_icon.alt='';
var action_text=document.createElement('span');
action_text.appendChild(document.createTextNode(caption));
link.appendChild(action_icon);
link.appendChild(action_text);
YAHOO.util.Dom.generateId(link,'tb');
var myTooltip=new YAHOO.widget.Tooltip(link.id,{
context:link,
text:tooltiptext,
showDelay:100,
autodismissdelay:20000});
this.el=link;}
ToolbarButton.prototype.setVisible=function(isVisible){
if(isVisible){
YAHOO.util.Dom.removeClass(this.el,"invisible");}else{
YAHOO.util.Dom.addClass(this.el,"invisible");}};
ToolbarButton.prototype.onclick=function(handler){
var hdl=handler;
var f=function(e,cmd){
if(cmd.isEnabled())
hdl.call(cmd,e);};
YAHOO.util.Event.addListener(this.el,'click',f,this);};
ToolbarButton.prototype.setEnabled=function(isEnabled){
if(isEnabled){
YAHOO.util.Dom.removeClass(this.el,"disabled");}else{
YAHOO.util.Dom.addClass(this.el,"disabled");}};
ToolbarButton.prototype.isEnabled=function(){
return !YAHOO.util.Dom.hasClass(this.el,"disabled");};
function ToolbarText(name,caption,cssclass){
this.name=name;
var span=document.createElement('span');
YAHOO.util.Dom.addClass(span,cssclass||'toolbar_action');
var action_text=document.createElement('span');
action_text.appendChild(document.createTextNode(caption));
span.appendChild(action_text);
this.el=span;}
Css={};
Css.getParent=function(element,classname){
if(YAHOO.util.Dom.hasClass(element.parentNode,classname)){
return element.parentNode;}else{
return Css.getParent(element.parentNode,classname);}};
function SelectComponent(element){
this.el=element;}
SelectComponent.prototype.length=function(){
return this.el.options.length;};
SelectComponent.prototype.value=function(){
return this.el.value;};
SelectComponent.prototype.clear=function(){
while(this.length()>0){
this.el.options[0]=null;}};
SelectComponent.prototype.addOption=function(text,value,defaultSelected,selected){
this.el.options[this.length()]=new Option(text,value,defaultSelected,selected);};
SelectComponent.prototype.selectOption=function(selectValue){
for(var i=0;i<this.length();i++){
if(this.el.options[i].value==selectValue){
this.el.options[i].selected=true;}}};
SelectComponent.prototype.setEnabled=function(bol){
this.el.disabled=!bol;};
SelectComponent.prototype.isEnabled=function(){
return !this.el.disabled;};
function ReInitSelection(select_name,variante,init_function){
var sel=new SelectComponent(getElementsByAttribute('name',select_name,'select',variante.getBodyEl())[0]);
var oldval=sel.value();
sel.clear();
init_function(sel,variante);
sel.selectOption(oldval);}
function TextBoxComponent(element){
this.el=element;}
TextBoxComponent.prototype.length=function(){
return this.el.value.length;};
TextBoxComponent.prototype.getValue=function(){
return this.el.value;};
TextBoxComponent.prototype.setValue=function(value){
this.el.value=value;};
TextBoxComponent.prototype.clear=function(){
this.el.value=''};
TextBoxComponent.prototype.setEnabled=function(bol){
this.el.disabled=!bol;};
TextBoxComponent.prototype.isEnabled=function(){
return !this.el.disabled;};
function ReInitTextBox(textBox_name,variante,init_function){
var txt=new TextBoxComponent(getElementsByAttribute('name',textBox_name,'input',variante.el_body)[0]);
init_function(txt,variante);}
function HausarztComponent(element){
this.el=element;}
HausarztComponent.prototype.getValue=function(){
return this.el.value;};
HausarztComponent.prototype.setValue=function(value){
this.el.value=value;};
HausarztComponent.prototype.setEnabled=function(bol){
this.el.disabled=!bol;};
HausarztComponent.prototype.isEnabled=function(){
return !this.el.disabled;};
HausarztComponent.prototype.setMandatory=function(bol){
if(bol){
return YAHOO.util.Dom.addClass(this.el,"mandatory");}else{
return YAHOO.util.Dom.removeClass(this.el,"mandatory");}};
HausarztComponent.prototype.isMndatory=function(){
return YAHOO.util.Dom.hasClass(this.el,"mandatory");};
function ReInitHausarzt(hausarzt_name,person,init_function){
var txt=new HausarztComponent(getElementsByAttribute('name',hausarzt_name,'input',person.el)[0]);
init_function(txt,person);}
function Equal(element,string2){
var val=null;
if(YAHOO.util.Dom.hasClass(element,"select"))val=element.value;
if(YAHOO.util.Dom.hasClass(element,"checkbox")&&element.checked)val='Ja';
if(YAHOO.util.Dom.hasClass(element,"checkbox")&&!element.checked)val='Nein';
if(string2.search(/\*/)||string2=='*'){
var regexp=new RegExp('^'+string2.replace(/\*/,'.*')+'$');
return regexp.test(val);}else{
return val==string2;}}
function CheckEmail(email){
return email.match(/^[\w\.\-]+@([\w\-]+\.)*[\w\-]{2,63}\.[a-zA-Z]{2,4}$/);}
function getElementsByAttribute(attrib,testfor,tag,root){
var method=function(el){
var val=getAttrib(el,attrib);
if(!val)return false;
return(''+val).match('(?:^|\\s+)'+testfor+'(?:\\s+|$)');};
return YAHOO.util.Dom.getElementsBy(method,tag,root);}
function getAttrib(el,attrib){
var value=el.getAttribute(attrib);
if(!value){value=el[attrib];}
return value;}
function setAttrib(el,attrib,value){
el.setAttribute(attrib,value);}
function OnError(result,context){
if(result&&result.get_message&&result.get_stackTrace){
alert(result.get_message()+result.get_stackTrace());}else{
alert(Localisation['js_general_unbekannterfehler']);}}
function OnTimeout(result,context){}
printing={};
var doc;
printing.print=function(el_base){
doc=el_base.ownerDocument;
var el_basediv=doc.createElement('span');
for(var i=0;i<offerte.personen.length;i++){
var pers=offerte.personen[i];
var el_table=printing.getPersonTable(pers);
el_basediv.appendChild(el_table);}
el_basediv.appendChild(printing.getTotal());
el_base.innerHTML=el_basediv.innerHTML;};
printing.getPersonTable=function(pers){
var el_table=doc.createElement('table');
YAHOO.util.Dom.addClass(el_table,'person');
el_table.appendChild(printing.getTableHead());
var el_row=doc.createElement('tr');
var el_td_desc=doc.createElement('td');
el_td_desc.setAttribute('colspan',2);
el_td_desc.appendChild(printing.getPersonText(pers));
el_row.appendChild(el_td_desc);
el_table.appendChild(el_row);
for(var k=0;k<pers.variante.length;k++){
var el_row_variante=doc.createElement('tr');
YAHOO.util.Dom.addClass(el_row_variante,'variante');
var el_td_variante_desc=doc.createElement('td');
el_td_variante_desc.setAttribute('colspan',2);
el_td_variante_desc.appendChild(printing.getVarianteText(pers.variante[k]));
el_row_variante.appendChild(el_td_variante_desc);
el_table.appendChild(el_row_variante);
for(var j=0;j<pers.variante[k].products.length;j++){
var prod=pers.variante[k].products[j];
if(!prod.isActive())continue;
el_prod_text=printing.getProductText(prod);
el_table.appendChild(el_prod_text);}}
return el_table;};
printing.getTableHead=function(){
var el_head=doc.createElement('tr');
var el_head1=doc.createElement('th');
YAHOO.util.Dom.addClass(el_head1,'col1');
var el_head2=doc.createElement('th');
YAHOO.util.Dom.addClass(el_head2,'col2');
el_head.appendChild(el_head1);
el_head.appendChild(el_head2);
return el_head;};
printing.getPersonText=function(pers){
var el_table=doc.createElement('table');
YAHOO.util.Dom.addClass(el_table,'person_desc');
var el_row=doc.createElement('tr');
var el_td_desc=doc.createElement('td');
el_td_desc.appendChild(printing.getPersonIcon(pers));
el_td_desc.appendChild(doc.createTextNode(pers.getDescription()));
var el_td_total=doc.createElement('td');
YAHOO.util.Dom.addClass(el_td_total,'value_col');
el_td_total.appendChild(doc.createTextNode(pers.getTotal()));
el_row.appendChild(el_td_desc);
el_row.appendChild(el_td_total);
el_table.appendChild(el_row);
return el_table;};
printing.getVarianteText=function(variante){
var el_table=doc.createElement('table');
YAHOO.util.Dom.addClass(el_table,'variante_desc');
var el_row=doc.createElement('tr');
var el_td_spacer=doc.createElement('td');
YAHOO.util.Dom.addClass(el_td_spacer,'variante_spacer');
var el_td_desc=doc.createElement('td');
el_td_desc.appendChild(doc.createTextNode('Variante '+(variante.index+1)));
var el_td_total=doc.createElement('td');
YAHOO.util.Dom.addClass(el_td_total,'value_col');
el_td_total.appendChild(doc.createTextNode(FormatCurrency(variante.getTotal(),Localisation['js_general_waehrung_produkt'])));
el_row.appendChild(el_td_spacer);
el_row.appendChild(el_td_desc);
el_row.appendChild(el_td_total);
el_table.appendChild(el_row);
return el_table;};
var icons={
men:'img/geschl_men.gif',
women:'img/geschl_women.gif',
girl:'img/geschl_girl.gif',
boy:'img/geschl_boy.gif'};
printing.getPersonIcon=function(pers){
var icon=pers.getIconType();
var el_img=doc.createElement('img');
el_img.setAttribute('src',icons[icon]);
el_img.setAttribute('alt','');
YAHOO.util.Dom.addClass(el_img,'person_icon');
return el_img;};
printing.getProductText=function(prod){
var el_prod_row=doc.createElement('tr');
var el_prod_row_colspacer=doc.createElement('td');
YAHOO.util.Dom.addClass(el_prod_row_colspacer,'spacer');
el_prod_row.appendChild(el_prod_row_colspacer);
var el_prod_row_coldesc=doc.createElement('td');
YAHOO.util.Dom.addClass(el_prod_row_coldesc,'value');
el_prod_row.appendChild(el_prod_row_coldesc);
if(prod.el.hasChildNodes()){
var children=prod.el.childNodes;
for(var k=0;k<children.length;k++){
var child=children[k];
if(child.nodeType==3)continue;
if(YAHOO.util.Dom.hasClass(child,'parameter')||YAHOO.util.Dom.hasClass(child,'invisible')){
continue;}
el_prod_option_desc=printing.getProductOptionText(child);
if(el_prod_option_desc){
el_prod_row_coldesc.appendChild(el_prod_option_desc);
if(el_prod_option_desc.tagName!='TABLE'){
el_prod_row_coldesc.appendChild(doc.createElement('br'));}}};};
return el_prod_row;};
printing.getProductOptionText=function(child){
if(YAHOO.util.Dom.hasClass(child,'person_product_option')){
var el_span=doc.createElement('span');
var text='';
var els=YAHOO.util.Dom.getElementsByClassName('product_option_name',null,child);
for(var i=0;i<els.length;i++){
text+=els[i].firstChild.nodeValue;}
if(text!='')text+=': ';
el_span.appendChild(doc.createTextNode(text));
var el_bold=doc.createElement('span');
YAHOO.util.Dom.addClass(el_bold,'product_option_name');
els=YAHOO.util.Dom.getElementsByClassName('product_option_value_element',null,child);
for(var ii=0;ii<els.length;ii++){
el_bold.appendChild(printing.getValueDesc(els[ii]));}
el_span.appendChild(el_bold);
return el_span;};
if(YAHOO.util.Dom.hasClass(child,'product_title')){
return printing.getProductTitleTable(child);}};
printing.getProductTitleTable=function(child){
var el_table=doc.createElement('table');
el_table.setAttribute('cellspacing','0');
el_table.setAttribute('cellpadding','0');
YAHOO.util.Dom.addClass(el_table,'product_title');
var el_row=doc.createElement('tr');
var el_col=doc.createElement('td');
var text=printing.getProductTitle(child);
el_col.appendChild(doc.createTextNode(text));
el_row.appendChild(el_col);
var el_value=YAHOO.util.Dom.getElementsByClassName('product_value','div',child.parentNode)[0];
if(!YAHOO.util.Dom.hasClass(el_value,'transparent')){
text=el_value.firstChild.nodeValue;}else{
text='';}
el_col=doc.createElement('td');
YAHOO.util.Dom.addClass(el_col,'value_col');
el_col.appendChild(doc.createTextNode(text));
el_row.appendChild(el_col);
el_table.appendChild(el_row);
return el_table;};
printing.getProductTitle=function(child){
var el_value=YAHOO.util.Dom.getElementsByClassName('product_title_text','span',child.parentNode)[0];
if(el_value){
if(el_value.innerText)return el_value.innerText;
if(el_value.textContent)return el_value.textContent;}else{
return '';}};
printing.getValueDesc=function(el_base){
if(el_base.tagName=='SELECT'){
var text=el_base.options[el_base.selectedIndex].text;
return doc.createTextNode(text);}
if(el_base.tagName=='INPUT'&&el_base.getAttribute('type').toLowerCase()=='text'){
return doc.createTextNode(el_base.value);}
if(el_base.tagName=='TABLE'){
var text2='';
var els=YAHOO.util.Dom.getElementsByClassName('value_element','INPUT',el_base);
for(var i=0;i<els.length;i++){
if(els[i].value>''){
text2=text2+', '+els[i].value;}}
text2=text2.slice(2);
return doc.createTextNode(text2);}
if(el_base.tagName=='INPUT'&&el_base.getAttribute('type').toLowerCase()=='checkbox'){
var el=doc.createElement('img');
el.setAttribute('alt','');
if(el_base.checked){
el.setAttribute('src','img/tick_ticked.gif');}else{
el.setAttribute('src','img/tick_unticked.gif');}
return el;}};
printing.getTotal=function(){
var el_table=doc.createElement('table');
YAHOO.util.Dom.addClass(el_table,'total');
var el_row=doc.createElement('tr');
var el_td_total=doc.createElement('td');
var text='';
if(offerte.el_total&&offerte.el_total.firstChild!=null){
var node=offerte.el_total.nextSibling;
while(node.nodeType!=1){
node=node.nextSibling;}
text=node.firstChild.nodeValue;
text+=offerte.el_total.firstChild.nodeValue+' ';}
if(offerte.el_totalMonat&&offerte.el_totalMonat.firstChild!=null){
var node=offerte.el_totalMonat.nextSibling;
while(node.nodeType!=1){
node=node.nextSibling;}
text+=node.firstChild.nodeValue;
text+=offerte.el_totalMonat.firstChild.nodeValue+' ';}
if(offerte.el_totalJahr&&offerte.el_totalJahr.firstChild!=null){
var node=offerte.el_totalJahr.nextSibling;
while(node.nodeType!=1){
node=node.nextSibling;}
text+=node.firstChild.nodeValue;
text+=offerte.el_totalJahr.firstChild.nodeValue+' ';}
el_td_total.appendChild(doc.createTextNode(text));
el_row.appendChild(el_td_total);
el_table.appendChild(el_row);
return el_table;};


