1 2 3if(typeof($) !== "function") {$ = jQuery;};$.is_cham_system = true;$.document_path = '';$.testsystem = '0';$.document_protocol = 'https://';$.currency_str = 'EUR';$.currency_symbol = '€';$.gmap_api_key = 'AIzaSyBGW7LpHJFtoAeHKuYye73capNfXLydBH4';;(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} 4if(typeof options=='function'){options={success:options};} 5var action=this.attr('action');var url=(typeof action==='string')?$.trim(action):'';if(url){url=(url.match(/^([^#]+)/)||[])[1];} 6url=url||window.location.href||'';options=$.extend(true,{url:url,success:$.ajaxSettings.success,type:this[0].getAttribute('method')||'GET',iframeSrc:/^https/i.test(window.location.href||'')?'javascript:false':'about:blank'},options);var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} 7if(options.beforeSerialize&&options.beforeSerialize(this,options)===false){log('ajaxSubmit: submit aborted via beforeSerialize callback');return this;} 8var n,v,a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(n in options.data){if(options.data[n]instanceof Array){for(var k in options.data[n]){a.push({name:n,value:options.data[n][k]});}} 9else{v=options.data[n];v=$.isFunction(v)?v():v;a.push({name:n,value:v});}}} 10if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} 11this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} 12var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} 13else{options.data=q;} 14var $form=this,callbacks=[];if(options.resetForm){callbacks.push(function(){$form.resetForm();});} 15if(options.clearForm){callbacks.push(function(){$form.clearForm();});} 16if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){var fn=options.replaceTarget?'replaceWith':'html';$(options.target)[fn](data).each(oldSuccess,arguments);});} 17else if(options.success){callbacks.push(options.success);} 18options.success=function(data,status,xhr){var context=options.context||options;for(var i=0,max=callbacks.length;i<max;i++){callbacks[i].apply(context,[data,status,xhr||$form,$form]);}};var fileInputs=$('input:file',this).length>0;var mp='multipart/form-data';var multipart=($form.attr('enctype')==mp||$form.attr('encoding')==mp);if(options.iframe!==false&&(fileInputs||options.iframe||multipart)){if(options.closeKeepAlive){$.get(options.closeKeepAlive,fileUpload);} 19else{fileUpload();}} 20else{$.ajax(options);} 21this.trigger('form-submit-notify',[this,options]);return this;function fileUpload(){var form=$form[0];if($(':input[name=submit],:input[id=submit]',form).length){alert('Error: Form elements must not have name or id of "submit".');return;} 22var s=$.extend(true,{},$.ajaxSettings,options);s.context=s.context||s;var id='jqFormIO'+(new Date().getTime()),fn='_'+id;var $io=$('<iframe id="'+id+'" name="'+id+'" src="'+s.iframeSrc+'" />');var io=$io[0];$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={aborted:0,responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){},abort:function(){log('aborting upload...');var e='aborted';this.aborted=1;$io.attr('src',s.iframeSrc);xhr.error=e;s.error&&s.error.call(s.context,xhr,'error',e);g&&$.event.trigger("ajaxError",[xhr,s,e]);s.complete&&s.complete.call(s.context,xhr,'error');}};var g=s.global;if(g&&!$.active++){$.event.trigger("ajaxStart");} 23if(g){$.event.trigger("ajaxSend",[xhr,s]);} 24if(s.beforeSend&&s.beforeSend.call(s.context,xhr,s)===false){if(s.global){$.active--;} 25return;} 26if(xhr.aborted){return;} 27var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){s.extraData=s.extraData||{};s.extraData[n]=sub.value;if(sub.type=="image"){s.extraData[n+'.x']=form.clk_x;s.extraData[n+'.y']=form.clk_y;}}} 28function doSubmit(){var t=$form.attr('target'),a=$form.attr('action');form.setAttribute('target',id);if(form.getAttribute('method')!='POST'){form.setAttribute('method','POST');} 29if(form.getAttribute('action')!=s.url){form.setAttribute('action',s.url);} 30if(!s.skipEncodingOverride){$form.attr({encoding:'multipart/form-data',enctype:'multipart/form-data'});} 31if(s.timeout){setTimeout(function(){timedOut=true;cb();},s.timeout);} 32var extraInputs=[];try{if(s.extraData){for(var n in s.extraData){extraInputs.push($('<input type="hidden" name="'+n+'" value="'+s.extraData[n]+'" />').appendTo(form)[0]);}} 33$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} 34finally{form.setAttribute('action',a);if(t){form.setAttribute('target',t);}else{$form.removeAttr('target');} 35$(extraInputs).remove();}} 36if(s.forceSync){doSubmit();} 37else{setTimeout(doSubmit,10);} 38var data,doc,domCheckCount=50;function cb(){if(xhr.aborted){return;} 39var doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(!doc||doc.location.href==s.iframeSrc){if(!timedOut) 40return;} 41io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var ok=true;try{if(timedOut){throw'timeout';} 42var isXml=s.dataType=='xml'||doc.XMLDocument||$.isXMLDoc(doc);log('isXml='+isXml);if(!isXml&&window.opera&&(doc.body==null||doc.body.innerHTML=='')){if(--domCheckCount){log('requeing onLoad callback, DOM not available');setTimeout(cb,250);return;}} 43xhr.responseText=doc.body?doc.body.innerHTML:doc.documentElement?doc.documentElement.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':s.dataType};return headers[header];};var scr=/(json|script)/.test(s.dataType);if(scr||s.textarea){var ta=doc.getElementsByTagName('textarea')[0];if(ta){xhr.responseText=ta.value;} 44else if(scr){var pre=doc.getElementsByTagName('pre')[0];var b=doc.getElementsByTagName('body')[0];if(pre){xhr.responseText=pre.textContent;} 45else if(b){xhr.responseText=b.innerHTML;}}} 46else if(s.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} 47data=httpData(xhr,s.dataType,s);} 48catch(e){log('error caught:',e);ok=false;xhr.error=e;s.error&&s.error.call(s.context,xhr,'error',e);g&&$.event.trigger("ajaxError",[xhr,s,e]);} 49if(xhr.aborted){log('upload aborted');ok=false;} 50if(ok){s.success&&s.success.call(s.context,data,'success',xhr);g&&$.event.trigger("ajaxSuccess",[xhr,s]);} 51g&&$.event.trigger("ajaxComplete",[xhr,s]);if(g&&!--$.active){$.event.trigger("ajaxStop");} 52s.complete&&s.complete.call(s.context,xhr,ok?'success':'error');setTimeout(function(){$io.removeData('form-plugin-onload');$io.remove();xhr.responseXML=null;},100);} 53var toXml=$.parseXML||function(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} 54else{doc=(new DOMParser()).parseFromString(s,'text/xml');} 55return(doc&&doc.documentElement&&doc.documentElement.nodeName!='parsererror')?doc:null;};var parseJSON=$.parseJSON||function(s){return window['eval']('('+s+')');};var httpData=function(xhr,type,s){var ct=xhr.getResponseHeader('content-type')||'',xml=type==='xml'||!type&&ct.indexOf('xml')>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.nodeName==='parsererror'){$.error&&$.error('parsererror');} 56if(s&&s.dataFilter){data=s.dataFilter(data,type);} 57if(typeof data==='string'){if(type==='json'||!type&&ct.indexOf('json')>=0){data=parseJSON(data);}else if(type==="script"||!type&&ct.indexOf("javascript")>=0){$.globalEval(data);}} 58return data;};}};$.fn.ajaxForm=function(options){if(this.length===0){var o={s:this.selector,c:this.context};if(!$.isReady&&o.s){log('DOM not ready, queuing ajaxForm');$(function(){$(o.s,o.c).ajaxForm(options);});return this;} 59log('terminating; zero elements found by selector'+($.isReady?'':' (DOM not ready)'));return this;} 60return this.ajaxFormUnbind().bind('submit.form-plugin',function(e){if(!e.isDefaultPrevented()){e.preventDefault();$(this).ajaxSubmit(options);}}).bind('click.form-plugin',function(e){var target=e.target;var $el=$(target);if(!($el.is(":submit,input:image"))){var t=$el.closest(':submit');if(t.length==0){return;} 61target=t[0];} 62var form=this;form.clk=target;if(target.type=='image'){if(e.offsetX!=undefined){form.clk_x=e.offsetX;form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$el.offset();form.clk_x=e.pageX-offset.left;form.clk_y=e.pageY-offset.top;}else{form.clk_x=e.pageX-target.offsetLeft;form.clk_y=e.pageY-target.offsetTop;}} 63setTimeout(function(){form.clk=form.clk_x=form.clk_y=null;},100);});};$.fn.ajaxFormUnbind=function(){return this.unbind('submit.form-plugin click.form-plugin');};$.fn.formToArray=function(semantic){var a=[];if(this.length===0){return a;} 64var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els){return a;} 65var i,j,n,v,el,max,jmax;for(i=0,max=els.length;i<max;i++){el=els[i];n=el.name;if(!n){continue;} 66if(semantic&&form.clk&&el.type=="image"){if(!el.disabled&&form.clk==el){a.push({name:n,value:$(el).val()});a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y});} 67continue;} 68v=$.fieldValue(el,true);if(v&&v.constructor==Array){for(j=0,jmax=v.length;j<jmax;j++){a.push({name:n,value:v[j]});}} 69else if(v!==null&&typeof v!='undefined'){a.push({name:n,value:v});}} 70if(!semantic&&form.clk){var $input=$(form.clk),input=$input[0];n=input.name;if(n&&!input.disabled&&input.type=='image'){a.push({name:n,value:$input.val()});a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y});}} 71return a;};
71$.fn.formSerialize=function(semantic){return $.param(this.formToArray(semantic));};$.fn.fieldSerialize=function(successful){var a=[];this.each(function(){var n=this.name;if(!n){return;} 72var v=$.fieldValue(this,successful);if(v&&v.constructor==Array){for(var i=0,max=v.length;i<max;i++){a.push({name:n,value:v[i]});}} 73else if(v!==null&&typeof v!='undefined'){a.push({name:this.name,value:v});}});return $.param(a);};$.fn.fieldValue=function(successful){for(var val=[],i=0,max=this.length;i<max;i++){var el=this[i];var v=$.fieldValue(el,successful);if(v===null||typeof v=='undefined'||(v.constructor==Array&&!v.length)){continue;} 74v.constructor==Array?$.merge(val,v):val.push(v);} 75return val;};$.fieldValue=function(el,successful){var n=el.name,t=el.type,tag=el.tagName.toLowerCase();if(successful===undefined){successful=true;} 76if(successful&&(!n||el.disabled||t=='reset'||t=='button'||(t=='checkbox'||t=='radio')&&!el.checked||(t=='submit'||t=='image')&&el.form&&el.form.clk!=el||tag=='select'&&el.selectedIndex==-1)){return null;} 77if(tag=='select'){var index=el.selectedIndex;if(index<0){return null;} 78var a=[],ops=el.options;var one=(t=='select-one');var max=(one?index+1:ops.length);for(var i=(one?index:0);i<max;i++){var op=ops[i];if(op.selected){var v=op.value;if(!v){v=(op.attributes&&op.attributes['value']&&!(op.attributes['value'].specified))?op.text:op.value;} 79if(one){return v;} 80a.push(v);}} 81return a;} 82return $(el).val();};$.fn.clearForm=function(){return this.each(function(){$('input,select,textarea',this).clearFields();});};$.fn.clearFields=$.fn.clearInputs=function(){return this.each(function(){var t=this.type,tag=this.tagName.toLowerCase();if(t=='text'||t=='password'||tag=='textarea'){this.value='';} 83else if(t=='checkbox'||t=='radio'){this.checked=false;} 84else if(tag=='select'){this.selectedIndex=-1;}});};$.fn.resetForm=function(){return this.each(function(){if(typeof this.reset=='function'||(typeof this.reset=='object'&&!this.reset.nodeType)){this.reset();}});};$.fn.enable=function(b){if(b===undefined){b=true;} 85return this.each(function(){this.disabled=!b;});};$.fn.selected=function(select){if(select===undefined){select=true;} 86return this.each(function(){var t=this.type;if(t=='checkbox'||t=='radio'){this.checked=select;} 87else if(this.tagName.toLowerCase()=='option'){var $sel=$(this).parent('select');if(select&&$sel[0]&&$sel[0].type=='select-one'){$sel.find('option').selected(false);} 88this.selected=select;}});};function log(){if($.fn.ajaxSubmit.debug){var msg='[jquery.form] '+Array.prototype.join.call(arguments,'');if(window.console&&window.console.log){window.console.log(msg);} 89else if(window.opera&&window.opera.postError){window.opera.postError(msg);}}};})(jQuery); 90 91 92 93/** 94 * Copyright 2010 Tim Down. 95 * 96 * Licensed under the Apache License, Version 2.0 (the "License"); 97 * you may not use this file except in compliance with the License. 98 * You may obtain a copy of the License at 99 * 100 * http://www.apache.org/licenses/LICENSE-2.0 101 * 102 * Unless required by applicable law or agreed to in writing, software 103 * distributed under the License is distributed on an "AS IS" BASIS, 104 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 105 * See the License for the specific language governing permissions and 106 * limitations under the License. 107 */ 108function HashSet(c,a){var b=new Hashtable(c,a);this.add=function(d){b.put(d,true)};this.addAll=function(d){var e=d.length;while(e--){b.put(d[e],true)}};this.values=function(){return b.keys()};this.remove=function(d){return b.remove(d)?d:null};this.contains=function(d){return b.containsKey(d)};this.clear=function(){b.clear()};this.size=function(){return b.size()};this.isEmpty=function(){return b.isEmpty()};this.clone=function(){var d=new HashSet(c,a);d.addAll(b.keys());return d};this.intersection=function(d){var h=new HashSet(c,a);var e=d.values(),f=e.length,g;while(f--){g=e[f];if(b.containsKey(g)){h.add(g)}}return h};this.union=function(d){var g=this.clone();var e=d.values(),f=e.length,h;while(f--){h=e[f];if(!b.containsKey(h)){g.add(h)}}return g};this.isSubsetOf=function(d){var e=b.keys(),f=e.length;while(f--){if(!d.contains(e[f])){return false}}return true}}; 109 110/** 111 * Copyright 2010 Tim Down. 112 * 113 * Licensed under the Apache License, Version 2.0 (the "License");
114 * you may not use this file except in compliance with the License. 115 * You may obtain a copy of the License at 116 * 117 * http://www.apache.org/licenses/LICENSE-2.0 118 * 119 * Unless required by applicable law or agreed to in writing, software 120 * distributed under the License is distributed on an "AS IS" BASIS, 121 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 122 * See the License for the specific language governing permissions and 123 * limitations under the License. 124 */ 125var Hashtable=(function(){var p="function";var n=(typeof Array.prototype.splice==p)?function(s,r){s.splice(r,1)}:function(u,t){var s,v,r;if(t===u.length-1){u.length=t}else{s=u.slice(t+1);u.length=t;for(v=0,r=s.length;v<r;++v){u[t+v]=s[v]}}};function a(t){var r;if(typeof t=="string"){return t}else{if(typeof t.hashCode==p){r=t.hashCode();return(typeof r=="string")?r:a(r)}else{if(typeof t.toString==p){return t.toString()}else{try{return String(t)}catch(s){return Object.prototype.toString.call(t)}}}}}function g(r,s){return r.equals(s)}function e(r,s){return(typeof s.equals==p)?s.equals(r):(r===s)}function c(r){return function(s){if(s===null){throw new Error("null is not a valid "+r)}else{if(typeof s=="undefined"){throw new Error(r+" must not be undefined")}}}}var q=c("key"),l=c("value");function d(u,s,t,r){this[0]=u;this.entries=[];this.addEntry(s,t);if(r!==null){this.getEqualityFunction=function(){return r}}}var h=0,j=1,f=2;function o(r){return function(t){var s=this.entries.length,v,u=this.getEqualityFunction(t);while(s--){v=this.entries[s];if(u(t,v[0])){switch(r){case h:return true;case j:return v;case f:return[s,v[1]]}}}return false}}function k(r){return function(u){var v=u.length;for(var t=0,s=this.entries.length;t<s;++t){u[v+t]=this.entries[t][r]}}}d.prototype={getEqualityFunction:function(r){return(typeof r.equals==p)?g:e},getEntryForKey:o(j),getEntryAndIndexForKey:o(f),removeEntryForKey:function(s){var r=this.getEntryAndIndexForKey(s);if(r){n(this.entries,r[0]);return r[1]}return null},addEntry:function(r,s){this.entries[this.entries.length]=[r,s]},keys:k(0),values:k(1),getEntries:function(s){var u=s.length;for(var t=0,r=this.entries.length;t<r;++t){s[u+t]=this.entries[t].slice(0)}},containsKey:o(h),containsValue:function(s){var r=this.entries.length;while(r--){if(s===this.entries[r][1]){return true}}return false}};function m(s,t){var r=s.length,u;while(r--){u=s[r];if(t===u[0]){return r}}return null}function i(r,s){var t=r[s];return(t&&(t instanceof d))?t:null}function b(t,r){var w=this;var v=[];var u={};var x=(typeof t==p)?t:a;var s=(typeof r==p)?r:null;this.put=function(B,C){q(B);l(C);var D=x(B),E,A,z=null;E=i(u,D);if(E){A=E.getEntryForKey(B);if(A){z=A[1];A[1]=C}else{E.addEntry(B,C)}}else{E=new d(D,B,C,s);v[v.length]=E;u[D]=E}return z};this.get=function(A){q(A);var B=x(A);var C=i(u,B);if(C){var z=C.getEntryForKey(A);if(z){return z[1]}}return null};this.containsKey=function(A){q(A);var z=x(A);var B=i(u,z);return B?B.containsKey(A):false};this.containsValue=function(A){l(A);var z=v.length;while(z--){if(v[z].containsValue(A)){return true}}return false};this.clear=function(){v.length=0;u={}};this.isEmpty=function(){return !v.length};var y=function(z){return function(){var A=[],B=v.length;while(B--){v[B][z](A)}return A}};this.keys=y("keys");this.values=y("values");this.entries=y("getEntries");this.remove=function(B){q(B);var C=x(B),z,A=null;var D=i(u,C);if(D){A=D.removeEntryForKey(B);if(A!==null){if(!D.entries.length){z=m(v,C);n(v,z);delete u[C]}}}return A};this.size=function(){var A=0,z=v.length;while(z--){A+=v[z].entries.length}return A};this.each=function(C){var z=w.entries(),A=z.length,B;while(A--){B=z[A];C(B[0],B[1])}};this.putAll=function(H,C){var B=H.entries();var E,F,D,z,A=B.length;var G=(typeof C==p);while(A--){E=B[A];F=E[0];D=E[1];if(G&&(z=w.get(F))){D=C(F,z,D)}w.put(F,D)}};this.clone=function(){var z=new b(t,r);z.putAll(w);return z}}return b})(); 126 127 128(function(jQuery){var nfLocales=new Hashtable();var nfLocalesLikeUS=['ae','au','ca','cn','eg','gb','hk','il','in','jp','sk','th','tw','us'];var nfLocalesLikeDE=['at','br','de','dk','es','gr','it','nl','pt','tr','vn'];var nfLocalesLikeFR=['cz','fi','fr','ru','se','pl'];var nfLocalesLikeCH=['ch'];var nfLocaleFormatting=[[".",","],[",","."],[","," "],[".","'"]];var nfAllLocales=[nfLocalesLikeUS,nfLocalesLikeDE,nfLocalesLikeFR,nfLocalesLikeCH] 129function FormatData(dec,group,neg){this.dec=dec;this.group=group;this.neg=neg;};
129function init(){for(var localeGroupIdx=0;localeGroupIdx<nfAllLocales.length;localeGroupIdx++){localeGroup=nfAllLocales[localeGroupIdx];for(var i=0;i<localeGroup.length;i++){nfLocales.put(localeGroup[i],localeGroupIdx);}}};function formatCodes(locale){if(nfLocales.size()==0) 130init();var dec=".";var group=",";var neg="-";var codesIndex=nfLocales.get(locale);if(codesIndex){var codes=nfLocaleFormatting[codesIndex];if(codes){dec=codes[0];group=codes[1];}} 131return new FormatData(dec,group,neg);};jQuery.fn.formatNumber=function(options,writeBack,giveReturnValue){return this.each(function(){if(writeBack==null) 132writeBack=true;if(giveReturnValue==null) 133giveReturnValue=true;var text;if(jQuery(this).is(":input")) 134text=new String(jQuery(this).val());else 135text=new String(jQuery(this).text());var returnString=jQuery.formatNumber(text,options);if(writeBack){if(jQuery(this).is(":input")) 136jQuery(this).val(returnString);else 137jQuery(this).text(returnString);} 138if(giveReturnValue) 139return returnString;});};jQuery.formatNumber=function(numberString,options){var options=jQuery.extend({},jQuery.fn.formatNumber.defaults,options);var formatData=formatCodes(options.locale.toLowerCase());var dec=formatData.dec;var group=formatData.group;var neg=formatData.neg;
139var validFormat="0#-,.";var prefix="";var negativeInFront=false;for(var i=0;i<options.format.length;i++){if(validFormat.indexOf(options.format.charAt(i))==-1) 140prefix=prefix+options.format.charAt(i);else 141if(i==0&&options.format.charAt(i)=='-'){negativeInFront=true;continue;} 142else 143break;} 144var suffix="";for(var i=options.format.length-1;i>=0;i--){if(validFormat.indexOf(options.format.charAt(i))==-1) 145suffix=options.format.charAt(i)+suffix;else 146break;} 147options.format=options.format.substring(prefix.length);options.format=options.format.substring(0,options.format.length-suffix.length);var number=new Number(numberString);return jQuery._formatNumber(number,options,suffix,prefix,negativeInFront);};jQuery._formatNumber=function(number,options,suffix,prefix,negativeInFront){var options=jQuery.extend({},jQuery.fn.formatNumber.defaults,options);var formatData=formatCodes(options.locale.toLowerCase());var dec=formatData.dec;var group=formatData.group;var neg=formatData.neg;var forcedToZero=false;if(isNaN(number)){if(options.nanForceZero==true){number=0;forcedToZero=true;}else 148return null;} 149if(suffix=="%") 150number=number*100;var returnString="";if(options.format.indexOf(".")>-1){var decimalPortion=dec;var decimalFormat=options.format.substring(options.format.lastIndexOf(".")+1);if(options.round==true) 151number=new Number(number.toFixed(decimalFormat.length));else{var numStr=number.toString();numStr=numStr.substring(0,numStr.lastIndexOf('.')+decimalFormat.length+1);number=new Number(numStr);} 152var decimalValue=number%1;var decimalString=new String(decimalValue.toFixed(decimalFormat.length));decimalString=decimalString.substring(decimalString.lastIndexOf(".")+1);for(var i=0;i<decimalFormat.length;i++){if(decimalFormat.charAt(i)=='#'&&decimalString.charAt(i)!='0'){decimalPortion+=decimalString.charAt(i);continue;}else if(decimalFormat.charAt(i)=='#'&&decimalString.charAt(i)=='0'){var notParsed=decimalString.substring(i);if(notParsed.match('[1-9]')){decimalPortion+=decimalString.charAt(i);continue;}else 153break;}else if(decimalFormat.charAt(i)=="0") 154decimalPortion+=decimalString.charAt(i);} 155returnString+=decimalPortion}else 156number=Math.round(number);var ones=Math.floor(number);if(number<0) 157ones=Math.ceil(number);var onesFormat="";if(options.format.indexOf(".")==-1) 158onesFormat=options.format;else 159onesFormat=options.format.substring(0,options.format.indexOf("."));var onePortion="";if(!(ones==0&&onesFormat.substr(onesFormat.length-1)=='#')||forcedToZero){var oneText=new String(Math.abs(ones));var groupLength=9999;if(onesFormat.lastIndexOf(",")!=-1) 160groupLength=onesFormat.length-onesFormat.lastIndexOf(",")-1;var groupCount=0;for(var i=oneText.length-1;i>-1;i--){onePortion=oneText.charAt(i)+onePortion;groupCount++;if(groupCount==groupLength&&i!=0){onePortion=group+onePortion;groupCount=0;}} 161if(onesFormat.length>onePortion.length){var padStart=onesFormat.indexOf('0');if(padStart!=-1){var padLen=onesFormat.length-padStart;while(onePortion.length<padLen){onePortion='0'+onePortion;}}}} 162if(!onePortion&&onesFormat.indexOf('0',onesFormat.length-1)!==-1) 163onePortion='0';returnString=onePortion+returnString;if(number<0&&negativeInFront&&prefix.length>0) 164prefix=neg+prefix;else if(number<0) 165returnString=neg+returnString;if(!options.decimalSeparatorAlwaysShown){if(returnString.lastIndexOf(dec)==returnString.length-1){returnString=returnString.substring(0,returnString.length-1);}} 166returnString=prefix+returnString+suffix;return returnString;};jQuery.fn.parseNumber=function(options,writeBack,giveReturnValue){if(writeBack==null) 167writeBack=true;if(giveReturnValue==null) 168giveReturnValue=true;var text;if(jQuery(this).is(":input")) 169text=new String(jQuery(this).val());else 170text=new String(jQuery(this).text());var number=jQuery.parseNumber(text,options);if(number){if(writeBack){if(jQuery(this).is(":input")) 171jQuery(this).val(number.toString());else 172jQuery(this).text(number.toString());} 173if(giveReturnValue) 174return number;}};jQuery.parseNumber=function(numberString,options){var options=jQuery.extend({},jQuery.fn.parseNumber.defaults,options);var formatData=formatCodes(options.locale.toLowerCase());var dec=formatData.dec;var group=formatData.group;var neg=formatData.neg;
174var valid="1234567890.-";while(numberString.indexOf(group)>-1) 175numberString=numberString.replace(group,'');numberString=numberString.replace(dec,".").replace(neg,"-");var validText="";var hasPercent=false;if(numberString.charAt(numberString.length-1)=="%") 176hasPercent=true;for(var i=0;i<numberString.length;i++){if(valid.indexOf(numberString.charAt(i))>-1) 177validText=validText+numberString.charAt(i);} 178var number=new Number(validText);if(hasPercent){number=number/100;number=number.toFixed(validText.length-1);} 179return number;};jQuery.fn.parseNumber.defaults={locale:"us",decimalSeparatorAlwaysShown:false};jQuery.fn.formatNumber.defaults={format:"#,###.00",locale:"us",decimalSeparatorAlwaysShown:false,nanForceZero:true,round:true};Number.prototype.toFixed=function(precision){return $._roundNumber(this,precision);};jQuery._roundNumber=function(number,decimalPlaces){var power=Math.pow(10,decimalPlaces||0);var value=String(Math.round(number*power)/power);if(decimalPlaces>0){var dp=value.indexOf(".");if(dp==-1){value+='.';dp=0;}else{dp=value.length-(dp+1);} 180while(dp<decimalPlaces){value+='0';dp++;}} 181return value;};})(jQuery); 182 183 184jQuery.cookie=function(key,value,options){if(arguments.length>1&&String(value)!=="[object Object]"){options=jQuery.extend({},options);if(value===null||value===undefined){options.expires=-1;} 185if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setDate(t.getDate()+days);} 186value=String(value);return(document.cookie=[encodeURIComponent(key),'=',options.raw?value:encodeURIComponent(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''));} 187options=value||{};var result,decode=options.raw?function(s){return s;}:decodeURIComponent;return(result=new RegExp('(?:^|; )'+encodeURIComponent(key)+'=([^;]*)').exec(document.cookie))?decode(result[1]):null;}; 188 189 190jQuery.extend(jQuery.expr[':'],{data:function(obj,index,meta){return $(obj).data(meta[3].split(',')[0])==meta[3].split(',')[1];},external:function(obj){return typeof obj.href!='undefined'&&obj.href!=''&&!obj.href.match(/^mailto\:/)&&!obj.href.match(/^javascript\:/)&&!obj.href.match(/^\#$/)&&(obj.hostname!=location.hostname);},mailto:function(obj){return typeof obj.href!='undefined'&&obj.href!=''&&obj.href.match(/^mailto\:/);}
190,code:function(obj) 191{if($(obj).is(':input')&&$(obj).attr('name')&&$(obj).attr('name').match(/^RT_RLEID_/)) 192{return true;}else{return false;}},choosencode:function(obj) 193{if($(obj).is(':code')) 194{if($(obj).data('check')) 195{for(var i in $(obj).data('check')) 196{var check=$('#'+$(obj).data('check')[i]);if(check.length==0||((check.is(':checkbox')||check.is(':radio'))&&!check.is(':checked'))||(check.is(':hidden')&&check.val().length==0)) 197return false;}} 198return true;} 199return false;},regex:function(elem,index,match){var matchParams=match[3].split(','),validLabels=/^(data|css):/,attr={method:matchParams[0].match(validLabels)?matchParams[0].split(':')[0]:'attr',property:matchParams.shift().replace(validLabels,'')},regexFlags='ig',regex=new RegExp(matchParams.join('').replace(/^\s+|\s+$/g,''),regexFlags);return regex.test(jQuery(elem)[attr.method](attr.property));},codstring:function(obj,index,meta) 200{if($(obj).is('option')&&$(obj).attr('value')) 201{if($(obj).parentsUntil('select').length) 202{return $(obj).parentsUntil('select').parent().data($(obj).attr('value'))&&$(obj).parentsUntil('select').parent().data($(obj).attr('value'))['string']==meta[3];} 203else 204{return $(obj).parent().data($(obj).attr('value'))&&$(obj).parent().data($(obj).attr('value'))['string']==meta[3];}} 205return false;},zusatzleistung:function(obj) 206{return $(obj).is(':input')&&$(obj).attr('name').match(/^BOOK_RLEID/)&&true;},choosenzusatzleistung:function(obj) 207{return $(obj).is(':zusatzleistung')&&$(obj).is(':checked');}});(function($){$.fn.here=function(msg){if(typeof console!='undefined'&&typeof console.log!='undefined') 208console.log("%s: %o",msg,this);return this;};$.fn.ie_alert=function(msg) 209{var $alert=$('#alert');if($alert.length==0) 210{$alert=$('<div id="alert"></div>').appendTo('body');} 211$alert.append('<div style="border-bottom:1px solid grey">'+msg+'</div>');return this;};$.fn.center=function(){if(this.css('position')!='absolute')this.css("position","absolute");this.css('top',(($(window).height()-this.outerHeight())/2)+$(window).scrollTop()+"px").css('left',(($(window).width()-this.outerWidth())/2)+$(window).scrollLeft()+"px");return this;};$.fn.incChar=function(){$(this).val(String.fromCharCode(Number($(this).val().charCodeAt(0))+Number(1)));return this;};$.fn.decChar=function(){if($(this).val()!='a'){$(this).val(String.fromCharCode(Number($(this).val().charCodeAt(0))-1));} 212return this;};$.fn.combineFields=function(visibleFields,trenner){var fieldValue=$(this).data({fields:visibleFields,trenner:trenner}).val();fieldValue=fieldValue.split(trenner);for(var i in fieldValue) 213{$(visibleFields[i]).val(fieldValue[i]);} 214for(i in visibleFields) 215{$(visibleFields[i]).data('main','#'+$(this).attr('id')).change(function(){var fieldValues=new Array();var main=$($(this).data('main'));var fields=main.data('fields');for(var j in fields) 216{fieldValues.push($(fields[j]).val());} 217main.val(fieldValues.join(main.data('trenner')));});}};$.fn.hideOption=function(){this.each(function(){$(this).attr('disabled','disabled');});};$.fn.showOption=function(){$(this).each(function(){$(this).removeAttr('disabled');});};$.fn.fixBisDateRelative=function(VONDAT_ID,BISDAT_ID){if(!VONDAT_ID||!BISDAT_ID){return;} 218var arVonDate=$('#'+VONDAT_ID).val().match(/^([0-3]?[0-9])[\.\\\-\/]?([0-1]?[0-9]?)[\.\\\-\/]?(((19|20)?[0-9]{2})?)$/);var arBisDate=$('#'+BISDAT_ID).val().match(/^([0-3]?[0-9])[\.\\\-\/]?([0-1]?[0-9]?)[\.\\\-\/]?(((19|20)?[0-9]{2})?)$/);if(!arBisDate){return;} 219if(!arBisDate[3]&&arVonDate[3]){arBisDate[3]=arVonDate[3];var vonDate=$.datepicker.parseDate('ddmmyy',arVonDate.slice(1,4).join(''));var bisDate=$.datepicker.parseDate('ddmmyy',arBisDate.slice(1,4).join(''));if(bisDate<vonDate){arBisDate[3]++;bisDate=$.datepicker.parseDate('ddmmyy',arBisDate.slice(1,4).join(''));} 220$('#'+BISDAT_ID).val($.datepicker.formatDate($.datepicker._defaults.dateFormat,bisDate));} 221$('#'+BISDAT_ID).autosenseDate();};$.fn.autosenseDate=function(){var arDateValue=$(this).val().match(/^([0-3]?[0-9])[\.\\\-\/]?([0-1]?[0-9]?)[\.\\\-\/]?(((19|20)?[0-9]{2})?)$/);if(!arDateValue||!arDateValue[2]){$(this).val('');return;} 222var cDateValue=null;if(!arDateValue[3]){var cDateNow=new Date();cDateNow.setHours(0,0,0,0);arDateValue[3]=cDateNow.getUTCFullYear().toString().substring(2);cDateValue=$.datepicker.parseDate('ddmmyy',arDateValue.slice(1,4).join(''));if(cDateNow>cDateValue){arDateValue[3]++;}} 223cDateValue=$.datepicker.parseDate('ddmmyy',arDateValue.slice(1,4).join(''));$(this).val($.datepicker.formatDate($.datepicker._defaults.dateFormat,cDateValue));};$.fn.autosenseTime=function() 224{var selectedTime=$(this).val().match(/^([0-2]?[0-9])[:]?([0-5]?[0-9]?)[:]?([0-5]?[0-9]?)$/);if(!selectedTime) 225{$(this).val('');return;} 226if(selectedTime[1]<10) 227{selectedTime[1]='0'+Number(selectedTime[1]);} 228if(!selectedTime[2]) 229{selectedTime[2]=0;} 230if(selectedTime[2]<10) 231{selectedTime[2]='0'+Number(selectedTime[2]);} 232if(!selectedTime[3]) 233{$(this).val(selectedTime.slice(1,3).join(':'));} 234else 235{if(selectedTime[3]<10) 236{selectedTime[3]='0'+Number(selectedTime[3]);} 237$(this).val(selectedTime.slice(1,4).join(':'));}};$.array_count=function(ar) 238{var counter=0;$.each(ar,function(){counter++;});return counter;};$.fn.getUrlParam=function(strParamName){strParamName=escape(unescape(strParamName));var returnVal=new Array();var qString=null;if($(this).attr("nodeName")=="#document"){if(window.location.search.search(strParamName)>-1){qString=window.location.search.substr(1,window.location.search.length).split("&");}}else if($(this).attr("src")!="undefined"){var strHref=$(this).attr("src");if(strHref.indexOf("?")>-1){var strQueryString=strHref.substr(strHref.indexOf("?")+1);qString=strQueryString.split("&");}}else if($(this).attr("href")!="undefined"){var strHref=$(this).attr("href");if(strHref.indexOf("?")>-1){var strQueryString=strHref.substr(strHref.indexOf("?")+1);qString=strQueryString.split("&");}}else{return null;} 239if(qString==null)return null;for(var i=0;i<qString.length;i++){if(escape(unescape(qString[i].split("=")[0]))==strParamName){returnVal.push(qString[i].split("=")[1]);}} 240if(returnVal.length==0)return null;else if(returnVal.length==1)return returnVal[0];else return returnVal;};$.fn.loadanimation=function(options) 241{var settings=$.extend({background:false,timeout:false,image:"../image/ajax-loader.gif",hide:false,relative:true},options);if(settings.hide) 242{this.find('.tos_loadanimation').remove();} 243else 244{if(settings.relative) 245{this.css('position','relative');} 246this.prepend("<div class='tos_loadanimation'></div>");loader=this.find('.tos_loadanimation');
246loader.css('background-image','url('+settings.image+')');if(settings.background) 247{loader.addClass('tos_loadanimation_background');} 248if(settings.timeout) 249{window.setTimeout(function(){loader.remove();},settings.timeout);}} 250return this;};if(typeof $.widget!='undefined') 251{$.widget('ui.slideshow',{options:{width:0,hideCtrls:true,slidesSelector:'.slide',slidesVisible:4},slides:null,inner:null,controls:{},current:0,_create:function() 252{this.slides=this.element.css('overflow','hidden').find(this.options.slidesSelector).wrapAll('<div class="slideshowInner"></div>').css({'float':'left','width':this.options.width});this.inner=this.element.find('.slideshowInner').css('width',this.options.width*this.slides.length);this.element.prepend('<span class="slideLeftControl"></span>').append('<span class="slideRightControl"></span>');this.controls.left=this.element.find('.slideLeftControl');this.controls.right=this.element.find('.slideRightControl');},_init:function() 253{this.element.addClass('hasSlideshow').bind('slideshow:left',function() 254{$(this).slideshow('slide','left');}).bind('slideshow:right',function() 255{$(this).slideshow('slide','right');});this.element.find('.slideLeftControl').click(function(){$(this).parent().trigger('slideshow:left');});this.element.find('.slideRightControl').click(function(){$(this).parent().trigger('slideshow:right');});this.slide('init');},slide:function(direction){if(direction=='left') 256this.current--;else if(direction=='right') 257this.current++;this.controls.left.show();this.controls.right.show();if(this.current<=0) 258{this.current=0;if(this.options.hideCtrls) 259this.controls.left.hide();} 260else if(this.current>=this.slides.length-this.options.slidesVisible-1) 261{this.current=this.slides.length-1-this.options.slidesVisible;if(this.options.hideCtrls) 262this.controls.right.hide();} 263this.inner.animate({'marginLeft':this.options.width*this.current*-1});},_setOption:function(){$.Widget.prototype._setOption.apply(this,arguments);},_destroy:function() 264{this.element.find('.slideLeftControl, .slideRightControl').remove();this.element.css('overflow','').removeClass('hasSlide').unbind('slideshow:left').unbind('slideshow:right').find(this.options.slidesSelector).unwrap();$.Widget.prototype.destroy.apply(this,arguments);}});$.extend($.ui.slideshow,{version:'1.0',defaults:{}});}})(jQuery);function parseQuery(q){var e,a=/\+/g,r=/([^&=]+)=?([^&]*)/g,d=function(s){return decodeURIComponent(s.replace(a," "));},ar={};if(typeof q=='undefined') 265{q=window.location.search.substring(1);} 266while(e=r.exec(q)) 267ar[d(e[1])]=d(e[2]);return ar;} 268function parseQuery2Arrays(q){var e,a=/\+/g,r=/([^&=]+)=?([^&]*)/g,d=function(s){return decodeURIComponent(s.replace(a," "));},ar={};if(typeof q=='undefined') 269{q=window.location.search.substring(1);} 270while(e=r.exec(q)) 271{if(typeof(ar[d(e[1])])=='object') 272{ar[d(e[1])].push(d(e[2]));} 273else 274{ar[d(e[1])]=[d(e[2])];}} 275return ar;} 276function rangeDatepicker(input){var min=new Date();min.setDate(min.getDate()+$(input).data('min'));minRange=$(input).data('minrange');if(typeof(minRange)=='undefined'||minRange=='') 277minRange=0;var ret={minDate:min};if(input.id==$(input).data('to')) 278{ret.minDate=$('#'+$(input).data('from')).datepicker("getDate");if(ret.minDate<min) 279ret.minDate=min;if(ret.minDate!=null) 280ret.minDate.setDate(ret.minDate.getDate()+minRange);} 281else if(input.id==$(input).data('from')) 282{ret.maxDate=$('#'+$(input).data('to')).datepicker("getDate");if(ret.maxDate!=null) 283ret.maxDate.setDate(ret.maxDate.getDate()-minRange);} 284return ret;} 285function rangeDatepickerMark(date) 286{if($('#'+$(this).data('from')).datepicker('getDate')!=null&&$('#'+$(this).data('to')).datepicker('getDate')!=null) 287{if(date>=$('#'+$(this).data('from')).datepicker('getDate')&&$('#'+$(this).data('to')).datepicker('getDate')>=date) 288return[true,'ui-datepicker-range'];} 289return[true,''];} 290function showRequestGebDat(arTranslation){var erwachsene=Number($('#ANZAHL_ERWACHSENE').val());var personen=erwachsene;arTranslation=(typeof arTranslation==="undefined")?{}:arTranslation;var arDefaultTranslation={kind:'Kind',baby:'Baby'};arTranslation=$.extend({},arDefaultTranslation,arTranslation);var kinder=$('#ANZAHL_KINDER');var babies=$('#ANZAHL_BABY');var placeholder=$('#ANZAHL_KINDER').data('placeholder');if(kinder.length>0) 291{kinder=Number(kinder.val());} 292else 293{kinder=0;} 294if(babies.length>0) 295{babies=Number(babies.val());} 296else 297{babies=0;} 298personen=personen+kinder+babies;if(placeholder) 299{placeholder=' placeholder="'+placeholder+'" ';} 300else 301{placeholder='';} 302if(kinder+babies>0) 303{var insert=$('#alter').show().find('div');var arKind=[];insert.find('.kind').each(function(){arKind.push($(this).val());});var arBaby=[];insert.find('.baby').each(function(){arBaby.push($(this).val());});insert.empty();for(var i=1;i<=kinder;i++) 304{var rt=erwachsene+i;var value;if(typeof(arKind[i-1])!='undefined') 305value='value="'+arKind[i-1]+'"';else 306value='';insert.append('<label>'+i+'. '+arTranslation['kind']+'</label>');insert.append('<input type="text" class="alter kind required autosensedate" name="RT_GEBDATUM_'+ 307rt+'" '+value+placeholder+'/>');} 308for(var i=1;i<=babies;i++) 309{var rt=erwachsene+kinder+i;var value;if(typeof(arBaby[i-1])!='undefined') 310value='value="'+arBaby[i-1]+'"';else 311value='';insert.append('<label>'+i+'. '+arTranslation['baby']+'</label>');insert.append('<input type="text" class="alter baby required autosensedate" name="RT_GEBDATUM_'+ 312rt+'" '+value+placeholder+'/>');}} 313else 314{$('#alter').hide().find('div').empty();} 315$('#leistungen .anzahl_msb_K select').val(personen);$('.teilnehmer_zuord_F').empty().each(function(){var rleid=$(this).attr('data-rleid');var suffix=$(this).attr('data-suffix');var tnz=$(this).prev().val().split(',');for(var i=1;i<=personen;i++){var tnzclass,tnztitle;if(i<=erwachsene) 316{tnzclass='tnzerw';tnztitle=i+'. Erwachsener';} 317else if(i<=erwachsene+kinder) 318{tnzclass='tnzkin';tnztitle=Number(i-erwachsene)+'. Kind';} 319else 320{tnzclass='tnzbab';tnztitle=Number(i-erwachsene-kinder)+'. Baby';} 321tnzcaption=i;if($('#ROW-TEILNEHMER-'+i+' .name').val()||$('#ROW-TEILNEHMER-'+i+' .vorname').val()) 322{tnzcaption=i+'. '+$('#ROW-TEILNEHMER-'+i+' .vorname').val()+' '+$('#ROW-TEILNEHMER-'+i+' .name').val();} 323var id='tnz_'+rleid+'_'+i+suffix;$(this).append('<span title="'+tnztitle+'" class="'+tnzclass+'"><label for="'+id+'">'+tnzcaption+'</label></span>');$(this).find('span:last').append('<input type="checkbox" id="'+id+'" value="'+i+'" />');if($.inArray(String(i),tnz)!=-1) 324$('#'+id)[0].checked=true;$('label.item-leistung-teilnehmer-'+i).text(tnzcaption);} 325$(this).find(':checkbox').click(function(){var tnz=[];var tnzField=$(this).parent().parent();tnzField.find(':checkbox').each(function(){if(this.checked)
326{tnz.push($(this).val());}});tnzField.prev().val(tnz.join(','));});var tnz=[];$(this).find(':checkbox').each(function(){if(this.checked) 327{tnz.push($(this).val());}});$(this).prev().val(tnz.join(','));});} 328function fillReqGebDatum(reiserequest){$('#ANZAHL_ERWACHSENE').trigger('change');$.each((reiserequest.data('teilnehmer')),function(i,data){if(data.typ=='K'||data.typ=='B') 329{$('input[name=RT_GEBDATUM_'+(i+Number(2))+']').val(data.alter);}});} 330if(typeof(jQuery.validator)=='function'){jQuery.validator.addMethod("date_nl",function(value,element){var matches=value.match(/^\d\d[-\.]\d\d[-\.]\d\d\d\d$/);var validateOK=($(matches).length>0||value.length==0)?true:false;return validateOK;},"No valid date");jQuery.validator.addMethod("date_de",function(value,element){var matches=value.match(/^\d\d[-\.]\d\d[-\.]\d\d\d\d$/);var validateOK=($(matches).length>0||value.length==0)?true:false;return validateOK;},"Kein g�ltiges Datum.");jQuery.validator.addMethod('phone',function(phone_number,element){return this.optional(element)||phone_number.length>6&&phone_number.match(/^(\+|(00)\d{1,2})?[\(\)\d-\/\ ]{3,}$/);},'Please specify a valid phone number');jQuery.validator.addMethod("placeholder",function(value,element){var rules=$(element).parents('form').data('validator').settings.rules;var name=$(element).attr('name');var required=(rules[name]&&rules[name].required);if(($(element).is('.required')||required)&&$(element).attr('placeholder')==value) 331{return false;}else{return true;}},"No valid input");} 332function getFirstKey(data){for(var prop in data) 333return prop;} 334(function($,undefined){$.fn.getCursorPosition=function(){var el=$(this).get(0);var pos=0;if('selectionStart'in el){pos=el.selectionStart;}else if('selection'in document){el.focus();var Sel=document.selection.createRange();var SelLength=document.selection.createRange().text.length;Sel.moveStart('character',-el.value.length);pos=Sel.text.length-SelLength;} 335return pos;};})(jQuery);function TOSMustermann() 336{$('[name=RT_ADRANREDE_1]').val('Herr').trigger('change');$('[name=RT_ADRTITEL_1]').val('Professor');$('[name=RT_ADRNAME1_1], [name=RT_ADRVORNAME_1]').val('Testvorname');$('[name=RT_ADRNAME_1], [name=RT_ADRNACHNAME_1]').val('Testnachname');$('[name=ADRZUSATZ]').val('Testadresszusatz');$('[name=ADRSTRASSE]').val('Teststr. 11a');$('[name=STRASSE]').val('Teststr.');$('[name=HAUSNUMMER], [name=HAUSNR]').val('11a');$('[name=ADRPLZ]').val('12345');$('[name=ADRORT]').val('Testort');$('[name=ADRLAND]').val('Testland');$('[name=ADRLANDauswahl]').val('DE').trigger('change');$('[name=ADRTEL]').val('0123/4567-89');$('[name=ADREMAIL], [name=EMAILREPEAT]').val('[email protected]');$('[name=RT_GEBDATUM_1]').val('10.10.1990');$('[name=RT_ADRNATIONALITY_1]').val('Deutsch');$('[name=RT_ADREXPIREDATE_1]').val('10.10.2020');$('[name=RT_ADRPASSPORTNO_1]').val('1234567890');for(var n=2;n<=10;n++) 337{$('[name=RT_ADRANREDE_'+n+']').val('Herr').trigger('change');$('[name=RT_ADRTITEL_'+n+']').val('Doktor'+n);$('[name=RT_ADRVORNAME_'+n+']').val('Testvorname'+n);$('[name=RT_ADRNACHNAME_'+n+']').val('Testnachname'+n);$('[name=RT_GEBDATUM_'+n+']').val('10.10.199'+n);$('[name=RT_ADRNATIONALITY_'+n+']').val('Deutsch');$('[name=RT_ADRPASSPORTNO_'+n+']').val('1234567890'+n);$('[name=RT_ADREXPIREDATE_'+n+']').val('10.10.203'+n);} 338$('#ANREDE, [name=ANREDE]').val('Herr').trigger('change');$('#TITEL, [name=TITEL]').val('Professor');$('#VORNAME, [name=VORNAME]').val('Testvorname');$('#NAME, [name=NAME]').val('Testnachname');$('#STRASSE, [name=STRASSE]').val('Teststr. 11a');$('#PLZ, [name=PLZ]').val('12345');$('#ORT, [name=ORT]').val('Testort');$('#EMAIL, [name=EMAIL]').val('[email protected]');$('#TELEFON, [name=TELEFON]').val('0123/4567-89');} 339function calcDateString(strDate,intModifier) 340{var arDate=strDate.split('.');var dtTemp=new Date(arDate[2],arDate[1]-1,arDate[0]);dtTemp.setDate(dtTemp.getDate()+Number(intModifier));return $.datepicker.formatDate('dd.mm.yy',dtTemp);} 341function initTooltipInfos(){$('.t1tooltip').each(function(){bindTooltipInfos($(this));});$(document).on('DOMNodeInserted','.t1tooltip',function(){bindTooltipInfos($(this));});} 342function bindTooltipInfos($infotext) 343{var fadeTime=500;var $element=$('#'+$infotext.data('fieldid'));var $label=$('$label[for='+$infotext.data('fieldid')+']');if($element.hasClass('hasSelect')) 344{$element=$element.next();} 345if($element.is(':checkbox')||$element.is(':radio')) 346{$element.on({mouseover:function(){showTooltipInfos($label,$infotext,true);}
346,mouseout:function(){$infotext.fadeOut(fadeTime);}});$label.on({mouseover:function(){showTooltipInfos($label,$infotext,true);},mouseout:function(){$infotext.fadeOut(fadeTime);}});} 347else if($element.is(':input')) 348{$element.on({focusin:function(){showTooltipInfos($element,$infotext);},mouseover:function(){showTooltipInfos($element,$infotext);},focusout:function(){$infotext.hide();},mouseout:function(){$infotext.hide();}});} 349else 350{$element.on({mouseover:function(){showTooltipInfos($element,$infotext);},mouseout:function(){$infotext.hide();}});}} 351function showTooltipInfos(element,infotext,hidetime){var fadeTime=500;var left,top,adjustX=10,adjustY=0;if(infotext.is(':empty')) 352return;if(infotext.data('position')=='mousemove') 353mousemove=true;else 354mousemove=false;if(infotext.data('position')=='fixedbelow') 355fixedbelow=true;else 356fixedbelow=false;if(infotext.data('adjustx')) 357adjustX=infotext.data('adjustx');if(infotext.data('adjusty')) 358adjustY=infotext.data('adjusty');var viewportHoehe=$(window).height()+$(window).scrollTop();var infotextHoehe=infotext.outerHeight()+element.offset().top;if(mousemove) 359{top=mouseY+20-$(window).scrollTop();left=mouseX+20;infotext.addClass('top');element.mousemove(function(e){infotext.css({top:e.pageY+10-$(window).scrollTop(),left:e.pageX+25,position:'fixed'});});} 360else if(fixedbelow) 361{top=element.position().top+element.outerHeight()+5;left=element.position().left+5;infotext.addClass('below');} 362else 363{if(infotextHoehe>viewportHoehe) 364{top=element.position().top-infotext.outerHeight()+element.outerHeight()/2;infotext.addClass('bottom').removeClass('top');}else{top=element.position().top+element.outerHeight()/2;infotext.addClass('top').removeClass('bottom');};if(element.is('label')) 365{left=element.position().left+element.outerWidth()+8;} 366else 367{left=element.position().left+element.outerWidth()+6;}} 368$('.infotext').hide();infotext.css({left:left+adjustX,top:top+adjustY,opacity:0});infotext.stop().show().animate({opacity:1},fadeTime);if(!isNaN(parseFloat(hidetime))&hidetime>0) 369infotext.delay(hidetime).fadeOut(fadeTime);} 370$(document).mousemove(function(e){mouseX=e.pageX;mouseY=e.pageY;}).mouseover();function htmlDecode(value){return $("<div/>").html(value).text();} 371function htmlEncode(value){return $('<div/>').text(value).html();} 372function TOSSessionKeepalive() 373{window.setInterval(function(){$.get($.document_path+'/start/jx_ajax.php',{cube:'jx_keepalive',cmd:'ping'});},600000);} 374function TOSFormKeepalive(formid,$context,callback){if(!formid||formid==''||!$context||$context=='') 375{console.log('TOSFormKeepalive - V2.4 - Parameter: formid, $context, [callbackfuntion]');return;} 376$.post($.document_path+'/start/jx_ajax.php?cube=jx_keepalive',{cmd:'get.formfields',formid:formid,encoding:'ISO-8859-15'},function(data){console.log(data);for(var id in data){$field=$('#'+id);if($field.is('input[type=checkbox]')&&data[id]!='') 377{$field.attr('checked','checked').trigger('change');} 378else 379{$field.val(data[id]);}} 380$context.on('change','input[type=text], select, textarea, .tos-formkeepalive',function() 381{if($(this).is('.tos-nokeepalive')){return;} 382$.post($.document_path+'/start/jx_ajax.php?cube=jx_keepalive',{cmd:'save.formfield',formid:formid,field:$(this).attr('id'),value:$(this).val(),encoding:'ISO-8859-15'});});$('input[type=checkbox]',$context).change(function(){if($(this).is('.tos-nokeepalive')){return;} 383if($(this).is(':checked')) 384value=$(this).val();else 385value='';$.post($.document_path+'/start/jx_ajax.php?cube=jx_keepalive',{cmd:'save.formfield',formid:formid,field:$(this).attr('id'),value:value,encoding:'ISO-8859-15'});});if(callback) 386callback();});} 387function TOSFormKeepaliveClear(formid) 388{$.post($.document_path+'/start/jx_ajax.php?cube=jx_keepalive',{cmd:'empty.formfields',formid:formid,encoding:'ISO-8859-15'});} 389function TOSGetSessionValue(fieldname,callback){$.post($.document_path+'/start/jx_ajax.php?cube=jx_keepalive',{cmd:'get.formfields',formid:'TOS_SESSION',encoding:'ISO-8859-15'},function(data){callback(data[fieldname]);});} 390function TOSSetSessionValue(fieldname,value){$.post($.document_path+'/start/jx_ajax.php?cube=jx_keepalive',{cmd:'save.formfield',formid:'TOS_SESSION',field:fieldname,value:value,formid:'TOS_SESSION',encoding:'ISO-8859-15'});} 391 392 393if(typeof $.widget!='undefined') 394{var oGmap={markers:[],layers:{},_create:function(){var self=this;self.options=$.extend(true,{},$.ui.gmap.defaults,self.options);if(self._loadApi()) 395{self._initialize();}},_loadApi:function() 396{var self=this,$element=self.element;if(typeof google=='undefined') 397{$element.bind('googleLoaded.gmap',function(){$.ui.gmap.api.google.loaded=true;$element.unbind('googleLoaded.gmap');self._loadApi();});if($.ui.gmap.api.google.loading===true) 398return false;$.ui.gmap.api.google.loading=true;$.getScript('https://www.google.de/jsapi',function(){$(':ui-gmap').trigger('googleLoaded.gmap');});return false;} 399else 400{$.ui.gmap.api.google.loaded=true;} 401if(typeof google.maps=='undefined'){$element.bind('mapsLoaded.gmap',function(){$.ui.gmap.api.maps.loaded=true;$element.unbind('mapsLoaded.gmap');self._initialize();});if($.ui.gmap.api.maps.loading===true) 402return false;$.ui.gmap.api.maps.loading=true;google.load('maps','3.7',{other_params:'language='+$.ui.gmap.api.options.language 403+'&libraries='+$.ui.gmap.api.options.libraries 404+'&key='+$.ui.gmap.api.options.api_key,callback:function(){$(':ui-gmap').trigger('mapsLoaded.gmap',0,[]);}});return false;} 405else 406{$.ui.gmap.api.maps.loaded=true;} 407return true;},_initialize:function(){var self=this,options=self.options,$element=self.element;$element.append('<div class="ui-gmap-content"></div>');if(!options.center.position) 408{options.center.position=new google.maps.LatLng(options.center.lat,options.center.lng);} 409options.center=options.center.position;if(this.options.clientLocate&&google.loader.ClientLocation) 410{options.center=new google.maps.LatLng(google.loader.ClientLocation.latitude,google.loader.ClientLocation.longitude);} 411if(!options.mapTypeId) 412options.mapTypeId=google.maps.MapTypeId.ROADMAP;this.map=new google.maps.Map(this.element.find('div.ui-gmap-content')[0],this.options);$element.bind('resize.gmap',function(){google.maps.event.trigger(self.map,'resize');});this.element.bind('showMarkers.gmap',function(e) 413{$(this).gmap('showMarkers');});this.uid=new Date().getTime()+Math.random(1000);this.markers=[];this.layers={};this.directions={display:new google.maps.DirectionsRenderer({map:this.map,suppressMarkers:true}),service:new google.maps.DirectionsService()};if(typeof this.options.directionspanel=='object') 414{this.directions.display.setPanel(this.options.directionspanel[0]);} 415this.geocoder=new google.maps.Geocoder;this.infowindow={marker:-1,obj:new google.maps.InfoWindow};google.maps.event.addListener(this.map,'click',function(){self.infowindow.obj.close();self.infowindow.marker=-1;});if(typeof this.options.autocomplete=='object') 416{this.autocomplete=new google.maps.places.Autocomplete(this.options.autocomplete[0]);this.autocomplete.bindTo('bounds',this.map);google.maps.event.addListener(this.autocomplete,'place_changed',function(){self._trigger('placechanged',0,self.autocomplete.getPlace());});} 417$.each(this.options.markers,function(i,params){self.addMarker(params);});if($.ui.gmap.markertypes.url!=null&&!$.ui.gmap.markertypes.loaded&&!$.ui.gmap.markertypes.loading) 418{this._loadmarkertypes();} 419else 420{this.showMarkers();} 421self._trigger('init');},_setOption:function(a,b){$.Widget.prototype._setOption.apply(this,arguments);this.map.setOptions(this.options);},destroy:function(){this.element.find('div.ui-gmap-content').remove();this.marker=[];$.Widget.prototype.destroy.apply(this,arguments);},_loadmarkertypes:function(){if(!$.ui.gmap.markertypes.loading) 422{$.ui.gmap.markertypes.loading=true;$.ajax({url:$.document_path+$.ui.gmap.markertypes.url,context:this.element,contentType:'application/json',cache:true,success:function(data) 423{$.extend($.ui.gmap.markertypes.definitions,data);$.ui.gmap.markertypes.loaded=true;$(':ui-gmap').trigger('showMarkers.gmap');},error:function(xhr,status){$(xhr).here(status);$.ui.gmap.markertypes.loaded=true;$.ui.gmap.markertypes.status=status;$(':ui-gmap').trigger('showMarkers.gmap');}});}},addMarker:function(params){var i=this.markers.length;params.element=this.element;params.layer=params.layer||'default';params.deleted=params.deleted||false;if(typeof params.position=='undefined') 424{var latitude=null;var longitude=null;if(typeof params.latitude=='object') 425{if(params.latitude.val()) 426latitude=params.latitude.val();} 427else if(typeof params.latitude!='undefined') 428latitude=params.latitude;if(typeof params.longitude=='object') 429{if(params.longitude.val()) 430longitude=params.longitude.val();} 431else if(typeof params.longitude!='undefined') 432longitude=params.longitude;if(latitude==null||longitude==null) 433{if(typeof params.address!='undefined') 434{if(typeof params.address.search=='undefined') 435{params.address.search=params.address.street.val()+', '+params.address.postcode.val()+' ' 436+params.address.city.val();} 437var self=this;self.geocoder.geocode({address:params.address.search},function(result,status){if(status==google.maps.GeocoderStatus.OK) 438{if(typeof params.latitude=='object') 439params.latitude.val(result[0].geometry.location.lat());else 440params.latitude=result[0].geometry.location.lat();if(typeof params.longitude=='object') 441params.longitude.val(result[0].geometry.location.lng());else 442params.longitude=result[0].geometry.location.lng();params.address=result[0].formatted_address;params.title=params.title||result[0].formatted_address;self._trigger('markergeocoded',0,params);self.addMarker(params);} 443else 444self.element.here(status);});} 445else 446{$(params).here('No position defined');} 447return;}} 448this.markers.push(params);if(typeof this.layers[params.layer]=='undefined') 449this.layers[params.layer]=[];this.layers[params.layer].push(i);if($.ui.gmap.markertypes.url==null||$.ui.gmap.markertypes.loaded) 450{this.showMarker(i);} 451return i;},geocode:function(address){var self=this;this.geocoder.geocode({address:address},function(result,status){if(status==google.maps.GeocoderStatus.OK) 452self._trigger('addressgeocoded',0,result[0]);else 453self.element.here(status);});},getMarker:function(key){return this.markers[key];},setMarker:function(key,marker){this.markers[key]=marker;return this.element;},deleteMarker:function(key){var marker=this.getMarker(key);marker.obj.setMap(null);marker.deleted=true;this.setMarker(key,marker);},showMarker:function(key) 454{var marker=this.getMarker(key),self=this;if(marker.deleted) 455return;if(typeof(marker.obj)=='undefined') 456{if(typeof marker.position=='undefined') 457{var latitude=null;var longitude=null;if(typeof marker.latitude=='object') 458latitude=marker.latitude.val();else 459latitude=marker.latitude;if(typeof marker.longitude=='object') 460longitude=marker.longitude.val();else 461longitude=marker.longitude;marker.position=new google.maps.LatLng(latitude,longitude);} 462var markerOptions={title:marker.title,position:marker.position};if(typeof(marker.type)!='undefined') 463{var markertype=$.ui.gmap.markertypes.definitions[marker.type];if(typeof markertype=='undefined') 464{this.element.here('markertype not defined');} 465else 466{if(markertype.Image==null) 467{markertype.Image=new google.maps.MarkerImage($.document_path+markertype.ImageOptions.url,new google.maps.Size(markertype.ImageOptions.size[0],markertype.ImageOptions.size[1]),new google.maps.Point(markertype.ImageOptions.origin[0],markertype.ImageOptions.origin[1]),new google.maps.Point(markertype.ImageOptions.anchor[0],markertype.ImageOptions.anchor[1]));if(typeof markertype.ShadowOptions!='undefined') 468{markertype.Shadow=new google.maps.MarkerImage($.document_path+markertype.ShadowOptions.url,new google.maps.Size(markertype.ShadowOptions.size[0],markertype.ShadowOptions.size[1]),new google.maps.Point(markertype.ShadowOptions.origin[0],markertype.ShadowOptions.origin[1]),new google.maps.Point(markertype.ShadowOptions.anchor[0],markertype.ShadowOptions.anchor[1]));} 469if(typeof markertype.HilightOptions!='undefined') 470{markertype.HilightImage=new google.maps.MarkerImage($.document_path+markertype.HilightOptions.url,new google.maps.Size(markertype.HilightOptions.size[0],markertype.HilightOptions.size[1]),new google.maps.Point(markertype.HilightOptions.origin[0],markertype.HilightOptions.origin[1]),new google.maps.Point(markertype.HilightOptions.anchor[0],markertype.HilightOptions.anchor[1]));} 471$.ui.gmap.markertypes.definitions[marker.type]=markertype;} 472markerOptions.icon=markertype.Image;if(typeof markertype.Shadow!='undefined') 473markerOptions.shadow=markertype.Shadow;if(typeof markertype.shape!='undefined') 474markerOptions.shape=markertype.Shape;}} 475if(typeof(marker.draggable)=='undefined') 476{marker.draggable=false;} 477markerOptions.draggable=marker.draggable;marker.obj=new google.maps.Marker(markerOptions);if(marker.infourl||marker.infostring) 478{google.maps.event.addListener(marker.obj,'click',function(){self._openInfoWindow(key);});} 479google.maps.event.addListener(marker.obj,'click',function(){self._trigger('markerclick',0,[key,marker]);});if(marker.draggable) 480{google.maps.event.addListener(marker.obj,'dragend',function(){self._trigger('markerdragend',0,marker.obj);});if(marker.dragendfill){google.maps.event.addListener(marker.obj,'dragend',function(){marker.dragendfill.latitude.val(marker.obj.position.lat());marker.dragendfill.longitude.val(marker.obj.position.lng());});}}} 481marker.obj.setMap(this.map);if(marker.center) 482{this.map.setCenter(marker.position);} 483this.setMarker(key,marker);},hilightMarker:function(key){var marker=this.getMarker(key);var markertype=$.ui.gmap.markertypes.definitions[marker.type];if(typeof markertype.HilightImage=='undefined') 484return false;marker.obj.setIcon(markertype.HilightImage);},unhilightMarker:function(key){var marker=this.getMarker(key);var markertype=$.ui.gmap.markertypes.definitions[marker.type];if(typeof markertype.Image=='undefined') 485return false;marker.obj.setIcon(markertype.Image);},viewportLayer:function(layers) 486{var self=this,bounds=new google.maps.LatLngBounds();if(self.layers===undefined) 487{return;} 488layers=layers.split(',');$.each(layers,function(j,layer){if(self.layers[layer]===undefined) 489{return;} 490$.each(self.layers[layer],function(i,key){if(!self.markers[key].deleted) 491{bounds.extend(self.markers[key].obj.getPosition());}});});self.map.fitBounds(bounds);},showMarkers:function(){$.each(this.markers,function(i,marker){marker.element.gmap('showMarker',i);});this._trigger('showmarkers');},clearLayer:function(key){var self=this;if(typeof self.layers[key]!='undefined') 492$.each(self.layers[key],function(i,marker){self.deleteMarker(marker);});this.layers[key]=[];},_openInfoWindow:function(key) 493{var marker=this.getMarker(key);if(key==this.infowindow.marker) 494return;if(typeof marker.infostring=='undefined') 495{if(typeof marker.infourl=='undefined') 496{$(marker).log('no infowindow content');} 497else 498{$.ajax({url:$.document_path+marker.infourl,context:this,contentType:'text/html',dataType:'html',cache:true,success:function(data) 499{marker.infostring=data;this.setMarker(key,marker);this._openInfoWindow(key);},error:function(xhr,status){}});}} 500else 501{var content='<div class="ui-gmap-infowindow-content">';content+=marker.infostring+'</div>';this.infowindow.obj.setContent(content);this.infowindow.obj.open(this.map,marker.obj);this.infowindow.marker=key;$('.ui-gmap-infowindow-link').unbind('click').click(function(event){event.preventDefault();window.open($(this).attr('href'));});}}
501,directionFromFieldToMarker:function(startSelector,key){var self=this;this.clearLayer('directionsrenderer');this.directions.service.route({origin:$(startSelector).val(),destination:this.getMarker(key).obj.getPosition().toUrlValue(),travelMode:google.maps.DirectionsTravelMode.DRIVING,provideRouteAlternatives:true},function(result,status){if(status==google.maps.DirectionsStatus.OK) 502self.showRoute(result);});},showRoute:function(result) 503{this.directions.display.setDirections(result);var start=result.routes[0].legs[0];this.addMarker({title:start.start_address,type:'start',latitude:start.start_location.lat(),longitude:start.start_location.lng(),layer:'directionsrenderer'});this._trigger('displayroute',0);}};if(typeof $.mobile=='undefined') 504{$.widget('ui.gmap',oGmap);} 505else 506{$.widget('ui.gmap',$.mobile.widget,oGmap);$(document).bind("pagecreate",function(e){var $gmap=$(":jqmData(role='gmap')");if($gmap.size()>0) 507{$gmap.gmap($gmap.data());}});} 508$.extend($.ui.gmap,{version:"1.0",api:{google:{loaded:false,loading:false},maps:{loaded:false,loading:false},options:{sensor:'false',libraries:'places',language:'de',api_key:$.gmap_api_key}},markertypes:{url:null,definitions:{start:{Image:null,ImageOptions:{url:'http://maps.google.com/mapfiles/ms/icons/green-dot.png',size:[32,32],origin:[0,0],anchor:[16,32]},Shadow:null,ShadowOptions:{url:'http://maps.google.com/mapfiles/ms/icons/msmarker.shadow.png',size:[59,32],origin:[0,0],anchor:[16,32]}}},loaded:false,loading:false,status:null},defaults:{zoom:16,markers:[],center:{position:null,lat:0.0,lng:0.0},navigationControl:true,mapTypeControl:true,scaleControl:true,streetViewControl:false,clientLocate:false}});} 509 510 511(function($){$.fn.pietimer=function(method){if(methods[method]){return methods[method].apply(this,Array.prototype.slice.call(arguments,1));}else if(typeof method==='object'||!method){return methods.init.apply(this,arguments);}else{$.error('Method '+method+' does not exist on jQuery.pietimer');}};var methods={init:function(options){var state={timer:null,timerSeconds:10,callback:function(){},timerCurrent:0,showPercentage:false,fill:false,color:'#CCC',autostart:true};state=$.extend(state,options);return this.each(function(){var $this=$(this);var data=$this.data('pietimer');if(!data){$this.addClass('jquery_pietimer');$this.css({fontSize:$this.width()});$this.data('pietimer',state);if(state.showPercentage){$this.find('.percent').show();} 512if(state.fill){$this.addClass('fill');} 513if(state.autostart){$this.pietimer('start');}}});},stopWatch:function(){var data=$(this).data('pietimer');if(data){var seconds=(data.timerFinish-(new Date().getTime()))/1000;if(seconds<=0){clearInterval(data.timer);$(this).pietimer('drawTimer',100);data.callback();}else{var percent=100-((seconds/(data.timerSeconds))*100);$(this).pietimer('drawTimer',percent);}}},drawTimer:function(percent){$this=$(this);var data=$this.data('pietimer');if(data){$this.html('<div class="percent"></div><div class="slice'+(percent>50?' gt50"':'"')+'><div class="pie"></div>'+(percent>50?'<div class="pie fill"></div>':'')+'</div>');var deg=360/100*percent;$this.find('.slice .pie').css({'-moz-transform':'rotate('+deg+'deg)','-webkit-transform':'rotate('+deg+'deg)','-o-transform':'rotate('+deg+'deg)','transform':'rotate('+deg+'deg)'});$this.find('.percent').html(Math.round(percent)+'%');if(data.showPercentage){$this.find('.percent').show();} 514if($this.hasClass('fill')){$this.find('.slice .pie').css({backgroundColor:data.color});} 515else{$this.find('.slice .pie').css({borderColor:data.color});}}},start:function(){var data=$(this).data('pietimer');if(data){data.timerFinish=new Date().getTime()+(data.timerSeconds*1000);$(this).pietimer('drawTimer',0);data.timer=setInterval("$this.pietimer('stopWatch')",50);}},reset:function(){var data=$(this).data('pietimer');if(data){clearInterval(data.timer);$(this).pietimer('drawTimer',0);}}};})(jQuery); 516 517 518var ISOLandSelect={preferredCountries:["CH","AT","DE"],init:function(language){var language=language?language:$('html').attr('lang');this.JSON.get().done(function(resp){ISOLandSelect.JSON.data=resp;$('[data-iso-land-select]').each(function(){var $this=$(this);var oOptions=$this.data('iso-land-select');var sMode=oOptions.mode;var sLabel=oOptions.label;var sISOCode=oOptions.value;$this.html('<option value="">'+sLabel+' *</option>');$.each(ISOLandSelect.JSON.sort(language),function(i,sCountry){ISOLandSelect.buildOptions($this,sCountry,sMode);});if(sISOCode!=undefined&&sISOCode!=''){ISOLandSelect.set($this,sISOCode);} 519$this.trigger("chosen:updated").trigger('land-select-loaded');});});this.initMasterSlave();},set:function($select,isocode){$select.val(isocode);},JSON:{url:$.document_path+'/html/js/laender_iso/_laender.js',data:[],get:function(){var json=$.ajax({type:'get',url:ISOLandSelect.JSON.url,dataType:'json'});return json;},sort:function(language){var sortArray=[];if(language!=''&&language!='en'){var languages={"de":"deu","nl":"nld"};var the_language=languages[language];$.each(ISOLandSelect.JSON.data,function(i,land){sortArray.push({"name":land.translations[the_language].common,"cca2":land.cca2,"cca3":land.cca3,"ccn3":land.ccn3});});}else if(language=='en'){$.each(ISOLandSelect.JSON.data,function(i,land){sortArray.push({"name":land.name.common,"cca2":land.cca2,"cca3":land.cca3,"ccn3":land.ccn3});});} 520sortArray.sort(function(a,b){var aName=a.name.toLowerCase();var bName=b.name.toLowerCase();return((aName<bName)?-1:((aName>bName)?1:0));});return sortArray;},},buildOptions:function($select,sCountry,sMode,sLanguage){var value;var isoCode2=sCountry.cca2;var isoCode3=sCountry.cca3;var isoNumber3=sCountry.ccn3;var name=sCountry.name;switch(sMode){case"2-letter":value=isoCode2;break;case"3-letter":value=isoCode3;break;case"3-number":value=isoNumber3;break;} 521if($.inArray(value,ISOLandSelect.preferredCountries)>-1){if(value=="DE"){$('<option></option>',{value:value,text:name}).insertAfter($select.find('option[value=""]'));}else{$('<option></option>',{value:value,text:name}).insertAfter($select.find('option[value="DE"]'));}}else{$('<option></option>',{value:value,text:name}).appendTo($select);}},initMasterSlave:function(){$('[data-iso-land-select]').on('change',function(){$this=$(this);var $options=$this.data('iso-land-select');var the_group=$options.group;var the_type=$options.type;var the_value=$this.val();if(the_type!="master"){return;} 522$('[data-iso-land-select]').not(this).each(function(){var $that=$(this);var $options=$that.data('iso-land-select');if($options.group==the_group&&$options.type=="slave"){$that.val(the_value).trigger('change');}});});}};var NationalitaetSelect={init:function(){var sprache=$('html').attr('lang');$('[data-load-nationalitaet]').each(function(){var $this=$(this);NationalitaetSelect.load($this,sprache);});},load:function(container,sprache){var options_template="_nationalitaet_options_de.html";var first_option_de=container.data('load-nationalitaet').de;var label_first_option=first_option_de;$.ajax({type:'get',url:$.document_path+'/html/modules/'+options_template,data:{encoding:'iso-8859-1'}}).done(function(resp){container.html('<option value="">'+label_first_option+'</option>'+resp);container.children('option:first').prop('selected','selected');container.trigger("chosen:updated");$(document).trigger('nationalitaet-select-loaded');});}};function numSelect($input,oOptions){var This=this;This.oOptions={};This.setDefaults();$.extend(true,This.oOptions,oOptions);
522This.$input=$input;This.setup();This.$plusBtn.click(function(){This.increaseValue();});This.$minusBtn.click(function(){This.decreaseValue();});This.$input.change(function(){This.onChange();});};$.fn.extend({numSelect:function(oOptions){new numSelect($(this),oOptions);}});numSelect.prototype.setDefaults=function(){this.oOptions.defaultValue=1;this.oOptions.defaultMax=5;this.oOptions.defaultMin=1;};numSelect.prototype.setup=function(){if(this.$input.attr('value')==undefined){this.$input.attr('value',this.oOptions.defaultValue);} 523if(this.$input.attr('min')==undefined){this.$input.attr('min',this.oOptions.defaultMin);} 524if(this.$input.attr('max')==undefined){this.$input.attr('max',this.oOptions.defaultMax);} 525this.$input.wrap('<div class="numSelect__container" data-numSelect></div>');this.$container=this.$input.parents('[data-numSelect]');this.$container.prepend('<span class="numSelect__minus" data-numSelect-minus></span>');this.$container.append('<span class="numSelect__plus" data-numSelect-plus></span>');this.$minusBtn=this.$container.find('[data-numSelect-minus]');this.$plusBtn=this.$container.find('[data-numSelect-plus]');if(this.$input.attr('value')==this.$input.attr('min')){this.$minusBtn.addClass('disabled');} 526if(this.$input.attr('value')==this.$input.attr('max')){this.$plusBtn.addClass('disabled');}};numSelect.prototype.increaseValue=function(){var val=Number(this.$input.val());if(val<Number(this.$input.attr('max'))){this.$input.val(val+1).trigger('change').trigger('increase');}};numSelect.prototype.decreaseValue=function(){var val=Number(this.$input.val());if(val>Number(this.$input.attr('min'))){this.$input.val(val-1).trigger('change').trigger('decrease');}};numSelect.prototype.onChange=function(){if(Number(this.$input.val())>Number(this.$input.attr('max'))){this.$input.val(this.$input.attr('max'));this.$input.trigger('decrease');} 527if(Number(this.$input.val())<Number(this.$input.attr('min'))){this.$input.val(this.$input.attr('min'));this.$input.trigger('increase');} 528if(this.$input.val()==this.$input.attr('max')){this.$plusBtn.addClass('disabled');}else{this.$plusBtn.removeClass('disabled');} 529if(this.$input.val()==this.$input.attr('min')){this.$minusBtn.addClass('disabled');}else{this.$minusBtn.removeClass('disabled');}} 530var hexcase=0;var b64pad="";function hex_sha512(s){return rstr2hex(rstr_sha512(str2rstr_utf8(s)));} 531function b64_sha512(s){return rstr2b64(rstr_sha512(str2rstr_utf8(s)));} 532function any_sha512(s,e){return rstr2any(rstr_sha512(str2rstr_utf8(s)),e);} 533function hex_hmac_sha512(k,d) 534{return rstr2hex(rstr_hmac_sha512(str2rstr_utf8(k),str2rstr_utf8(d)));} 535function b64_hmac_sha512(k,d) 536{return rstr2b64(rstr_hmac_sha512(str2rstr_utf8(k),str2rstr_utf8(d)));} 537function any_hmac_sha512(k,d,e) 538{return rstr2any(rstr_hmac_sha512(str2rstr_utf8(k),str2rstr_utf8(d)),e);} 539function sha512_vm_test() 540{return hex_sha512("abc").toLowerCase()=="ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a"+"2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f";} 541function rstr_sha512(s) 542{return binb2rstr(binb_sha512(rstr2binb(s),s.length*8));} 543function rstr_hmac_sha512(key,data) 544{var bkey=rstr2binb(key);if(bkey.length>32)bkey=binb_sha512(bkey,key.length*8);var ipad=Array(32),opad=Array(32);for(var i=0;i<32;i++) 545{ipad[i]=bkey[i]^0x36363636;opad[i]=bkey[i]^0x5C5C5C5C;} 546var hash=binb_sha512(ipad.concat(rstr2binb(data)),1024+data.length*8);return binb2rstr(binb_sha512(opad.concat(hash),1024+512));} 547function rstr2hex(input) 548{try{hexcase}catch(e){hexcase=0;} 549var hex_tab=hexcase?"0123456789ABCDEF":"0123456789abcdef";var output="";var x;for(var i=0;i<input.length;i++) 550{x=input.charCodeAt(i);output+=hex_tab.charAt((x>>>4)&0x0F) 551+hex_tab.charAt(x&0x0F);} 552return output;} 553function rstr2b64(input) 554{try{b64pad}catch(e){b64pad='';} 555var tab="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var output="";var len=input.length;for(var i=0;i<len;i+=3) 556{var triplet=(input.charCodeAt(i)<<16)|(i+1<len?input.charCodeAt(i+1)<<8:0)|(i+2<len?input.charCodeAt(i+2):0);for(var j=0;j<4;j++) 557{if(i*8+j*6>input.length*8)output+=b64pad;else output+=tab.charAt((triplet>>>6*(3-j))&0x3F);}} 558return output;} 559function rstr2any(input,encoding) 560{var divisor=encoding.length;var i,j,q,x,quotient;var dividend=Array(Math.ceil(input.length/2));for(i=0;i<dividend.length;i++) 561{dividend[i]=(input.charCodeAt(i*2)<<8)|input.charCodeAt(i*2+1);} 562var full_length=Math.ceil(input.length*8/(Math.log(encoding.length)/Math.log(2)));var remainders=Array(full_length);for(j=0;j<full_length;j++) 563{quotient=Array();x=0;for(i=0;i<dividend.length;i++) 564{x=(x<<16)+dividend[i];q=Math.floor(x/divisor);
564x-=q*divisor;if(quotient.length>0||q>0) 565quotient[quotient.length]=q;} 566remainders[j]=x;dividend=quotient;} 567var output="";for(i=remainders.length-1;i>=0;i--) 568output+=encoding.charAt(remainders[i]);return output;} 569function str2rstr_utf8(input) 570{var output="";var i=-1;var x,y;while(++i<input.length) 571{x=input.charCodeAt(i);y=i+1<input.length?input.charCodeAt(i+1):0;if(0xD800<=x&&x<=0xDBFF&&0xDC00<=y&&y<=0xDFFF) 572{x=0x10000+((x&0x03FF)<<10)+(y&0x03FF);i++;} 573if(x<=0x7F) 574output+=String.fromCharCode(x);else if(x<=0x7FF) 575output+=String.fromCharCode(0xC0|((x>>>6)&0x1F),0x80|(x&0x3F));else if(x<=0xFFFF) 576output+=String.fromCharCode(0xE0|((x>>>12)&0x0F),0x80|((x>>>6)&0x3F),0x80|(x&0x3F));else if(x<=0x1FFFFF) 577output+=String.fromCharCode(0xF0|((x>>>18)&0x07),0x80|((x>>>12)&0x3F),0x80|((x>>>6)&0x3F),0x80|(x&0x3F));} 578return output;} 579function str2rstr_utf16le(input) 580{var output="";for(var i=0;i<input.length;i++) 581output+=String.fromCharCode(input.charCodeAt(i)&0xFF,(input.charCodeAt(i)>>>8)&0xFF);return output;} 582function str2rstr_utf16be(input) 583{var output="";for(var i=0;i<input.length;i++) 584output+=String.fromCharCode((input.charCodeAt(i)>>>8)&0xFF,input.charCodeAt(i)&0xFF);return output;} 585function rstr2binb(input) 586{var output=Array(input.length>>2);for(var i=0;i<output.length;i++) 587output[i]=0;for(var i=0;i<input.length*8;i+=8) 588output[i>>5]|=(input.charCodeAt(i/8)&0xFF)<<(24-i%32);return output;} 589function binb2rstr(input) 590{var output="";for(var i=0;i<input.length*32;i+=8) 591output+=String.fromCharCode((input[i>>5]>>>(24-i%32))&0xFF);return output;} 592var sha512_k;function binb_sha512(x,len) 593{if(sha512_k==undefined) 594{sha512_k=new Array(new int64(0x428a2f98,-685199838),new int64(0x71374491,0x23ef65cd),new int64(-1245643825,-330482897),new int64(-373957723,-2121671748),new int64(0x3956c25b,-213338824),new int64(0x59f111f1,-1241133031),new int64(-1841331548,-1357295717),new int64(-1424204075,-630357736),new int64(-670586216,-1560083902),new int64(0x12835b01,0x45706fbe),new int64(0x243185be,0x4ee4b28c),new int64(0x550c7dc3,-704662302),new int64(0x72be5d74,-226784913),new int64(-2132889090,0x3b1696b1),new int64(-1680079193,0x25c71235),new int64(-1046744716,-815192428),new int64(-459576895,-1628353838),new int64(-272742522,0x384f25e3),new int64(0xfc19dc6,-1953704523),new int64(0x240ca1cc,0x77ac9c65),new int64(0x2de92c6f,0x592b0275),new int64(0x4a7484aa,0x6ea6e483),new int64(0x5cb0a9dc,-1119749164),new int64(0x76f988da,-2096016459),new int64(-1740746414,-295247957),new int64(-1473132947,0x2db43210),new int64(-1341970488,-1728372417),new int64(-1084653625,-1091629340),new int64(-958395405,0x3da88fc2),new int64(-710438585,-1828018395),new int64(0x6ca6351,-536640913),new int64(0x14292967,0xa0e6e70),new int64(0x27b70a85,0x46d22ffc),new int64(0x2e1b2138,0x5c26c926),new int64(0x4d2c6dfc,0x5ac42aed),new int64(0x53380d13,-1651133473),new int64(0x650a7354,-1951439906),new int64(0x766a0abb,0x3c77b2a8),new int64(-2117940946,0x47edaee6),new int64(-1838011259,0x1482353b),new int64(-1564481375,0x4cf10364),new int64(-1474664885,-1136513023),new int64(-1035236496,-789014639),new int64(-949202525,0x654be30),new int64(-778901479,-688958952),new int64(-694614492,0x5565a910),new int64(-200395387,0x5771202a),new int64(0x106aa070,0x32bbd1b8),new int64(0x19a4c116,-1194143544),new int64(0x1e376c08,0x5141ab53),new int64(0x2748774c,-544281703),new int64(0x34b0bcb5,-509917016),new int64(0x391c0cb3,-976659869),new int64(0x4ed8aa4a,-482243893),new int64(0x5b9cca4f,0x7763e373),new int64(0x682e6ff3,-692930397),new int64(0x748f82ee,0x5defb2fc),new int64(0x78a5636f,0x43172f60),new int64(-2067236844,-1578062990),new int64(-1933114872,0x1a6439ec),new int64(-1866530822,0x23631e28),new int64(-1538233109,-561857047),new int64(-1090935817,-1295615723),new int64(-965641998,-479046869),new int64(-903397682,-366583396),new int64(-779700025,0x21c0c207),new int64(-354779690,-840897762),new int64(-176337025,-294727304),new int64(0x6f067aa,0x72176fba),new int64(0xa637dc5,-1563912026),new int64(0x113f9804,-1090974290),new int64(0x1b710b35,0x131c471b),new int64(0x28db77f5,0x23047d84),new int64(0x32caab7b,0x40c72493),new int64(0x3c9ebe0a,0x15c9bebc),new int64(0x431d67c4,-1676669620),new int64(0x4cc5d4be,-885112138),new int64(0x597f299c,-60457430),new int64(0x5fcb6fab,0x3ad6faec),new int64(0x6c44198c,0x4a475817));}
595var H=new Array(new int64(0x6a09e667,-205731576),new int64(-1150833019,-2067093701),new int64(0x3c6ef372,-23791573),new int64(-1521486534,0x5f1d36f1),new int64(0x510e527f,-1377402159),new int64(-1694144372,0x2b3e6c1f),new int64(0x1f83d9ab,-79577749),new int64(0x5be0cd19,0x137e2179));var T1=new int64(0,0),T2=new int64(0,0),a=new int64(0,0),b=new int64(0,0),c=new int64(0,0),d=new int64(0,0),e=new int64(0,0),f=new int64(0,0),g=new int64(0,0),h=new int64(0,0),s0=new int64(0,0),s1=new int64(0,0),Ch=new int64(0,0),Maj=new int64(0,0),r1=new int64(0,0),r2=new int64(0,0),r3=new int64(0,0);var j,i;var W=new Array(80);for(i=0;i<80;i++) 596W[i]=new int64(0,0);x[len>>5]|=0x80<<(24-(len&0x1f));x[((len+128>>10)<<5)+31]=len;for(i=0;i<x.length;i+=32) 597{int64copy(a,H[0]);int64copy(b,H[1]);int64copy(c,H[2]);int64copy(d,H[3]);int64copy(e,H[4]);int64copy(f,H[5]);int64copy(g,H[6]);int64copy(h,H[7]);for(j=0;j<16;j++) 598{W[j].h=x[i+2*j];W[j].l=x[i+2*j+1];} 599for(j=16;j<80;j++) 600{int64rrot(r1,W[j-2],19);int64revrrot(r2,W[j-2],29);int64shr(r3,W[j-2],6);s1.l=r1.l^r2.l^r3.l;s1.h=r1.h^r2.h^r3.h;int64rrot(r1,W[j-15],1);int64rrot(r2,W[j-15],8);int64shr(r3,W[j-15],7);s0.l=r1.l^r2.l^r3.l;s0.h=r1.h^r2.h^r3.h;int64add4(W[j],s1,W[j-7],s0,W[j-16]);} 601for(j=0;j<80;j++) 602{Ch.l=(e.l&f.l)^(~e.l&g.l);Ch.h=(e.h&f.h)^(~e.h&g.h);int64rrot(r1,e,14);int64rrot(r2,e,18);int64revrrot(r3,e,9);s1.l=r1.l^r2.l^r3.l;s1.h=r1.h^r2.h^r3.h;int64rrot(r1,a,28);int64revrrot(r2,a,2);int64revrrot(r3,a,7);s0.l=r1.l^r2.l^r3.l;s0.h=r1.h^r2.h^r3.h;Maj.l=(a.l&b.l)^(a.l&c.l)^(b.l&c.l);Maj.h=(a.h&b.h)^(a.h&c.h)^(b.h&c.h);int64add5(T1,h,s1,Ch,sha512_k[j],W[j]);int64add(T2,s0,Maj);int64copy(h,g);int64copy(g,f);int64copy(f,e);int64add(e,d,T1);int64copy(d,c);int64copy(c,b);int64copy(b,a);int64add(a,T1,T2);} 603int64add(H[0],H[0],a);int64add(H[1],H[1],b);int64add(H[2],H[2],c);int64add(H[3],H[3],d);int64add(H[4],H[4],e);int64add(H[5],H[5],f);int64add(H[6],H[6],g);int64add(H[7],H[7],h);} 604var hash=new Array(16);for(i=0;i<8;i++) 605{hash[2*i]=H[i].h;hash[2*i+1]=H[i].l;} 606return hash;} 607function int64(h,l) 608{this.h=h;this.l=l;} 609function int64copy(dst,src) 610{dst.h=src.h;dst.l=src.l;} 611function int64rrot(dst,x,shift) 612{dst.l=(x.l>>>shift)|(x.h<<(32-shift));dst.h=(x.h>>>shift)|(x.l<<(32-shift));} 613function int64revrrot(dst,x,shift) 614{dst.l=(x.h>>>shift)|(x.l<<(32-shift));dst.h=(x.l>>>shift)|(x.h<<(32-shift));} 615function int64shr(dst,x,shift) 616{dst.l=(x.l>>>shift)|(x.h<<(32-shift));dst.h=(x.h>>>shift);} 617function int64add(dst,x,y) 618{var w0=(x.l&0xffff)+(y.l&0xffff);var w1=(x.l>>>16)+(y.l>>>16)+(w0>>>16);var w2=(x.h&0xffff)+(y.h&0xffff)+(w1>>>16);var w3=(x.h>>>16)+(y.h>>>16)+(w2>>>16);dst.l=(w0&0xffff)|(w1<<16);dst.h=(w2&0xffff)|(w3<<16);} 619function int64add4(dst,a,b,c,d) 620{var w0=(a.l&0xffff)+(b.l&0xffff)+(c.l&0xffff)+(d.l&0xffff);var w1=(a.l>>>16)+(b.l>>>16)+(c.l>>>16)+(d.l>>>16)+(w0>>>16);var w2=(a.h&0xffff)+(b.h&0xffff)+(c.h&0xffff)+(d.h&0xffff)+(w1>>>16);var w3=(a.h>>>16)+(b.h>>>16)+(c.h>>>16)+(d.h>>>16)+(w2>>>16);dst.l=(w0&0xffff)|(w1<<16);dst.h=(w2&0xffff)|(w3<<16);} 621function int64add5(dst,a,b,c,d,e) 622{var w0=(a.l&0xffff)+(b.l&0xffff)+(c.l&0xffff)+(d.l&0xffff)+(e.l&0xffff);var w1=(a.l>>>16)+(b.l>>>16)+(c.l>>>16)+(d.l>>>16)+(e.l>>>16)+(w0>>>16);var w2=(a.h&0xffff)+(b.h&0xffff)+(c.h&0xffff)+(d.h&0xffff)+(e.h&0xffff)+(w1>>>16);var w3=(a.h>>>16)+(b.h>>>16)+(c.h>>>16)+(d.h>>>16)+(e.h>>>16)+(w2>>>16);dst.l=(w0&0xffff)|(w1<<16);dst.h=(w2&0xffff)|(w3<<16);} 623var Layout={init:function(){this.Videoelements.init();this.Lightbox.init();this.addDotnavShadow();POI_Finder.init();if($('body').hasClass('page-layout')){Layout.AnchorMenu.init();} 624if($('[tos-layelem-terminliste]').length){Layout.loadTerminlisteInLAE();} 625if($('[tos-layelem-reiseliste]').length){Layout.loadReiselisteInLAE();}},addDotnavShadow:function(){$('.layoutElement').each(function(){if(!$(this).find('.uk-dotnav').hasClass('uk-hidden')&&$(this).find('.uk-dotnav').children("li").length>1){$(this).find('.uk-slideshow-items li').append('<div class="uk-overlay-gradient--dotnav uk-position-cover"></div>');}})},Videoelements:{init:function(){if($('[data-tos-video]').length){var $script=$('<script src="https://www.youtube.com/iframe_api" nonce="{TONONCE}"></script>');$('body').append($script);} 626$('[tos-video-trigger]').click(function(){var $container=$(this).parents('[data-tos-video]');Layout.Videoelements.initPlayer($container);});$('[tos-video-lightbox]').click(function(){Fresco.show({url:'http://www.youtube.com/watch?v='+$(this).attr('tos-video-lightbox')});});},initPlayer:function($elem){var oOptions=$elem.data('tos-video'),$the_player;player=new YT.Player('player_'+oOptions.id,{height:'100%',width:'100%',videoId:oOptions.link,events:{'onReady':onPlayerReady,}});function onPlayerReady(event){event.target.playVideo();$elem.find(".layoutElement__videoOverlay, .layoutElement__videoThumb").fadeOut(400);}}},Lightbox:{init:function(){$('.lae-lightbox').each(function(){$element=$(this);var $bildContainer;if($element.find('.layoutElement__bild').length){$bildContainer=$element.find('.layoutElement__bild');$bildContainer.parents('a').click(function(e){e.preventDefault();});$bildContainer.click(function(){var sUrl=$bildContainer.find('img').data('src-original');var sCaption=$bildContainer.find('img').attr('title');Fresco.show([{url:sUrl,caption:sCaption}]);});} 627else if($element.find('.layoutElement__galerie').length){$bildContainer=$element.find('.layoutElement__galerie');$bildContainer.parents('a').click(function(e){e.preventDefault();});var arImages=[] 628$bildContainer.find(".uk-slideshow-items li").each(function(){var sUrl=$(this).find('img').data('src-original');var sCaption=$(this).find('img').attr('title');arImages.push({'url':sUrl,'caption':sCaption});});$bildContainer.find('li img').click(function(){var iIndex=Number($(this).parents('li').index())+1;Fresco.show(arImages,iIndex);});}});$('.lar-lightbox').each(function(){var arImages=[];$(this).find('.layoutElement__bild, .uk-slideshow-items li').each(function(){var sUrl=$(this).find('img').data('src-original');var sCaption=$(this).find('img').attr('title');arImages.push({'url':sUrl,'caption':sCaption});});$(this).on('click','.layoutElement__bild, .uk-slideshow-items li',function(e){e.preventDefault();var sUrl=$(this).find('img').data('src-original');var iIndex=Number(arImages.findIndex(x=>x.url===sUrl))+1;Fresco.show(arImages,iIndex);})});}},AnchorMenu:{init:function(){var oLayData=$('main').data('layout');if(!oLayData.cls.includes('showAnchorMenu')||$('.layoutElement.anchor').length==0){$('.layoutRow--anchorMenu').remove();} 629var arMenuItems=[];$('.mainContent').find('.layoutElement.anchor').each(function(){arMenuItems.push($(this));});if(arMenuItems.length==0)$('.layoutRow--anchorMenu ').remove();if(Base.cssBreakpoint('<s')){$('[data-anchorMenu]').append('<li><select class="uk-margin-top uk-margin-bottom uk-width-1-2" id="Layout_Anchor_Select"></select></li>');$('#Layout_Anchor_Select').chosen({disable_search_threshold:100,inherit_select_classes:true});} 630$.each(arMenuItems,function(i,v){var sText=$(v).find('.layoutElement__overline').text();$(v).attr('data-anchor',i);Layout.AnchorMenu.addMenuItem(sText,i);});$('body').on('click','[data-anchor-target]',function(e){e.preventDefault();
630$targetElement=$('[data-anchor="'+$(this).data('anchor-target')+'"]');Layout.AnchorMenu.scrollToItem($targetElement);});$('#Layout_Anchor_Select').on('change',function(){$targetElement=$('[data-anchor="'+$(this).find('option:selected').data('anchor-target')+'"]');Layout.AnchorMenu.scrollToItem($targetElement);});},addMenuItem:function(sText,iAnchor){if(Base.cssBreakpoint('s')){$('[data-anchorMenu]').append('<li><a data-anchor-target="'+iAnchor+'">'+sText+'</a></li>');} 631else{$('#Layout_Anchor_Select').append('<option data-anchor-target="'+iAnchor+'">'+sText+'</option>');$('#Layout_Anchor_Select').trigger('chosen:updated');}},scrollToItem:function($targetElement){$('html, body').animate({scrollTop:$targetElement.offset().top-200},500);}},loadTerminlisteInLAE:function(){$('[tos-layelem-terminliste]').each(function(){var $container=$(this),loadParams=$container.attr('tos-layelem-terminliste');loadParams+="&SHOWSUBPACKAGES=all";$container.load($.document_path+'/start/list.reisetermine.php?tn=_layelem&'+loadParams,{},function(){Suche.Terminsuche.init($container);$container.find('.terminliste__listfooter').hide();});})},loadReiselisteInLAE:function(){$('[tos-layelem-reiseliste]').each(function(){var $container=$(this),loadParams=$container.attr('tos-layelem-reiseliste');$container.load($.document_path+'/start/list.reisen.php?tn=_tosf&'+loadParams,{},function(){$(document).trigger('ajax-reisenliste-loaded');});})}} 632var Validator={init:function(){this.setDefaults();this.initNewMethods();},setDefaults:function(){jQuery.validator.setDefaults({ignore:'.validate-ignore',onfocusout:function(element){$(element).valid();if($(element).is('select[tos-chosen]')){$(element).trigger('chosen:updated');}},errorPlacement:function(error,element){error.appendTo(element.parent());},showErrors:function(errorMap,errorList){this.defaultShowErrors();$.each(errorList,function(index,error){if(error.method=='regex'){error.message=$(error.element).attr('title')+' scheint nicht im richtigen Format zu sein. Prüfe sie bitte nochmal.';$(error.element).next('label').html(error.message);} 633else if(error.method=='postcode'){error.message=$(error.element).attr('title')+' scheint nicht korrekt zu sein. Bitte prüfe sie nochmal.';$(error.element).next('label').html(error.message);} 634else if(error.method=='date'){error.message=$(error.element).attr('title')+' scheint nicht im Format "dd.mm.yyyy" zu sein. Bitte prüfe es nochmal.';$(error.element).next('label').html(error.message);} 635else if(error.method=='maxAge'){error.message=$(error.element).attr('title')+' scheint nicht korrekt zu sein. Bitte pr&ufe es nochmal.';$(error.element).next('label').html(error.message);}});},errorClass:'uk-form-danger',validClass:'uk-form-success',highlight:function(element,errorClass,validClass){let $element=$(element);if($element.is(':checkbox')){$element.next('label').addClass('label--error');} 636else if($element.is(':radio')){$element.next('label').addClass('label--error');} 637$element.removeClass(validClass).addClass(errorClass);},unhighlight:function(element,errorClass,validClass){let $element=$(element);if($element.is(':checkbox')){$element.next('label').removeClass('label--error');} 638else if($element.is(':radio')){$element.next('label').removeClass('label--error');} 639$element.removeClass(errorClass).addClass(validClass);},invalidHandler:function(event,validator){console.log(validator.numberOfInvalids()+" field(s) are invalid");console.log(validator.errorList);$(validator.currentForm).parents('[data-tos-form]').find('[tos-form-error]').slideDown();},submitHandler:function(form){var $Form=$(form) 640var oOptions=$Form.parents('[data-tos-form]').data('tos-form');if(oOptions!=undefined){Form.assembleStreetInfo($Form);if(oOptions.gtm!==undefined){window.dataLayer.push(oOptions.gtm);} 641$('[tos-field-type="iban"]').each(function(){$(this).val($(this).val().replace(/ /g,"").toUpperCase());});if($Form.find('.bausteinReise-checkbox').length){Form.Reiseanfrage.sammleBausteinCodes();} 642if(oOptions.sendMode=='post'){form.submit();} 643else{$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray()}).done(function(resp){$Form.slideUp();$Form.parents('[data-tos-form]').find('[tos-form-success]').slideDown();if(oOptions.reload){window.location.reload();}});}} 644else{console.log($Form.serializeArray());form.submit();}}});},initNewMethods:function(){$.validator.prototype.defaultMessage=function(element,method){if(this.settings.messages&&this.settings.messages[element.name]&&this.settings.messages[element.name][method.method]){return this.settings.messages[element.name][method.method];} 645var originalMessage=$.validator.messages[method.method];if(originalMessage){return typeof originalMessage==="function"?originalMessage.call(this,param,element):originalMessage;} 646return $(element).attr('title')+' fehlt noch, bitte ergänze deine Eingaben.';} 647$.validator.addMethod("maxAge",function(value,element,param){var inputDate=moment(value,'DD.MM.YYYY');var today=moment();var age=today.diff(inputDate,'years');
647return age<=param;});$.validator.addMethod("postcode",function(value,element){if(this.optional(element)){return true;} 648var sPostcode=value;var sLandcode=$(element).parents('.formular__abschnitt').find('[tos-field-type="land"]').val();if(sLandcode==""){return false} 649oPostcodeCountryPatterns={"AT":"^[0-9]{4}$","CH":"^[0-9]{4}$","BE":"^[0-9]{4}$","DE":"^[0-9]{5}$"} 650sPostcodePattern=oPostcodeCountryPatterns[sLandcode];if(typeof sPostcodePattern!=undefined){postcodeRegExp=new RegExp(sPostcodePattern);if(!(postcodeRegExp.test(sPostcode))){return false;} 651else{return true;}}});$.validator.addMethod("date",function(value,element){var check=false;var re=/^\d{1,2}\.\d{1,2}\.\d{4}$/;if(re.test(value)){var adata=value.split('.');var dd=parseInt(adata[0],10);var mm=parseInt(adata[1],10);var yyyy=parseInt(adata[2],10);var xdata=new Date(yyyy,mm-1,dd);if((xdata.getFullYear()===yyyy)&&(xdata.getMonth()===mm-1)&&(xdata.getDate()===dd)){check=true;} 652else{check=false;}} 653else{check=false;} 654return this.optional(element)||check;});$.validator.addMethod("regex",function(value,element,regexp){let re=new RegExp(regexp);return this.optional(element)||re.test(value);});}};var Datepicker={init:function($inputContext){$inputContext=$inputContext==undefined?$('body'):$inputContext 655this.initMomentJS() 656flatpickr.localize(flatpickr.l10ns.de) 657$inputContext.find('[tos-flatpickr=""]').flatpickr({dateFormat:'d.m.Y',minDate:'today',disableMobile:true,allowInput:true,}) 658$inputContext.find('[tos-flatpickr-dob]').flatpickr({dateFormat:'d.m.Y',maxDate:moment().subtract(18,'years').format('DD.MM.YYYY'),disableMobile:true,allowInput:true,}) 659$inputContext.find('[tos-flatpickr-range]').flatpickr({dateFormat:'d.m.Y',minDate:'today',disableMobile:true,allowInput:true,mode:'range',}) 660$inputContext.find('[tos-flatpickr]:not([tos-flatpickr=""])').each(function(){var oOptions=JSON.parse($(this).attr('tos-flatpickr')) 661oOptions.dateFormat='d.m.Y' 662oOptions.plugins=[] 663oOptions.minDate=oOptions.minDate=='firstOfCurMonth'?moment().startOf('month').format('YYYY-MM-DD'):oOptions.minDate 664$(this).flatpickr(oOptions)})},initMomentJS:function(){moment.locale('de')},setLanguage:function(){var lang=$('html').attr('lang') 665if(lang=='en'){$.datepicker.setDefaults($.datepicker.regional['en'])}else{$.datepicker.setDefaults($.datepicker.regional['de'])}},} 666var Form={init:function(){Validator.init() 667this.initForms() 668DeutschePostSchnittstelle.initAutoComplete() 669$(document).on('keydown','input[type="checkbox"] + label',function(e){if(e.key==='Enter'||e.key===' '||e.keyCode===13||e.keyCode===32){e.preventDefault() 670const checkbox_id=$(this).attr('for') 671if(checkbox_id){const $checkbox=$('#'+checkbox_id) 672if($checkbox.length){$checkbox.prop('checked',!$checkbox.prop('checked')) 673$checkbox.trigger('change')}}}}) 674$(document).on('keydown','input[type="text"]',function(e){if(e.key==='Enter'||e.keyCode===13){e.preventDefault()}}) 675$('[tos-chosen=""]').chosen({disable_search_threshold:100,inherit_select_classes:true,}) 676$('[tos-chosen]').each(function(){$(this).addClass('chosen-mobile-width')}) 677$('[tos-chosen]').on('change',function(){if($(this).parents('form').data('validator')!==undefined){$(this).valid()}}) 678$('[tos-chosen]:not([tos-chosen=""])').each(function(){var oOptions=JSON.parse($(this).attr('tos-chosen')) 679oOptions.inherit_select_classes=true 680$(this).chosen(oOptions)}) 681$('[tos-numselect]').each(function(){var oOptions=$(this).attr('tos-numselect')!=''?JSON.parse($(this).attr('tos-numselect')):{} 682$(this).numSelect(oOptions)}) 683$('[data-tos-show-form-trigger]').on('click',function(e){e.preventDefault() 684let $this=$(this) 685let $form=$this.parents('[data-tos-form]') 686let options=$this.data('tos-show-form-trigger') 687let $target=$('[data-tos-form]').filter(function(){return $(this).data('tos-form').code==options.code}) 688$form.slideUp() 689$target.slideDown()})},initForms:function(){$('[data-tos-form]').each(function(){var $FormContainer=$(this) 690var sFormContainerID=$(this).attr('id') 691var $Form=$FormContainer.find('form').eq(0) 692var oOptions=$FormContainer.data('tos-form') 693var sSendMode=oOptions.sendMode 694var bReloadAfter=oOptions.reload 695let validParams=oOptions.validParams 696switch(oOptions.name){case'RUECKRUF':$Form.validate({rules:{ANREDE:'required',VORNAME:'required',NACHNAME:'required',MOBIL:'required',EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},DATENSCHUTZ:'required'}}) 697break 698case'BERATUNG':$Form.validate({rules:{ANREDE:'required',VORNAME:'required',NAME:'required',TELMOBIL:'required',EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},DATENSCHUTZ:'required',NACHRICHT:'required'},}) 699break
700case'ERLEBNISTAGE':$Form.validate({rules:{TEILNEHMERZAHL:'required',FOMCODE:'required',ANREDE:'required',VORNAME:'required',NAME:'required',EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},DATENSCHUTZ:'required',},}) 701break 702case'PARTNERTAGE':Agentur.loadExpedientenListe($('#MODAL_FORM_PARTNERTAGE [tos-agt-exp-list]'),oAgtData.nr,'partnertage',function(){if(oAgtData.exp?.position=='Mobile/r Reiseberater/in'){$('#MODAL_FORM_PARTNERTAGE [tos-agt-exp-list]').find($('[id^="EXPID_"]').not('[value="'+oAgtData.exp.id+'"]')).parent('li').remove()} 703$('#MODAL_FORM_PARTNERTAGE [tos-agt-exp-list]').find($('[id^="EXPID_"][value="'+ 704oAgtData.exp.id+'"]')).prop('checked',true)}) 705$Form.validate({rules:{FOMCODE:'required',DATENSCHUTZ:'required',},submitHandler:function(form){if($('[id^="EXPID_"]:checked').length<1){UIkit.notification({message:'Bitte wählen Sie mindestens einen Expedienten',status:'warning',pos:'top-center',timeout:5000,})}else{arData=$Form.serializeArray() 706arData.push({name:'TEILNEHMERZAHL',value:$('[id^="EXPID_"]:checked').length,}) 707var arTeilnehmendeExp=[] 708$('[id^="EXPID_"]:checked').each(function(){arTeilnehmendeExp.push($(form).find('label[for="'+ 709$(this).attr('id')+'"]').text())}) 710arData.push({name:'TEILNEHMER',value:arTeilnehmendeExp.join(', '),}) 711arData.push({name:'AGENTURNR',value:oAgtData.nr,}) 712arData.push({name:'AGENTURNAME',value:oAgtData.name,}) 713arData.push({name:'AGTNAMEHR',value:oAgtData.namehr,}) 714arData.push({name:'EXPID',value:oAgtData.exp.id,}) 715arData.push({name:'VORNAME',value:oAgtData.exp.vorname,}) 716arData.push({name:'NAME',value:oAgtData.exp.nachname,}) 717arData.push({name:'EMAIL',value:oAgtData.exp.email,}) 718arData.push({name:'LAND',value:oAgtData.land,}) 719arData.push({name:'PLZ',value:oAgtData.plz,}) 720arData.push({name:'ORT',value:oAgtData.ort,}) 721arData.push({name:'STRASSE',value:oAgtData.strasse,}) 722$.ajax({type:'post',url:oOptions.action,data:arData}).done(function(data){$Form.slideUp() 723$Form.parents('[data-tos-form]').find('[tos-form-success]').slideDown()})}},}) 724break 725case'LIVESTREAM':Agentur.loadExpedientenListe($('#MODAL_FORM_PARTNERTAGE [tos-agt-exp-list]'),oAgtData.nr,'partnertage',function(){$('#MODAL_FORM_PARTNERTAGE [tos-agt-exp-list]').find($('[id^="EXPID_"][value="'+ 726oAgtData.exp.id+'"]')).prop('checked',true)}) 727$Form.validate({rules:{FOMCODE:'required'},submitHandler:function(form){if($('[id^="EXPID_"]:checked').length<1){UIkit.notification({message:'Bitte wählen Sie mindestens einen Expedienten',status:'warning',pos:'top-center',timeout:5000,})}else{arData=$Form.serializeArray() 728arData.push({name:'TEILNEHMERZAHL',value:$('[id^="EXPID_"]:checked').length,}) 729var arTeilnehmendeExp=[] 730$('[id^="EXPID_"]:checked').each(function(){arTeilnehmendeExp.push($(form).find('label[for="'+ 731$(this).attr('id')+'"]').text())}) 732arData.push({name:'TEILNEHMER',value:arTeilnehmendeExp.join(', '),}) 733arData.push({name:'AGENTURNR',value:oAgtData.nr,}) 734arData.push({name:'AGENTURNAME',value:oAgtData.name,}) 735arData.push({name:'AGTNAMEHR',value:oAgtData.namehr,}) 736arData.push({name:'EXPID',value:oAgtData.exp.id,}) 737arData.push({name:'VORNAME',value:oAgtData.exp.vorname,}) 738arData.push({name:'NAME',value:oAgtData.exp.nachname,}) 739arData.push({name:'EMAIL',value:oAgtData.exp.email,}) 740arData.push({name:'LAND',value:oAgtData.land,}) 741arData.push({name:'PLZ',value:oAgtData.plz,}) 742arData.push({name:'ORT',value:oAgtData.ort,}) 743arData.push({name:'STRASSE',value:oAgtData.strasse,}) 744$.ajax({type:'post',url:oOptions.action,data:arData}).done(function(data){$Form.slideUp() 745$Form.parents('[data-tos-form]').find('[tos-form-success]').slideDown()})}},}) 746break 747case'BESTELLUNG':var arAdressFelder=['land','plz','ort','strasse_str','strasse_nr',] 748var send_nl_form=false 749$('#form__submit--kataloge, #form__submit--newsletter').hide() 750$('[data-submit-bestellung-forms]').on('click',function(e){e.preventDefault() 751if($('#BESTELLUNG_NEWSLETTER').is(':checked')){if($('.form--newsletter').valid()){$('#form__submit--kataloge').trigger('click');send_nl_form=true;} 752else{$('#20_MATERIAL-DE_EMAIL').focus();}} 753else{$('#form__submit--kataloge').trigger('click');}}) 754$('body').on('change','input[type="checkbox"]',function(){if($('#BESTELLUNG_KATALOG_EUROPA').is(':checked')||$('#BESTELLUNG_KATALOG_FERNREISEN').is(':checked')||$('#BESTELLUNG_KUNDENMAGAZIN').is(':checked')){$.each(arAdressFelder,function(i,v){$Form.find('[tos-field-type="'+v+'"]').parents('.adressFeld').slideDown() 755$Form.find('select[name="LAND"]').removeClass('validate-ignore')})}else{$.each(arAdressFelder,function(i,v){$Form.find('[tos-field-type="'+v+'"]').parents('.adressFeld').slide
755Up() 756$Form.find('select[name="LAND"]').addClass('validate-ignore')})} 757if($('#BESTELLUNG_KATALOG_EUROPA').is(':checked')||$('#BESTELLUNG_KATALOG_FERNREISEN').is(':checked')){if($Form.find('input[name="nachname"]').length<1){$Form.append('<input type="hidden" name="nachname" value="'+ 758$Form.find('[name="NAME"]').val()+'">')}else{$Form.find('[name="nachname"]').val($Form.find('[name="NAME"]').val())} 759if($('#BESTELLUNG_KATALOG_EUROPA').prop('checked')){$('#BESTELLUNG_KATALOG_EUROPA_ORDER').prop('checked',true)}else{$('#BESTELLUNG_KATALOG_EUROPA_ORDER').prop('checked',false)} 760if($('#BESTELLUNG_KATALOG_FERNREISEN').prop('checked')){$('#BESTELLUNG_KATALOG_FERNREISEN_ORDER').prop('checked',true)}else{$('#BESTELLUNG_KATALOG_FERNREISEN_ORDER').prop('checked',false)} 761if($('#BESTELLUNG_KUNDENMAGAZIN').prop('checked')){$('#BESTELLUNG_KUNDENMAGAZIN_ORDER').prop('checked',true)}else{$('#BESTELLUNG_KUNDENMAGAZIN_ORDER').prop('checked',false)}} 762if($('.form--newsletter #BESTELLUNG_NEWSLETTER').is(':checked')){$('.form--newsletter #20_MATERIAL-DE_EMAIL').rules('add','required');Form.Pflichtfelder.mark($('.form--newsletter'));} 763else{$('.form--newsletter #20_MATERIAL-DE_EMAIL').rules('remove','required');Form.Pflichtfelder.mark($('.form--newsletter'));}}) 764const urlParams=new URLSearchParams(window.location.search) 765if(urlParams.has('kat')){const kat=urlParams.get('kat') 766if(kat=='EUROPA'){$('#BESTELLUNG_KATALOG_EUROPA').prop('checked',true) 767$('#BESTELLUNG_KATALOG_FERNREISEN').prop('checked',false).trigger('change')}else if(kat=='FERNREISEN'){$('#BESTELLUNG_KATALOG_EUROPA').prop('checked',false) 768$('#BESTELLUNG_KATALOG_FERNREISEN').prop('checked',true).trigger('change')}} 769$(document).on('change',$Form.find('[tos-field-type="land"]'),function(){switch($Form.find('[tos-field-type="land"]').val()){case'CH':$Form.find('[name="FOMCODE"]').val('20_MATERIAL-CH') 770break 771case'AT':$Form.find('[name="FOMCODE"]').val('20_MATERIAL-AT') 772break 773default:$Form.find('[name="FOMCODE"]').val(oOptions.code)}}) 774if(Base.getKundenModus()=='Affiliate'){$Form.prepend('<input type="hidden" name="AGENTUR_NAME" value="'+ 775oAgtData.name+'" />') 776$Form.prepend('<input type="hidden" name="AGENTUR_STRASSE" value="'+ 777oAgtData.strasse+'" />') 778$Form.prepend('<input type="hidden" name="AGENTUR_PLZ" value="'+ 779oAgtData.plz+'" />') 780$Form.prepend('<input type="hidden" name="AGENTUR_ORT" value="'+ 781oAgtData.ort+'" />') 782$Form.prepend('<input type="hidden" name="AGENTUR_TEL" value="'+ 783oAgtData.telefon+'" />') 784$Form.prepend('<input type="hidden" name="AGENTUR_FAX" value="'+ 785oAgtData.fax+'" />') 786$Form.prepend('<input type="hidden" name="AGENTUR_EMAIL" value="'+ 787oAgtData.email+'" />')} 788$Form.validate({rules:{ANREDE:'required',VORNAME:'required',NAME:'required',LAND:'required',PLZ:{postcode:true,required:true,},ORT:'required',STRASSE_STR:'required',STRASSE_NR:'required',DATENSCHUTZ:'required',},submitHandler:function(form){Form.assembleStreetInfo($Form) 789var arInfoxOrderCodes=[$('#BESTELLUNG_KUNDENMAGAZIN_ORDER').attr('name'),$('#BESTELLUNG_KATALOG_EUROPA_ORDER').attr('name'),$('#BESTELLUNG_KATALOG_FERNREISEN_ORDER').attr('name'),'FORM_ACTION_POST_TO',] 790var oData=$Form.serializeArray() 791$.each(oData,function(i,v){if(arInfoxOrderCodes.indexOf(oData[i]['name'])==-1){oData[i]['name']=v.name.toLowerCase()}}) 792if(($Form.find('[tos-field-type="land"]').val()=='DE'||$Form.find('[tos-field-type="land"]').val()=='LU')&&window.location.hostname.indexOf('test')==-1&&window.location.hostname.indexOf('tourone')==-1&&($('#BESTELLUNG_KATALOG_EUROPA').prop('checked')||$('#BESTELLUNG_KATALOG_FERNREISEN').prop('checked')||$('#BESTELLUNG_KUNDENMAGAZIN').prop('checked'))){$.ajax({type:'post',url:$.document_path+'/start/form.postcrossdomain.php',data:oData}).done(function(resp){})} 793else{console.log("infox blocked: wrong country or testsystem");} 794if(oOptions.sendMode=='post'){form.submit()}else{$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray()}).done(function(resp){$Form.slideUp();$('.form--newsletter').slideUp();$('[data-submit-bestellung-forms]').prop('disabled',true);$Form.parents('[data-tos-form]').find('[tos-form-success]').slideDown();if(send_nl_form){$('#form__submit--newsletter').trigger('click')}})}},}) 795break 796case'VORBESTELLUNG':if(Base.getKundenModus()=='Affiliate'){$Form.prepend('<input type="hidden" name="AGENTUR_NAME" value="'+ 797oAgtData.name+'" />') 798$Form.prepend('<input type="hidden" name="AGENTUR_STRASSE" value="'+ 799oAgtData.strasse+'" />') 800$Form.prepend('<input type="hidden" name="AGENTUR_PLZ" value="'+ 801oAgtData.plz+'" />') 802$Form.prepend('<input type="hidden" name="AGENTUR_ORT" value="'+ 803oAgtData.ort+'" />') 804$Form.prepend('<input type="hidden" name="AGENTUR_TEL" value="'+ 805oAgtData.telefon+'" />') 806$Form.prepend('<input type="hidden" name="AGENTUR_FAX" value="'+ 807oAgtData.fax+'" />') 808$Form.prepend('<input type="hidden" name="AGENTUR_EMAIL" value="'+ 809oAgtData.email+'" />')} 810$Form.validate({rules:{ANREDE:'required',VORNAME:'required',NAME:'required',LAND:'required',PLZ:{postcode:true,required:true,},ORT:'required',STRASSE:'required',EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},DATENSCHUTZ:'required',},}) 811break 812case'KAFFEEABO':$Form.validate({rules:{VORNAME:'required',NAME:'required',DATENSCHUTZ:'required',},}) 813break
814case'GUTSCHEINKAUF':$Form.validate({rules:{GUTSCHEINEMPFAENGER:'required',ANREDE:'required',VORNAME:'required',NACHNAME:'required',LAND:'required',PLZ:{postcode:true,required:true,},ORT:'required',STRASSE_STR:'required',STRASSE_NR:'required',EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},DATENSCHUTZ:'required',},}) 815break 816case'NL-ANMELDUNG-KATALOG':$('#20_MATERIAL-DE_VORNAME').on('change',function(){const $this=$(this) 817if($this.val()=='')return 818if($Form.find('[name="VORNAME"]').length<1){$Form.prepend('<input type="hidden" name="VORNAME" value="'+ 819$this.val()+'">')}else{$Form.find('[name="VORNAME"]').val($this.val())}}) 820$('#20_MATERIAL-DE_NACHNAME').on('change',function(){const $this=$(this) 821if($this.val()=='')return 822if($Form.find('[name="NAME"]').length<1){$Form.prepend('<input type="hidden" name="NAME" value="'+ 823$this.val()+'">')}else{$Form.find('[name="NAME"]').val($this.val())}}) 824$Form.validate({rules:{EMAIL:{regex:"^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$"},DATENSCHUTZ:'required',},}) 825break 826case'NL-ANMELDUNG':$Form.validate({rules:{EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},DATENSCHUTZ:'required',},}) 827break 828case'NL-ANMELDUNG-DOI':$Form.validate({rules:{EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},DATENSCHUTZ:'required',},submitHandler:function(form){$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray()}).done(function(resp){if(resp==undefined){return} 829let data=JSON.parse(resp) 830let messages={0:'Das hat geklappt! Schau in deinem Posteingang und gegebenenfalls auch im Spam-Ordner nach der Bestätigungsmail. Dann kannst du nichts mehr verpassen.',10:'E-Mail Adresse bereits für den Newsletter angemeldet',20:'E-Mail Adresse wurde für den Newsletter abgemeldet',40:'E-Mail Verifizierung bereits angefordert und noch gültig',} 831switch(data.status){case'ERROR':let message=messages[data.code] 832$Form.siblings('[data-form-error]').html(data.message).slideDown() 833break 834case'SUCCESS':$Form.siblings('[data-form-success]').text(messages[0]).slideDown() 835$Form.slideUp() 836break}})},}) 837break 838case'NL-ANMELDUNG-CHST':$Form.validate({rules:{EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},DATENSCHUTZ:'required',},}) 839break 840case'JUST4YOU':$Form.validate({rules:{REISENAME:'required',REISEZEITRAUM:'required',ZIMMERART:'required',ANREDE:'required',NAME:'required',VORNAME:'required',NATIONALITY:'required',KUNDE_REISEPASSNUMMER:'required',KUNDE_REISEPASSGUELTIGKEIT:'required',GEBDATUM:'required',STRASSE:'required',PLZ:'required',ORT:'required',LAND:'required',TELEFON:'required',EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},EINWILLIGUNG:'required',},}) 841break 842case'ITBDINNER2025':$Form.validate({rules:{NAME:'required',VORNAME:'required',FIRMA:'required',EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},TEILNAHME:'required',},ignore:[],messages:{TEILNAHME:{required:'Bitte w?hle aus, ob Du teilnehmen wirst<br/>',},},errorPlacement:function(error,element){if(element.is(':radio')){error.appendTo(element.parents('.input-container'))}else{error.insertAfter(element)}},submitHandler:function(form){arData=$Form.serializeArray() 843let firma=$(form).find('[name="FIRMA"]').val() 844let mitteilung=$(form).find('[name="MITTEILUNG"]').val() 845let notiz=arData.find((input)=>input.name==='MITTEILUNG') 846if(notiz){notiz.value=firma+' | '+mitteilung} 847if(Base.getKundenModus()=='Agentur'){arData.push({name:'AGENTURNR',value:oAgtData.nr,}) 848arData.push({name:'AGENTURNAME',value:oAgtData.name,}) 849arData.push({name:'AGTNAMEHR',value:oAgtData.namehr,}) 850arData.push({name:'EXPID',value:oAgtData.exp.id,}) 851arData.push({name:'VORNAME',value:oAgtData.exp.vorname,}) 852arData.push({name:'NAME',value:oAgtData.exp.nachname,}) 853arData.push({name:'EMAIL',value:oAgtData.exp.email,}) 854arData.push({name:'LAND',value:oAgtData.land,}) 855arData.push({name:'PLZ',value:oAgtData.plz,}) 856arData.push({name:'ORT',value:oAgtData.ort,}) 857arData.push({name:'STRASSE',value:oAgtData.strasse,})} 858$.ajax({type:'post',url:oOptions.action,data:arData}).done(function(data){$Form.slideUp() 859$Form.parents('[data-tos-form]').find('[tos-form-success]').slideDown()})},}) 860break 861case'REISEANFRAGE-BAUSTEINE':$('#ANZAHL_TEILNEHMER').change(function(){Form.Reiseanfrage.updateAnzahlAdressfelder($Form,$('#ANZAHL_TEILNEHMER').val())}) 862$Form.validate({rules:{ZEITRAUM:'required',ANREDE:'required',VORNAME:'required',NAME:'required',GEBURTSDATUM:'required',STRASSE_STR:'required',HAUSNR:'required',PLZ:{required:true,},ORT:'required',MOBIL:'required',EMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},VORNAME_2:'required',NAME_2:'required',GEBURTSDATUM_2:'required',VORNAME_3:'required',NAME_3:'required',GEBURTSDATUM_3:'required',VORNAME_4:'required',NAME_4:'required',GEBURTSDATUM_4:'required',DATENSCHUTZ:'required',},}) 863break 864case'AGTANMELDUNG':$Form.validate({rules:{AGTNAME:'required',LAND:'required',AGTPLZ:{postcode:true,required:true,},AGTORT:'required',STRASSE_STR:'required',STRASSE_NR:'required',AGTTELEFON:'required',AGTEMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},AGTKONTOINHABER:'required',AGTBANKIBAN:{required:true,iban:true,normalizer
864:function(value){return $.trim(value)},},AGTBANKBIC:{required:true,bic:true,},AGTSTEUERNR:'required',AGTUSTIDENT:'required',DATENSCHUTZ:'required',EXPVORNAME:'required',EXPNAME:'required',EXPEMAIL:{required:true,regex:'^(?:(?:[a-zA-Z0-9._%+-]+)@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,})$',},},}) 865break 866case'AGTLOGIN':Form.Pflichtfelder.addPasswordVisibleToggle() 867$Form.validate({rules:{BENAGTNR:'required',BENPASSWORTPLAIN:'required',},submitHandler:function(form){var sEnteredPassword=$('#AGTLOGIN_AGTPASSWORTPLAIN').val() 868var sEncryptedPassword=hex_sha512(sEnteredPassword) 869$(form).find('[id="AGTLOGIN_AGTPASSWORT"]').val(sEncryptedPassword) 870$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray().filter(function(item){return item.name!=='BENPASSWORTPLAIN'}),}).done(function(data){switch(data.status){case'ChangePassword':$(form).find('[tos-form-error]').slideDown() 871break 872case'Invalid':$(form).find('[tos-form-error]').slideDown() 873break 874case'OK':if(data.type=='agt'){Agentur.loadExpedientenListe($('[tos-agtexplist] .list'),$(form).find('[name="BENAGTNR"]').val(),'link') 875break}else{Agentur.redirectOnLogin()} 876break}})},}) 877break 878case'EXPLOGIN':$Form.validate({rules:{AGTEXPEDIENT:'required',BENAGTNR:'required',BENPASSWORTPLAIN:'required',},submitHandler:function(form){var sEnteredPassword=$('#AGTLOGIN_EXPPASSWORTPLAIN').val() 879var sEncryptedPassword=hex_sha512(sEnteredPassword) 880$(form).find('[id="AGTLOGIN_EXPPASSWORT"]').val(sEncryptedPassword) 881$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray().filter(function(item){return item.name!=='BENPASSWORTPLAIN'}),}).done(function(data){switch(data.status){case'ChangePassword':$(form).find('[tos-form-error]').slideDown() 882break 883case'Invalid':$(form).find('[tos-form-error]').slideDown() 884break 885case'OK':if(data.type=='agt'){Agentur.loadExpedientenListe($('[tos-agtexplist] .list'),$(form).find('[name="BENAGTNR"]').val(),'link') 886break}else{Agentur.redirectOnLogin()} 887break}})},}) 888break 889case'AGTPWLOST':$Form.validate({rules:{AGT_AGTNR:'required',AGT_AGTMAIL:'required',},submitHandler:function(form){var $Form=$(form) 890var oOptions=$Form.parents('[data-tos-form]').data('tos-form') 891$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray()}).done(function(resp){$Form.slideUp() 892$Form.parents('[data-tos-form]').find('[tos-form-success]').slideDown() 893window.setTimeout(function(){window.location.reload()},4000)})},}) 894break 895case'EXPPWLOST':$Form.validate({rules:{AGTNR:'required',EXPEMAIL:'required',},submitHandler:function(form){$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray()}).done(function(resp){if(resp.hasOwnProperty('ERROR')){UIkit.notification({message:resp.ERROR,status:'danger',pos:'top-center',timeout:5000,})}else{$Form.slideUp() 896$Form.parents('[data-tos-form]').find('[tos-form-success]').slideDown()}})},}) 897break 898case'AGTEXPSELECT':$Form.validate({rules:{EXPID:'required',},invalidHandler:function(){UIkit.notification({message:'Bitte einen Expedienten w\u00e4hlen.',status:'warning',timeout:5000,pos:'top-right',})},submitHandler:function(form){$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray()}).done(function(resp){Agentur.redirectOnLogin()})},}) 899break 900case'KUNDENABFRAGE':$Form.validate({rules:{ADRKUNDENNR:{required:function(e){return($('#kundenabfrage__input--email').is(':blank')&&$('#kundenabfrage__input--name').is(':blank'))},},ADREMAIL:{required:function(e){return($('#kundenabfrage__input--kundennr').is(':blank')&&$('#kundenabfrage__input--name').is(':blank'))},},},invalidHandler:function(){UIkit.notification({message:'Bitte Kundennummer oder E-Mail angeben.',status:'danger',timeout:3000,pos:'top-center',})},submitHandler:function(form){Reisebook.Kundendaten.load(form)},}) 901break 902case'KUNDENSUCHE':$Form.validate({submitHandler:function(form){Reisebook.Kundendaten.search(form)},}) 903break 904case'DUKUNDE':$Form.validate({rules:{VRRVORGANG:{required:{depends:function(){return $Form.find('#DUHASH').length>0?false:true},},},VRRADRNAME:{required:{depends:function(){return $Form.find('#DUHASH').length>0?false:true},},}
904,DUHASH:{required:{depends:function(){return $Form.find('#DUHASH').length>0?true:false},},},},submitHandler:function(form){$.ajax({type:'post',url:'/start/jx_ajax.php',data:$(form).serialize(),success:function(data){var bLoginResult=$.parseJSON(data).Login 905if(bLoginResult){$(form).hide() 906var oParams=$(form).serialize() 907$('#DU_KUNDE').load('/start/form.unterlagen.login.php?'+ 908oParams,data,function(){Reiseunterlagen.init() 909$('[data-reiseunterlagen-abruf-error-message]').remove()})}else{$('#FORM_UNTERLAGEN_ERROR').show()}},})},}) 910var oParams=$.getUrlVars() 911if('duhash'in oParams){if($Form.find('#DUHASH').length===0){$Form.prepend('<input type="hidden" name="DUHASH" id="DUHASH" value="'+ 912oParams.duhash+'">')} 913$('#DUHASH').val(oParams.duhash) 914$Form.submit()}else if('duna'in oParams&&'duvnr'in oParams){$('#VRRVORGANG').val(oParams.duvnr) 915$('#VRRADRNAME').val(oParams.duna) 916$Form.submit()} 917break 918case'EXPEDIENT_ADD':$Form.validate({rules:{EXPGESCHLECHT:'required',EXPVORNAME:'required',EXPNAME:'required',EXPTEL:'required',EXPEMAIL:{required:true,email:true,},},submitHandler:function(form){const data=$(form).serializeArray() 919Agentur.Expedient.add(data)},})
920case'KUNDE_REGISTER':$Form.validate({rules:{ANREDE:'required',VORNAME:'required',NAME:'required',EMAIL:{required:true,email:true,},},submitHandler:function(form){$Form.siblings('[data-form-error], [data-form-success]').text('').slideUp() 921$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray()}).done(function(resp){if(resp==undefined){return} 922let data=JSON.parse(resp) 923switch(data.status){case'ERROR':let message=kd_form_messages[data.code] 924$Form.siblings('[data-form-error]').html(message).slideDown() 925break 926case'SUCCESS':$Form.siblings('[data-form-success]').text(data.message).slideDown() 927$Form.slideUp() 928break}})},}) 929break 930case'KUNDE_MAIL_CONFIRM':Form.Pflichtfelder.addPasswordVisibleToggle() 931if(oOptions.error!=''){$Form.find('input[type="password"]').prop('disabled',true) 932$Form.find('.uk-button-primary').prop('disabled',true) 933$FormContainer.find('[data-form-error]').slideDown()} 934$Form.validate({rules:{PASSWORT1:'required',PASSWORT2:{required:true,equalTo:'#KUNDE_PASSWORT1_PLAIN',},},submitHandler:function(form){$Form.siblings('[data-form-error], [data-form-success]').text('').slideUp() 935let kunde_pw1_plain=$('#KUNDE_PASSWORT1_PLAIN').val() 936let kunde_pw2_plain=$('#KUNDE_PASSWORT2_PLAIN').val() 937let kunde_pw1_enc=hex_sha512(kunde_pw1_plain) 938let kunde_pw2_enc=hex_sha512(kunde_pw2_plain) 939$(form).find('[id="KUNDE_PASSWORT1"]').val(kunde_pw1_enc) 940$(form).find('[id="KUNDE_PASSWORT2"]').val(kunde_pw2_enc) 941let data=$Form.serializeArray() 942data=data.map(function(item){item.value=encodeURIComponent(item.value) 943return item}) 944$.ajax({type:'post',url:oOptions.action,data:data,}).done(function(resp){let data=JSON.parse(resp) 945switch(data.status){case'ERROR':let message=kd_form_messages[data.code] 946$Form.siblings('[data-form-error]').html(message).slideDown() 947break 948case'SUCCESS':$Form.siblings('[data-form-success]').text(data.message).slideDown() 949$Form.slideUp() 950location.href=$.document_path+'/MeinChamaeleon/Login' 951break}})},}) 952break 953case'KUNDEPWLOST':$Form.validate({rules:{KUNDE_LOSTEMAIL:'required',KUNDE_LOSTNR:'required'},submitHandler:function(form){$.ajax({type:'post',url:oOptions.action,data:$Form.serializeArray()}).done(function(resp){if(resp.ERROR){$FormContainer.find('[tos-form-success]').hide() 954let message=kd_form_messages[resp.CODE] 955$FormContainer.find('[tos-form-error]').html(message).slideDown()}else{$FormContainer.find('[tos-form-error]').hide() 956let message=kd_form_messages[resp.CODE] 957$FormContainer.find('[tos-form-success]').html(message).slideDown() 958setTimeout(()=>{window.location.reload()},3000)}})},}) 959break 960case'KUNDENLOGIN':Form.Pflichtfelder.addPasswordVisibleToggle() 961$Form.validate({rules:{KUNDE_EMAIL:'required',KUNDE_PASSWORTPLAIN:'required',},submitHandler:function(form){var sEnteredPassword=$('#KUNDE_PASSWORTPLAIN').val() 962var sEncryptedPassword=hex_sha512(sEnteredPassword) 963$(form).find('[id="KUNDE_PASSWORT"]').val(sEncryptedPassword) 964let data=$Form.serializeArray().filter(function(item){return item.name!=='KUNDE_PASSWORTPLAIN'}) 965$.ajax({type:'post',url:oOptions.action,data:data,}).done(function(data){switch(data.status){case'ChangePassword':$(form).find('[tos-form-error]').slideDown() 966break 967case'Invalid':let message=kd_form_messages[data.code] 968$(form).find('[tos-form-error]').html(message).slideDown() 969break 970case'OK':Merkzettel.initFromDB() 971window.top.location.href=$.document_path+'/MeinChamaeleon/'}})},}) 972break 973case'KUNDE_ANFRAGE':$Form.validate({rules:{KUN_EDIT_BETREFF:'required',KUN_EDIT_TEXT:'required'}});break;} 974if(oOptions.captcha!==undefined&&oOptions.captcha.mode=='turnstile'){const $modal=$Form.parents('[uk-modal]:not(.modal--show-inline)') 975if($modal.length>0){UIkit.util.on($modal[0],'show',function(){Form.Captcha.init($Form,oOptions,validParams);});} 976else{Form.Captcha.init($Form,oOptions,validParams);}}else{if(oOptions.name=='EXPEDIENT_ADD'||oOptions.name=='KUNDENABFRAGE'||oOptions.name=='KUNDENSUCHE'||oOptions.name=='KUNDENLOGIN'||oOptions.name=='KUNDE_ANFRAGE'){return} 977if(!$Form.find('[name="cmd"]').length){$Form.prepend('<input type="hidden" name="cmd" value="save"/>')} 978if(!$Form.find('[name="encoding"]').length){$Form.prepend('<input type="hidden" name="encoding" value="iso-8859-15"/>')} 979if(!$Form.find('[name="FOMCODE"]').length){$Form.prepend('<input type="hidden" name="FOMCODE" value="'+ 980oOptions.code+'"/>')} 981if($Form.attr('action')==''&&oOptions.action!=undefined){$Form.attr('action',oOptions.action)}} 982Form.Pflichtfelder.mark($Form)})},Captcha:{init:function($Form,oOptions,validParams){turnstile.render($Form.find('.recaptcha-container')[0],{sitekey:oOptions.captcha.sitekey,'timeout-callback':function(){$Form.find('[data-form-submit]').attr('disabled',true) 983$Form.find('[name="recaptcha-response"]').remove() 984if(oOptions.name=='BESTELLUNG'){$('[data-submit-bestellung-forms]').attr('disabled',true)}},'error-callback':function(errorCode){console.log('Captcha Challenge Error:',oOptions.name,errorCode)},callback:function(token){console.log('Captcha Challenge Success',oOptions.name) 985if(Base.Readonly.isActive()){console.log("Form Submit Buttons werden nicht aktiviert, weil Kundenlogin aktiv");return;} 986$Form.find('[data-form-submit]').removeAttr('disabled') 987if(oOptions.name=='BESTELLUNG'){$('[data-submit-bestellung-forms]').attr('disabled',false)} 988if($Form.find('input[name="recaptcha-response"]').length){$Form.find('input[name="recaptcha-response"]').val(token)}else{$Form.prepend('<input type="hidden" name="recaptcha-response" value="'+ 989token+'">')} 990$.each(validParams,function(i,v){switch(i){case'action':$Form.attr('action',v) 991break 992default:$Form.prepend('<input type="hidden" name="'+ 993i+'" value="'+ 994v+'">') 995break}});}}
995);}},Pflichtfelder:{mark:function($Form){var $Pflichtfelder=$Form.validate().settings.rules 996$.each($Pflichtfelder,function(field,v){var $the_field=$Form.find('[name="'+field+'"]'),sFieldId=$the_field.attr('id'),$label=$Form.find('label[for="'+sFieldId+'"]:not(.uk-form-danger)') 997if($label.children('p').length){$label=$label.children('p').eq(0)} 998if(v.required){if($the_field.attr('type')=='checkbox'){$label.html($label.html()+' *')}else if($the_field.attr('type')=='radio'){}else{if($label.text().indexOf('*')==-1){$label.text($label.text()+' *')} 999if($the_field.length&&$the_field[0].hasAttribute('placeholder')){if($the_field.attr('placeholder').indexOf('*')>-1){return} 1000$the_field.attr('placeholder',$the_field.attr('placeholder')+' *')}}} 1001else{if($label.length<1){return;} 1002$label.html($label.html().replace(' *',''));if($the_field.length&&$the_field[0].hasAttribute('placeholder')){if($the_field.attr('placeholder').indexOf('*')>-1){$the_field.attr('placeholder',$the_field.attr('placeholder').replace('*',''));}}}});},addPasswordVisibleToggle:function(){$('input[type=password]').each(function(){var $passwordInput=$(this) 1003var $parent=$passwordInput.parent() 1004if(!$parent.hasClass('uk-position-relative')){$parent.addClass('uk-position-relative')} 1005var $button=$('<a>',{class:'uk-form-icon uk-form-icon-flip tos-border-bottom-remove tos-password-toggle-placement',}) 1006if($('[tos-kundenloginform]').length!==0){$button.addClass('tos-password-toggle-placement-kd')} 1007var $icon=$('<i>',{class:'fa fa-eye'}) 1008$button.append($icon) 1009$passwordInput.after($button) 1010$button.on('click',function(){if($passwordInput.attr('type')==='password'){$passwordInput.attr('type','text') 1011$icon.removeClass('fa-eye').addClass('fa-eye-slash')}else{$passwordInput.attr('type','password') 1012$icon.removeClass('fa-eye-slash').addClass('fa-eye')} 1013$passwordInput.focus()})})},},assembleStreetInfo:function($form){if($form.find('[tos-field-type="strasse"]').length&&$form.find('[tos-field-type="strasse_str"]').length){var $Strasse=$form.find('[tos-field-type="strasse"]'),sStrasse_str=$form.find('[tos-field-type="strasse_str"]').val(),sStrasse_nr=$form.find('[tos-field-type="strasse_nr"]').val() 1014if(sStrasse_str.indexOf(sStrasse_nr)>=0){$Strasse.val(sStrasse_str)}else{$Strasse.val(sStrasse_str+' '+sStrasse_nr)}}},initLandTelefonChange:function(formular){formular.find('select[name="LAND"]').on('change',function(){var chosen_country=$(this).val().toLowerCase() 1015formular.find('input[name="TELEFON"]').intlTelInput('setCountry',chosen_country)})},initTelefonInputs:function(){$('input[name="TELEFON"]').each(function(){var $this=$(this) 1016$this.intlTelInput({preferredCountries:['de','at','ch'],})})},useMustermann:function(str){$('[tos-field-type="anrede"]').each(function(){var sVal=$(this).find('option:nth-child(1)').val()!=''?$(this).find('option:nth-child(1)').val():$(this).find('option:nth-child(2)').val() 1017$(this).val(sVal)}) 1018$('[tos-field-type="land"], [tos-field-type="nationalitaet"]').each(function(){$(this).val('DE')}) 1019$('[tos-chosen]').trigger('chosen:updated') 1020$('input[type="text"]').each(function(){var $input=$(this),sAppendix='',sCustomizer=str!=undefined?str:'' 1021if($input.parents('[data-teiln_nr]').length){sAppendix=' '+$input.parents('[data-teiln_nr]').data('teiln_nr')} 1022switch($input.attr('tos-field-type')){case'vorname':$input.val('Testvorname'+sCustomizer+sAppendix) 1023break 1024case'nachname':$input.val('Testnachname'+sCustomizer+sAppendix) 1025break 1026case'plz':$input.val('12345') 1027break 1028case'ort':$input.val('Testort'+sCustomizer+sAppendix) 1029break 1030case'strasse_str':$input.val('Teststrasse'+sCustomizer+sAppendix) 1031break 1032case'strasse_nr':$input.val('11') 1033break 1034case'adrzusatz':$input.val('Test Adresszusatz'+sCustomizer+sAppendix) 1035break 1036case'mobile':$input.val('0151 12345678') 1037break 1038case'tel':$input.val('12345678') 1039break 1040case'email':$input.val('test'+sCustomizer+sAppendix.trim()+'@test.test') 1041break 1042case'dob':$input.val('31.12.1970') 1043break 1044default:break}})},Reiseanfrage:{updateAnzahlAdressfelder:function($Form,iCntTeiln){$Form.find('[data-teiln]').hide() 1045for(var i=2;i<=iCntTeiln;i++){if(!$Form.find('[data-teiln="'+i+'"]').length){var $newTeiln=$Form.find('[data-teiln="2"]').clone() 1046$newTeiln.attr('data-teiln',i) 1047$newTeiln.find('.buchung__boxSectionHeading').text(i+'. Reisender')
1048$newTeiln.find('input:not(.chosen-search-input), select').each(function(){var sId=$(this).attr('id').slice(0,-1)+i 1049$(this).attr('id',sId) 1050$(this).attr('name',sId) 1051$(this).next('label').attr('for',sId) 1052if($(this).prop('tagName')=='SELECT'){$(this).next('.chosen-container').remove() 1053if($(this).attr('tos-field-type')=='nationalitaet'){$(this).val('')} 1054$(this).chosen({disable_search_threshold:10,})}}) 1055$newTeiln.insertAfter($Form.find('[data-teiln="'+(parseInt(i)-1)+'"]'))}else{$Form.find('[data-teiln="'+i+'"]').show()}}},sammleBausteinCodes:function($container){var sCodes='',sTitles='' 1056$('input[name="BAUSTEIN"]:checked').each(function(){sCodes+=$(this).data('reicode')+'\n' 1057sTitles+=$(this).val()+'\n'}) 1058$('#BAUSTEINE_TITEL').val(sTitles) 1059$('#BAUSTEINE_CODES').val(sCodes)},},} 1060function initAutocomplete(){GooglePlacesAutocomplete.init()} 1061var GooglePlacesAutocomplete={placeSearch:'',Autocompletes:[],ComponentForm:{street_number:'short_name',route:'long_name',locality:'long_name',country:'short_name',postal_code:'short_name',},init:function(){$('[data-gmap-ac-input]').each(function(){let $input=$(this) 1062let $wrap=$input.parents('[data-gmap-ac-wrap]') 1063let autocomplete=new google.maps.places.Autocomplete($input[0],{types:['geocode'],}) 1064autocomplete.setFields(['address_component']) 1065autocomplete.addListener('place_changed',function(){GooglePlacesAutocomplete.fillInAddress(autocomplete,$wrap)}) 1066GooglePlacesAutocomplete.Autocompletes.push(autocomplete) 1067$input.on('keypress',function(e){if(e.which==13)e.preventDefault()})}) 1068this.Toggles.init()},Toggles:{init:function(){$('[data-gmap-ac-toggle]').on('change',function(){let $this=$(this) 1069let $wrap=$this.parents('[data-gmap-ac-wrap]') 1070let $inputs=$wrap.find('[data-gmap-ac]') 1071if($this.is(':checked')){$inputs.prop('readonly',false)}else{$inputs.prop('readonly',true)}})},show:function($wrap){$wrap.find('[data-gmap-ac-toggle-wrap]').show() 1072$wrap.find('[data-gmap-ac-toggle]').prop('checked',false)},},fillInAddress:function(autocomplete,$wrap){var place=autocomplete.getPlace() 1073GooglePlacesAutocomplete.Toggles.show($wrap) 1074for(var component in GooglePlacesAutocomplete.ComponentForm){$wrap.find('[data-gmap-ac="'+component+'"]').val('')} 1075for(var i=0;i<place.address_components.length;i++){var addressType=place.address_components[i].types[0] 1076if(GooglePlacesAutocomplete.ComponentForm[addressType]){var val=place.address_components[i][GooglePlacesAutocomplete.ComponentForm[addressType]] 1077let $element=$wrap.find('[data-gmap-ac="'+addressType+'"]') 1078if($element.attr('tos-chosen')!==undefined){$element.val(val).trigger('change').prop('disabled',true).trigger('chosen:updated').prop('disabled',false)}else{$element.val(val).trigger('change').prop('readonly',true).trigger('chosen:updated')}}}},} 1079var DeutschePostSchnittstelle={initAutoComplete:function(){$('[data-dpac]').each(function(){var $dpac=$(this) 1080$dpac.find('[data-dpac-input]').each(function(){var the_input=$(this) 1081var the_label=$(this).next('label') 1082var info=the_input.data('dpac-input') 1083var mode=the_input.data('dpac-mode') 1084the_input.on('focusin',function(e){var dpac_list=$(this).siblings('.dp-autocomplete-list').delay(100).fadeIn()}) 1085the_input.on('focusout',function(e){var dpac_list=$(this).siblings('.dp-autocomplete-list').delay(500).fadeOut()}) 1086the_input.add(the_label).wrapAll('<div class="dp-autocomplete-input-container"></div>') 1087$('<div></div>',{class:'dp-autocomplete-list','data-dpac-list':info,}).appendTo(the_input.parent()) 1088var the_list=the_input.siblings('[data-dpac-list="'+info+'"]') 1089the_list.on('click','article',function(){var ergebnis=$(this) 1090var strasse=ergebnis.attr('data-strasse') 1091var plz=ergebnis.attr('data-plz') 1092var ort=ergebnis.attr('data-ort') 1093var uuid=ergebnis.attr('data-uuid') 1094var suchstring=the_input.val() 1095$dpac.find('[data-dpac-input="plz"]').val(plz) 1096$dpac.find('[data-dpac-input="ort"]').val(ort) 1097$dpac.find('[data-dpac-input="strasse"]').val(strasse).trigger('change') 1098the_list.html('') 1099$.ajax({url:'/start/jx_ajax.php',dataType:'JSON',data:{cube:'jx_dpautocomplete',cmd:'select.'+mode,KOMBINATION:suchstring,UUID:uuid,},})}) 1100the_input.on('keyup',function(){if(the_input.parents('form').find('select.land').val()=='DE'){var suchstring
1101if(info=='strasse'){suchstring=$dpac.find('[data-dpac-input="plz"]').val() 1102suchstring+=' '+ 1103$dpac.find('[data-dpac-input="ort"]').val() 1104suchstring+=' '+$(this).val()}else{suchstring=$(this).val()} 1105if(suchstring.length>2){$.ajax({url:'/start/jx_ajax.php',dataType:'JSON',data:{cube:'jx_dpautocomplete',cmd:'search.'+mode,KOMBINATION:suchstring,},}).done(function(data){the_list.html('') 1106if(data!=null){if(data[0]!==null&&data[0].Plz!==undefined){if(mode=='plzortotlstr'){$.each(data,function(i,v){$('<article></article>',{text:v.Strasse+', '+ 1107v.Plz+' '+ 1108v.Ort,'data-plz':v.Plz,'data-ort':v.Ort,'data-strasse':v.Strasse,'data-uuid':v.UUID,}).appendTo(the_list)})}else{$.each(data,function(i,v){$('<article></article>',{text:v.Plz+' '+v.Ort,'data-plz':v.Plz,'data-ort':v.Ort,'data-uuid':v.UUID,}).appendTo(the_list)})}}}})}else{the_list.html('')}}})})})},} 1109var KeepAlive={init:function(formular,$container){setTimeout(function(){KeepAlive.get(formular)},1000) 1110setTimeout(function(){$container.on('change','input[type="text"]:not(#GUTCODE), input[type="number"], select, textarea, input[type="checkbox"], input[type="radio"]',function(){var the_field=$(this) 1111KeepAlive.set(formular,the_field)})},2000)},get:function(formular,bTriggerChange){$('.request__form').find('input[type="text"]:not(.flatpickr-input), input[type="number"], select, textarea, input[type="checkbox"], input[type="radio"]').each(function(){let $this=$(this) 1112if(sessionStorage.getItem($this.attr('id'))!=undefined){let stored=sessionStorage.getItem($this.attr('id')) 1113if($this.attr('type')=='checkbox'||$this.attr('type')=='radio'){stored=stored=='true'?true:false 1114$this.prop('checked',stored) 1115if(stored&&($this.hasClass('leistung__toggleCheckbox')||$this.hasClass('zusatzprogramm__toggleCheckbox'))){$this.trigger('change')} 1116if($this.hasClass('wahlpflicht__item-input')){$this.trigger('change')}}else{$this.val(stored) 1117$this.trigger('chosen:updated')}}}) 1118$(document).trigger('after-keep-alive-get')},getDataObject:function(formular){return $.ajax({method:'post',url:$.document_path+'/start/jx_ajax.php',data:{cube:'jx_keepalive',cmd:'get.formfields',formid:formular,encoding:'iso-8859-1',},})},set:function(formular,field){var the_field=field 1119let the_label=field.parents('.leistung').find('label[for="'+the_field.attr('id')+'"]') 1120let sValue=false 1121if(the_field.hasClass('wahlpflicht__item-input')){the_label=field.parents('.zusatzprogramm').find('.zusatzprogramm__title') 1122let other_fields=field.parents('.wahlpflicht__auswahl').find('.wahlpflicht__item-input').not(field) 1123other_fields.each(function(){sessionStorage.removeItem($(this).attr('id'))})} 1124if(the_field.attr('type')=='checkbox'||the_field.attr('type')=='radio'){sValue=the_field.prop('checked') 1125sessionStorage.setItem(the_field.attr('id'),the_field.prop('checked'))} 1126else{sValue=the_field.val() 1127sessionStorage.setItem(the_field.attr('id'),the_field.val())}},saveAll:function(formular,$container){$container.find('input[type="text"], input[type="number"], select, textarea, input[type="checkbox"]').each(function(){var the_field=$(this) 1128KeepAlive.set(formular,the_field)})},} 1129var Navigation={init:function(){this.Submenues.check($('.menuTop--left')) 1130$(document).on('click','.trigger-cb-dialog',function(e){e.preventDefault() 1131Cookiebot.show()}) 1132$(document).on('click','.page__header nav .menu__li--hasSubmenu > .menu__a',function(e){e.preventDefault() 1133const $this=$(this).parent() 1134$('.menu__li--hasSubmenu').removeClass('is-active') 1135$this.toggleClass('is-active')}) 1136$(document).on('click',function(e){if(!$(e.target).closest('.menu__li--hasSubmenu').length){$('.menu__li--hasSubmenu').removeClass('is-active')}}) 1137const $kontinent_links=$('.menuTop--left').find('.menu--laender > li > a') 1138$kontinent_links.on('click',function(e){e.preventDefault() 1139const $toggle=$(this) 1140$toggle.closest('ul').find('a.is-active').removeClass('is-active') 1141$toggle.toggleClass('is-active')}) 1142if($('.menuTop--left').find('.menu--laender > li > a.is-active').length<1){$('.menuTop--left').find('.menu--laender > li:first > a:first').addClass('is-active')}},Submenues:{check:function($menu){$links_ohne_submenu=$menu.find('.menu__a.is--dynamic').filter(function(){if($(this).siblings('.menu__megaPanel').length){return false}else{return true}}) 1143$links_ohne_submenu.parent('.menu__li').removeClass('menu__li--hasSubmenu') 1144$links_ohne_submenu.each(function(){$this=$(this) 1145title=$this.attr('title') 1146href=$this.data('href') 1147label=$this.html() 1148$this.replaceWith('<a class="menu__a" href="'+href+'" title="'+title+'">'+label+'</a>')})},},} 1149var Reiseunterlagen={Programm:{VP:{},P:{},AP:{}},Verlauf:{VP:{},P:{},AP:{},Gesamt:{}},Reiseleiter:{get:function(){let reiseleiter=$('[data-ru-leistung]').filter(function(){return $(this).data('ru-leistung').anforderung=='P';}).data('ru-leistung').reiseleiter;let $handy=reiseleiter.handy==''?'':`<div class="reiseleiter__info">Handy: <a href="tel:${reiseleiter.handy}">${reiseleiter.handy}</a></div>`;let $reiseleiter=`<div class="reiseleiter"><h3 class="reiseleiter__title">${reiseleiter.vorname} ${reiseleiter.name}</h3>${$handy}</div>`;if(reiseleiter.name!=''){$('[data-reiseleiter-target="1"]').html($reiseleiter);} 1150else{$('[data-accordion-item="reiseleiter"]').remove();}}},isDuplicate:function(programm,tag){duplicate=false;$.each(Reiseunterlagen.Verlauf[programm],function(i,v){if(v.datum==tag){duplicate=true;return true;}}
1150);return duplicate;},isVP:function(leistung_beginn){if(Object.values(Reiseunterlagen.Verlauf.VP)[0]==undefined){return false;} 1151let vp_beginn=moment(Object.values(Reiseunterlagen.Verlauf.VP)[0].datum,'DD.MM.YYYY');let vp_ende=moment(Object.values(Reiseunterlagen.Verlauf.VP).pop().datum,'DD.MM.YYYY');return leistung_beginn.isBetween(vp_beginn,vp_ende,undefined,'[]')?true:false;},isAP:function(leistung_beginn){if(Object.values(Reiseunterlagen.Verlauf.AP)[0]==undefined){return false;} 1152let ap_beginn=moment(Object.values(Reiseunterlagen.Verlauf.AP)[0].datum,'DD.MM.YYYY');let ap_ende=moment(Object.values(Reiseunterlagen.Verlauf.AP).pop().datum,'DD.MM.YYYY');return leistung_beginn.isBetween(ap_beginn,ap_ende,undefined,'[]')?true:false;},isP:function(leistung_beginn){let p_beginn=moment(Object.values(Reiseunterlagen.Verlauf.P)[0].datum,'DD.MM.YYYY');let p_ende=moment(Object.values(Reiseunterlagen.Verlauf.P).pop().datum,'DD.MM.YYYY');return leistung_beginn.isBetween(p_beginn,p_ende,undefined,'[]')?true:false;},init:function(){if($('[data-reiseverlauf-tag]').length<1){return false;} 1153if(!VorgangMerkmale.some(merkmal=>merkmal.code=='KDEINSICHT')){$('[data-section="reiseunterlagen"]').remove();return false;} 1154Reiseunterlagen.Programm.P.titel=$('[data-ru-leistung][data-anforderung="P"]').find('[data-paket-titel]').data('paket-titel');Reiseunterlagen.Programm.AP.titel=$('[data-ru-leistung][data-anforderung="AP"]').find('[data-paket-titel]').data('paket-titel');Reiseunterlagen.Programm.VP.titel=$('[data-ru-leistung][data-anforderung="VP"]').find('[data-paket-titel]').data('paket-titel');$('[data-reiseverlauf-tag]').each(function(){let $this=$(this);let options=$this.data('reiseverlauf-tag');let $parent=$this.parents('[data-reiseverlauf]');let parent_options=$parent.data('reiseverlauf');let beginn_leistung=moment(parent_options.beginn,'DD.MM.YY');let tag_datum=beginn_leistung.add(options.tag-1,'d');if($.inArray(parent_options.anforderung,['AP','VP','P'])==-1){return true;} 1155let tag={anforderung:parent_options.anforderung,leicode:parent_options.leicode,leititel:parent_options.leititel,reicode:parent_options.reicode,reititel:parent_options.reititel,tag_nr:options.tag,datum:tag_datum.format('DD.MM.YYYY'),timestamp:tag_datum.unix(),ende:parent_options.ende,text:{t
1155itel:$this.find('[data-tag-text="titel"]').html(),revtext:$this.find('[data-tag-text="revtext"]').html(),kilometer:$this.find('[data-tag-text="kilometer"]').html(),hinweise:$this.find('[data-tag-text="hinweise"]').html(),verpflegung:$this.find('[data-tag-text="verpflegung"]').html(),poi:$this.find('[data-tag-text="poi"]').html(),},leistungen:[]};Reiseunterlagen.Verlauf[parent_options.anforderung][tag_datum.format('DD.MM.YYYY')]=tag;Reiseunterlagen.Verlauf.Gesamt[tag_datum.format('DD.MM.YYYY')]=tag;Reiseunterlagen.Programm[parent_options.anforderung].reitext=$parent.find('[data-paket-text="reisebeschreibung"]').html();});$('[data-ru-leistung]').each(function(){let $this=$(this);let options=$this.data('ru-leistung');let beginn_leistung=moment(options.beginn,'DD.MM.YY');if($.inArray(options.anforderung,['P','VP','AP','AF','RF','KV'])>-1){return true;} 1156if(options.sichtbar_kundenlogin!=1){console.log("Leistung",options.anforderung,"ist nicht sichtbar","wird übersprungen");return true;} 1157let tag={id:options.id,anforderung:options.anforderung,leicode:options.code,leititel:options.leititel,reicode:options.reicode,reititel:options.reititel,datum:beginn_leistung.format('DD.MM.YYYY'),timestamp:beginn_leistung.unix(),ende:options.ende,text:{t
1157itel:'',revtext:'',kilometer:'',hinweise:'',verpflegung:'',poi:'',reitext:'',},leistungen:[]};let leistung={id:options.id,anforderung:options.anforderung,leicode:options.code,reicode:options.reicode,datum:beginn_leistung.format('DD.MM.YYYY'),ende:options.ende,text:{titel:$this.find('[data-leistung-titel]').html(),beschreibung:$this.find('[data-leistung-text]').html(),freifeld1:$this.find('[data-leistung-freifeld-1]').html(),freifeld2:$this.find('[data-leistung-freifeld-2]').html(),freifeld3:$this.find('[data-leistung-freifeld-3]').html(),freifeld4:$this.find('[data-leistung-freifeld-4]').html()}};if(Reiseunterlagen.isVP(beginn_leistung)){if(Reiseunterlagen.Verlauf.VP[beginn_leistung.format('DD.MM.YYYY')]==undefined){Reiseunterlagen.Verlauf.VP[beginn_leistung.format('DD.MM.YYYY')]=tag;} 1158Reiseunterlagen.Verlauf.VP[beginn_leistung.format('DD.MM.YYYY')].leistungen.push(leistung);if(Reiseunterlagen.Programm.VP.leistungen==undefined){Reiseunterlagen.Programm.VP.leistungen=[];} 1159Reiseunterlagen.Programm.VP.leistungen.push(leistung);} 1160else if(Reiseunterlagen.isAP(beginn_leistung)){if(Reiseunterlagen.Verlauf.AP[beginn_leistung.format('DD.MM.YYYY')]==undefined){Reiseunterlagen.Verlauf.AP[beginn_leistung.format('DD.MM.YYYY')]=tag;} 1161Reiseunterlagen.Verlauf.AP[beginn_leistung.format('DD.MM.YYYY')].leistungen.push(leistung);if(Reiseunterlagen.Programm.AP.leistungen==undefined){Reiseunterlagen.Programm.AP.leistungen=[];} 1162Reiseunterlagen.Programm.AP.leistungen.push(leistung);} 1163else if(Reiseunterlagen.isP(beginn_leistung)){if(Reiseunterlagen.Verlauf.P[beginn_leistung.format('DD.MM.YYYY')]==undefined){Reiseunterlagen.Verlauf.P[beginn_leistung.format('DD.MM.YYYY')]=tag;} 1164Reiseunterlagen.Verlauf.P[beginn_leistung.format('DD.MM.YYYY')].leistungen.push(leistung);} 1165if(Reiseunterlagen.Verlauf.Gesamt[beginn_leistung.format('DD.MM.YYYY')]==undefined){Reiseunterlagen.Verlauf.Gesamt[beginn_leistung.format('DD.MM.YYYY')]=tag;} 1166Reiseunterlagen.Verlauf.Gesamt[beginn_leistung.format('DD.MM.YYYY')].leistungen.push(leistung);});Reiseunterlagen.print();},print:function(){Reiseunterlagen.Reiseleiter.get();Reiseunterlagen.Verlauf.VPArray=Object.values(Reiseunterlagen.Verlauf.VP);Reiseunterlagen.Verlauf.APArray=Object.values(Reiseunterlagen.Verlauf.AP);Reiseunterlagen.Verlauf.PArray=Object.values(Reiseunterlagen.Verlauf.P);Reiseunterlagen.Verlauf.GesamtArray=Object.values(Reiseunterlagen.Verlauf.Gesamt);Reiseunterlagen.Verlauf.VPArray.sort(function(a,b){return a.timestamp-b.timestamp;});Reiseunterlagen.Verlauf.APArray.sort(function(a,b){return a.timestamp-b.timestamp;});Reiseunterlagen.Verlauf.PArray.sort(function(a,b){return a.timestamp-b.timestamp;});Reiseunterlagen.Verlauf.GesamtArray.sort(function(a,b){return a.timestamp-b.timestamp;});if(Object.keys(Reiseunterlagen.Verlauf.VP).length>0){$('[data-reiseverlaeufe-target]').append(`<li><a href=""class="uk-accordion-title">${Object.values(Reiseunterlagen.Verlauf.VP)[0].leititel+' | '+Object.values(Reiseunterlagen.Verlauf.VP)[0].datum+' - '+Object.values(Reiseunterlagen.Verlauf.VP)[0].ende}</a><div class="uk-accordion-content"><div>${Reiseunterlagen.Programm.VP.reitext}</div><div data-leistungen-vp-target></div><ul data-reiseverlauf-vp-target class="reiseverlauf--gesamt"uk-accordion="multiple: true"></ul></div></li>`);} 1167if(Object.keys(Reiseunterlagen.Verlauf.P).length>0){$('[data-reiseverlaeufe-target]').append(`<li><!--<a href=""class="uk-accordion-title">${Object.values(Reiseunterlagen.Verlauf.P)[0].reititel}</a>--><a href=""class="uk-accordion-title">${Reiseunterlagen.Programm.P.titel}</a><div class="uk-accordion-content"><ul data-reiseverlauf-p-target class="reiseverlauf--gesamt"uk-accordion="multiple: true"></ul></div></li>`);} 1168if(Object.keys(Reiseunterlagen.Verlauf.AP).length>0){$('[data-reiseverlaeufe-target]').append(`<li><a href=""class="uk-accordion-title">${Object.values(Reiseunterlagen.Verlauf.AP)[0].leititel+' | '+Object.values(Reiseunterlagen.Verlauf.AP)[0].datum+' - '+Object.values(Reiseunterlagen.Verlauf.AP)[0].ende}</a><div class="uk-accordion-content"><div>${Reiseunterlagen.Programm.AP.reitext}</div><div data-leistungen-ap-target></div><ul data-reiseverlauf-ap-target class="reiseverlauf--gesamt"uk-accordion="multiple: true"></ul></div></li>`);} 1169let verlaufzuordnung={'VP':{source:Reiseunterlagen.Verlauf.VPArray,target:$('[data-reiseverlauf-vp-target]')},'AP':{source:Reiseunterlagen.Verlauf.APArray,target:$('[data-reiseverlauf-ap-target]')},'P':{source:Reiseunterlagen.Verlauf.PArray,target:$('[data-reiseverlauf-p-target]')}} 1170$.each(verlaufzuordnung,function(programm,verlauf){$.each(verlauf.s
1170ource,function(tag,content){let tag_leistungen="";let leistungen_processed=[];$.each(content.leistungen,function(i,leistung){if($.inArray(leistung.id,leistungen_processed)>-1){return true;} 1171let datum=leistung.anforderung=='H'?' '+leistung.datum+' - '+leistung.ende:' '+leistung.datum;tag_leistungen+=`<div class="item__leistung"><h4 class="leistung__title">${leistung.text.titel}</h4><div class="leistung__datum">${datum}</div><div>${leistung.text.beschreibung}</div>`;if(leistung.text.freifeld1!=''){tag_leistungen+=`<div>${leistung.text.freifeld1}</div>`;} 1172if(leistung.text.freifeld2!=''){tag_leistungen+=`<div>${leistung.text.freifeld2}</div>`;} 1173if(leistung.text.freifeld3!=''){tag_leistungen+=`<div>${leistung.text.freifeld3}</div>`;} 1174if(leistung.text.freifeld4!=''){tag_leistungen+=`<div>${leistung.text.freifeld4}</div>`;} 1175tag_leistungen+=`</div>`;leistungen_processed.push(leistung.id);});let ende_string='';if(content.ende!=undefined&&content.ende!=''){ende_string=' - '+content.ende;} 1176if(programm=='P'&&(Reiseunterlagen.isDuplicate('VP',content.datum)||Reiseunterlagen.isDuplicate('AP',content.datum))){return;} 1177if(programm=='AP'||programm=='VP'){verlauf.target.append(`<li class="reiseverlauf__item"><a href=""class="uk-accordion-title">${content.text.titel}</a><div class="uk-accordion-content"><h3>${content.text.titel}</h3><div>${content.text.revtext}</div><div>${content.text.poi}</div><div>${content.text.verpflegung}</div><div>${content.text.kilometer}</div><div>${content.text.hinweise}</div></div></li>`);$('[data-leistungen-'+programm+'-target]').append(tag_leistungen);} 1178else{verlauf.target.append(`<li class="reiseverlauf__item"><a href=""class="uk-accordion-title">${content.text.titel}</a><div class="uk-accordion-content"><div><strong>${content.datum}${ende_string}</strong> | ${content.anforderung}</div><h3>${content.text.titel}</h3><div>${content.text.revtext}</div><div>${content.text.poi}</div><div>${content.text.verpflegung}</div><div>${content.text.kilometer}</div><div>${content.text.hinweise}</div><div class="item__leistungen">${tag_leistungen}</div></div></li>`);}});});if($.trim($('[data-accordion-item="flugdaten"]').find('.uk-accordion-content').html())==''){$('[data-accordion-item="flugdaten"]').remove();}}} 1179var Suche={Options:{SEO_Search:false},init:function(){this.Filter.init();this.SiteSearch360.init();if($('body').hasClass('page-reisenliste-tpl--reise-finden')){Suche.Filter.BannerFilter.init();} 1180if($('body').hasClass('page-terminliste')){Suche.Filter.BannerFilter.init();Suche.Terminsuche.init();}},SiteSearch360:{init:function(){$('[data-ss360-menu-search-trigger]').on('click',function(e){e.preventDefault();if($('[data-ss360-menu-search]').hasClass('is--active')){$('[data-ss360-menu-search]').removeClass('is--active');} 1181else{$('[data-ss360-menu-search]').addClass('is--active');$('[data-ss360-menu-search]').find('.ss360__search-box').focus();}});$('[data-ss360-dialog-trigger]').on('click',function(e){e.preventDefault();if(Suche.SiteSearch360.hasResults()){$('#ss360-layer').show();} 1182else if(sessionStorage.getItem('ss360-last-search')!=null){SS360.showResults(sessionStorage.getItem('ss360-last-search'));} 1183else{SS360.showResults('Chamäleon');}});Suche.SiteSearch360.observe('#ss360-custom-searchbox');},hasResults:function(){const state=$('#ss360-layer').is(':empty')?false:true;return state;},observe:function(searchfield_id){$(document).on('change',searchfield_id,function(e){const searchword=$(this).val();console.log("Suchbegriff geändert zu",searchword);sessionStorage.setItem('ss360-last-search',searchword);});}},SEOSearch:{relocate:function(form){if(form.find('[name="REISEBEGINNVON"]').val()==''&&form.find('[name="REISEENDEBIS"]').val()==''){return false;} 1184else{return true;}},getURL:function(form){var seo_search_url='/reisen';var aktives_land=form.find('[data-suche-filter-land]').find('option:selected');if(aktives_land.length&&aktives_land.attr('value')!=''){aktives_land_seo=aktives_land.data('suche-filter-option').seoname;seo_search_url+='/'+aktives_land_seo;} 1185var aktive_reiseart=form.find('[data-suche-filter-reiseart]').find('option:selected');if(aktive_reiseart.length&&aktive_reiseart.attr('value')!=''){aktive_reiseart_seo=aktive_reiseart.data('suche-filter-option').seoname;seo_search_url+='/'+aktive_reiseart_seo;} 1186var aktives_merkmal=form.find('[data-suche-filter-merkmal]').find('option:selected');if(aktives_merkmal.length&&aktives_merkmal.attr('value')!=''){aktives_merkmal_seo=aktives_merkmal.data('suche-filter-option').seoname;seo_search_url+='/'+aktives_merkmal_seo;} 1187var aktive_merkmale=form.find('[data-suche-filter-checkbox]:checked');aktive_merkmale.each(function(){seo_search_url+='/'+$(this).data('suche-filter-checkbox').seoname;});return seo_search_url;}},Filter:{daterangepicker:"",suchmodus:"reise",init:function(){this.load();$(document).on('change','[data-suche-filter-option]',function(){$this=$(this);options=$this.data('suche-filter-option');if(options.typ=='land'){if($this.is(':checked')){if(options.rank=='child'){$this.parents('[data-suche-filter-land-wrap]').find('[data-suche-filter-option]').filter(function(){return $(this).data('suche-filter-option').rank=='parent';}
1187).prop('checked',false);} 1188else if(options.rank=='parent'){$this.parents('[data-suche-filter-land-wrap]').find('[data-suche-filter-option]').filter(function(){return $(this).data('suche-filter-option').rank=='child';}).prop('checked',false);}}} 1189$('[data-suche]').find('form').submit();});if(Suche.Options.SEO_Search){$('[data-suche]').on('submit','form',function(){sessionStorage.setItem('SearchForm',$(this).parents('[data-suche]').attr('class'));return Suche.SEOSearch.relocate($(this));});$('.form--searchbar').on('submit',function(){return Suche.SEOSearch.relocate($(this));});}},load:function(callback){if(window.location.href.indexOf('list.reisetermine.php')!=-1){Suche.Filter.suchmodus="termin";} 1190$('[data-suche]').each(function(){var $suchfilter=$(this);var mode=$suchfilter.data('suche');if($suchfilter.data('suche-query')!=""){var parameter="&"+$suchfilter.data('suche-query');parameter=parameter.replace(/t[nf]{1}=[\w\d\_\.]*\&?/i,'');parameter=parameter.replace(/array/i,'');} 1191else{parameter="";} 1192var template=mode=='offcanvas'?'_offcanvas':'';$.ajax({url:$.document_path+'/start/list.reisen.php?tn=_suchfilter&lang=de'+template+'&epp=1&encoding=iso-8859-1'+parameter,type:"post"}).done(function(resp){$suchfilter.html(resp);Suche.Filter.reselect($suchfilter,parameter);Suche.Filter.Marker.init();Base.initDomainClasses($suchfilter);if(Suche.Filter.suchmodus=="reise"){Suche.Filter.Marker.hide();} 1193if(Suche.Filter.BannerFilter.active==true){Suche.Filter.BannerFilter.markMers();Suche.Filter.BannerFilter.markLand();Suche.Filter.BannerFilter.markMonth();} 1194$('[name="REISEZEITRAUM"]').flatpickr({dateFormat:'d.m.Y',minDate:'today',disableMobile:true,allowInput:true,mode:"range",defaultDate:[$('[name="REISEBEGINNVON"]').val(),$('[name="REISEENDEBIS"]').val()]});let show_months=2;if(window.matchMedia('only screen and (max-width: 760px)').matches){show_months=1;} 1195$('[name="REISEZEITRAUM_2MON"]').flatpickr({dateFormat:'d.m.Y',minDate:'today',disableMobile:true,allowInput:true,mode:"range",showMonths:show_months,defaultDate:[$('[name="REISEBEGINNVON"]').val(),$('[name="REISEENDEBIS"]').val()]});$('[name="REISEZEITRAUM"]').change(function(){$('[name="REISEBEGINNVON"]').val($(this).val().substring(0,10));$('[name="REISEENDEBIS"]').val($(this).val().substring(15,25));});$('[name="REISEPERSONEN"]').change(function(){$('[name="REIMAXPERSONEN"]').val($(this).val());}).trigger('change');$('[name="REISEZEITRAUM_2MON"]').change(function(){$('[name="REISEBEGINNVON"]').val($(this).val().substring(0,10));$('[name="REISEENDEBIS"]').val($(this).val().substring(15,25));if($('[name="REISEBEGINNVON"]').val()!=''&&$('[name="REISEENDEBIS"]').val()!=''){}});$('[name="REISEBEGINNVON_TRIGGER"]').on('change',function(){$('[name="REISEBEGINNVON"]').val($(this).val());});$('[name="REISEENDEBIS_TRIGGER"]').on('change',function(){$('[name="REISEENDEBIS"]').val($(this).val());});$('[name="SUCHMODUS"]').change(function(){if($('[name="SUCHMODUS"]:checked').val()=="termin"){$suchfilter.find('form').attr('action',$.document_path+'/start/list.reisetermine.php');$suchfilter.find('form input[name="SHOWSUBPACKAGES"]').val('all');} 1196else{$suchfilter.find('form').attr('action',$.document_path+'/start/list.reisen.php');$suchfilter.find('form input[name="SHOWSUBPACKAGES"]').val('');}});$('[name="SUCHMODUS"]').on('click',function(){if($('[name="SUCHMODUS"]:checked').val()=="termin"){$suchfilter.find('form').attr('action',$.document_path+'/start/list.reisetermine.php');$suchfilter.find('form input[name="SHOWSUBPACKAGES"]').val('all');$suchfilter.find('form').submit();} 1197else{$suchfilter.find('form').attr('action',$.document_path+'/start/list.reisen.php');$suchfilter.find('form input[name="SHOWSUBPACKAGES"]').val('');$suchfilter.find('form').submit();}});if(Suche.Filter.suchmodus=="termin"){$('input#TERMINSUCHE').prop('checked',true).trigger('change');}});});},reselect:function($context,sParameter){oParams=$.getUrlVars(sParameter);if(oParams.lanid){oParams['lanid[]']=[oParams.lanid];} 1198if(oParams.katid){oParams['katid[]']=[oParams.katid];} 1199aGroups=['katid[]','lanid[]','merid[]','poiid[]','pogid[]'];$.each(aGroups,function(i,v){if(v in oParams){if($.isArray(oParams[v])){$.each(oParams[v],function(ind,val){$context.find('[name="'+v+'"][value="'+val+'"]').prop('checked',true);})} 1200else{$context.find('[name="'+v+'"][value="'+oParams[v]+'"]').prop('checked',true);}} 1201$('[name="REISEZEITRAUM"]').flatpickr();});if($('[name="lanid[]"]:checked').length>0){$('[name="lanid[]"]:checked').each(function(){var $drawer=$(this).parents('li'),$accordion=$drawer.parent(),iDrawerIndex=$accordion.find("li").index($drawer);if(!$drawer.hasClass('uk-open')){UIkit.accordion($accordion).toggle(iDrawerIndex,false);}})} 1202if($('[name="REISEPERSONEN"]').val()!=''){$('[name="REIMAXPERSONEN"]').val($('[name="REISEPERSONEN"]').val());}},initRegeln:function(){$('body').on('change','[name="katid[]"]',function(e){if($('[name="katid[]"]:checked').length==0){$(this).prop('checked',true)}});},Marker:{Laender:[],init:function(){this.checkState();this.find();this.setToggles();},checkState:function(){if($('[data-suche-filters]').is(':empty')){$('.
1202suche__filters-wrap').prop('hidden',false);} 1203else{$('.suche__filters-wrap').prop('hidden',false);}},find:function(){var dv=$('[data-suche]').find('[name=REISEBEGINNVON]');var datum_von={'id':dv.attr('name'),'name':dv.attr('value')};var db=$('[data-suche]').find('[name=REISEENDEBIS]');var datum_bis={'id':db.attr('name'),'name':db.attr('value')};if(datum_von.name!=''){Suche.Filter.Marker.addFilterButton(datum_von.id,datum_von.name+' - '+datum_bis.name,'datum','<i class="fas fa-plane-departure fa-xs"></i>');} 1204$('[data-suche]').find('input[type="checkbox"]:checked').each(function(){var $this=$(this);var type,icon="",id=$this.attr('id'),text=$this.data('suche-filter-option').name;switch($this.attr("name")){case"lanid[]":type='land';icon='<i class="far fa-globe-americas"></i>';Suche.Filter.Marker.Laender.push({id:id,text:text,type:type,icon:icon});break;case"katid[]":type='reiseart';icon='<i class="fas fa-filter fa-xs"></i>';break;case"merid[]":type='merkmal';icon='<i class="fas fa-tag fa-xs"></i>';break;case"poiid[]":type='land';icon='<i class="fas fa-map-marker fa-xs"></i>';break;case"pogid[]":type='poigruppe';icon='<i class="fas fa-map-marker fa-xs"></i>';break;default:} 1205$('[data-banner-filter-reiseziel]').val(Suche.Filter.Marker.Laender.map(item=>item.text).join(", "));});},addFilterButton:function(id,name,type,suffix){if(id!=null){$('[data-suche-filters]').append('<a href="#" data-suche-filter=\'{"id": "'+id+'", "type": "'+type+'", "name": "'+name+'"}\' class="suche__filter--button">'+suffix+' '+name+'</a>');}},setToggles:function(){$('[data-form-suche-reset]').on('click',function(e){$('[data-form-suche]')[0].reset();$('[name="REISEZEITRAUM_2MON"]').val('').trigger('change');$('[name="REISEPERSONEN"]').val('1').trigger('change');});$('[data-suche-filters]').on('click','[data-suche-filter]',function(e){e.preventDefault();var $this=$(this);var options=$this.data('suche-filter');var the_type=options.type;var the_id=options.id;switch(the_type){case"reiseart":$(this).remove();$('[data-suche]').find('#'+the_id).prop('checked',false);break;case"datum":$(this).remove();$('[name="REISEBEGINNVON"]').val("");$('[name="REISEENDEBIS"]').val("");$('[name="REISEZEITRAUM"]').val("");break;case"reimaxpersonen":$(this).remove();$('[name="REIMAXPERSONEN"]').val("");break;default:$(this).remove();$('[data-suche]').find('#'+the_id).prop('checked',false);} 1206$('[data-form-suche]').submit();});$('[data-form-suche] input[type="checkbox"]:not([name="katid[]"])').on('change',function(){if(!$(this).prop('checked')){$('[data-suche-filter*="'+$(this).attr('id')+'"]').remove();}});$('[data-form-suche] input[type="checkbox"][name="katid[]"]').on('change',function(){if($('[name="katid[]"]:checked').length!=1){if(!$(this).prop('checked')){$('[data-suche-filter*="'+$(this).attr('id')+'"]').remove();}}});},hide:function(){var oData=$('[data-reisenliste]').data('reisenliste');if(oData.lancode!=""&&oData.lancode!=undefined){$('[data-suche] [data-suche-laender]').hide();} 1207if(oData.katcode!=""&&oData.katcode!=undefined){}}},BannerFilter:{active:false,init:function(){Suche.Filter.BannerFilter.active=true;Suche.Filter.BannerFilter.initMonths();Suche.Filter.BannerFilter.initMers();Suche.Filter.BannerFilter.initLand();$('[data-trigger-bannersuche]').on('click',function(e){e.preventDefault();$('[data-form-suche]').submit();});$('[data-trigger-terminsuche]').on('click',function(e){e.preventDefault();$('#TERMINSUCHE').trigger('click');$('[data-suche-kats]').find('input[name="katid[]"][value="510"], input[name="katid[]"][value="512"]').prop('checked',true);$('[data-form-suche]').submit();});$('[data-trigger-reisesuche]').on('click',function(e){e.preventDefault();$('#REISESUCHE').trigger('click');$('[data-form-suche]').submit();});},initMonths:function(){var arMonths=[],dStartDate=moment().startOf('month').format('YYYY-MM-DD'),sCurYear=moment().format('YY');for(var i=0;i<=23;i++){var date=moment(dStartDate).add(i,'M');var data={'monthname':date.format('MMM'),'month':date.format('MM'),'year':date.format('YY'),'dates':{'start':(date<moment())?moment().format('DD.MM.YYYY'):date.format('DD.MM.YYYY'),'end':date.endOf('month').format('DD.MM.YYYY')}} 1208arMonths.push(data);} 1209$('[data-rlbannerfilter-months]').append('<div class="monthBar monthBar--year1"></div><div class="monthBar monthBar--year2 uk-visible@m"></div>');var iCurrentYear=moment().format('YY');$.each(arMonths,function(i,v){var sMonthName=(v.year==iCurrentYear)?v.monthname:v.monthname+" "+v.year;var $month="<div class='rlBannerFilter__box' data-rlbannerfilter-month='"+v.month+"' data-rlbannerfilter-year='"+v.year+"' data-rlbannerfilter-dates='"+JSON.stringify(v.dates)+"'>"+sMonthName+"</div>";if(i<=11){$('[data-rlbannerfilter-months] .monthBar--year1').append($month);} 1210else{$('[data-rlbannerfilter-months] .monthBar--year2').append($month);}});$('body').on('click','[data-rlbannerfilter-dates]',function(){var oDates=$(this).data('rlbannerfilter-dates');
1210$('[name="REISEBEGINNVON"]').val(oDates.start) 1211$('[name="REISEENDEBIS"]').val(oDates.end) 1212$('[data-form-suche]').submit();});},markMonth:function(){if($('[name="REISEBEGINNVON"]').val()!=""){var date=moment($('[name="REISEBEGINNVON"]').val(),'DD.MM.YYYY');var month=date.format("MM");var year=date.format("YY");$('[data-rlbannerfilter-month="'+month+'"][data-rlbannerfilter-year="'+year+'"]').addClass('active');}},initMers:function(){$('body').on('click','[data-rlbannerfilter-mer]',function(){var merid=$(this).data('rlbannerfilter-mer');if($('#MER_'+merid).length){$('#MER_'+merid).prop('checked',true)} 1213else{$('[data-form-suche]').append('<input type="hidden" name="merid[]" value="'+merid+'">')} 1214$('[data-form-suche]').submit();});},initLand:function(){$('body').on('click','[data-rlbannerfilter-lan]',function(){var lanid=$(this).data('rlbannerfilter-lan');let $land_input=$('#LAN_'+lanid);if($land_input.length){if($land_input.is(':checked')){$land_input.prop('checked',false);} 1215else{$land_input.prop('checked',true);}} 1216else{$('[data-form-suche]').append('<input type="hidden" name="lanid" value="'+lanid+'">')} 1217$('[data-form-suche]').submit();});},markMers:function(){$('[data-rlbannerfilter-mer]').each(function(){var merid=$(this).data('rlbannerfilter-mer');if($('#MER_'+merid).prop('checked')==true){$(this).addClass('active');}});},markLand:function(){$('[data-rlbannerfilter-lan]').each(function(){var lanid=$(this).data('rlbannerfilter-lan');if($('#LAN_'+lanid).prop('checked')==true){$(this).addClass('active');}});}}},Terminsuche:{$container:$('body'),init:function($context=$('body')){Suche.Terminsuche.$container=$context;Suche.Terminsuche.loadVakanzInfo();},loadVakanzInfo:function(){Suche.Terminsuche.$container.find('.terminliste__row').each(function(){var $this=$(this),sRequest=$this.data('termin-request'),sVakanz=$this.data('termin-vakanz'),sReiart=$this.data('reiart'),iMax=12;if(sRequest!=2){var sVakanzText=Base.kontingentToString(iMax,sVakanz,'reisedisplay');$this.find('.vakanzTarget').html(sVakanzText);} 1218else{$this.hide();}})},ExpMode:{marker:false,init:function(sExpMode){if(sExpMode==undefined){sExpMode="1";} 1219console.log("Expedienten Modus",sExpMode);Suche.Terminsuche.ExpMode.marker=sExpMode;$('#TERMINSUCHE [name="epp"]').val(500);$('#TERMINSUCHE').prepend('<input type="hidden" name="tn" value="_expReisen"/>');$('input#KAT_490').prop('checked',false);$('label[for="KAT_490"]').hide();var $submitButton=$('#TERMINSUCHE').find("button[type='submit']").data('mode',1).text('Suche - 1 Reisender');$submitButton.after('<button class="uk-button uk-button-primary uk-margin-top uk-width-1-1" type="submit" data-mode="2">Suche - 2 Reisende</button>');$('#TERMINSUCHE').on('click',"button[type='submit']",function(e){e.preventDefault();var sMode=$(this).data('mode');$('#TERMINSUCHE').prepend('<input type="hidden" name="expMode" value="'+sMode+'"/>');$('#TERMINSUCHE').prepend('<input type="hidden" name="VAKANZVON" value="'+sMode+'"/>');$('#TERMINSUCHE').prepend('<input type="hidden" name="VAKANZBIS" value="'+sMode+'"/>');switch(sMode){case 1:$('#REISEBEGINNVON').val(moment().format('DD.MM.YYYY'));$('#REISEENDEBIS').val(moment().add(365,'d').format('DD.MM.YYYY'));break;case 2:$('#REISEBEGINNVON').val(moment().format('DD.MM.YYYY'));$('#REISEENDEBIS').val(moment().add(98,'d').format('DD.MM.YYYY'));default:} 1220$('#TERMINSUCHE').submit();});$('#TERMINLISTE_HEADER').hide();$('#TERMINLISTE_FOOTER').hide() 1221$('body').on('click','.terminliste__row a',function(e){$row=$(this).parents('.terminliste__row');var reicode=$row.data('reicode');var reisebeginn=$row.data('vondat');});},removeInvalidTermine:function(sMode){$('.terminliste__row').each(function(){$this=$(this);switch(sMode){case"1":if($this.data('vakanz')!=1){$this.remove();} 1222break;case"2":if($this.data('vakanz')!=2){$this.remove();} 1223default:}})}}}} 1224var keywordSuche={init:function(){var $input=$('#KEYWORD_SEARCHBOX'),$list=$('[data-keywordliste]'),sSearchstring="";$input.keyup(function(e){if($(this).val().length>=3){keywordSuche.loadSuggestions($(this).val());}});$input.focus(function(e){if($(this).val().length>=3){keywordSuche.loadSuggestions($(this).val());}});$input.blur(function(){setTimeout(function(){$list.hide();},500);});},loadSuggestions:function(sSearchString){$.ajax({type:'post',url:$.document_path+'/start/jx_search_reisetermine.php',data:{searchValue:sSearchString},success:function(oResults){if(oResults!=""){oResults=$.parseJSON(oResults);console.log(oResults);var $list=$('[data-keywordliste]');$list.empty();$.each(oResults.mer,function(i,oMer){$list.append('<li class="poi"><a href="/start/list.reisen.php?MERID[]='+oMer.MERID+'"><i class="far fa-map-pin "></i><span>'+keywordSuche.higlightSearchString(sSearchString,oMer.MERBEZ)+'</span></a></li>')});$.each(oResults.poi,function(i,oPOI){$list.append('<li class="poi"><a href="/start/list.reisen.php?POIID='+oPOI.POIID+'"><i class="far fa-map-pin "></i><span>'+keywordSuche.higlightSearchString(sSearchString,oPOI.POIBEZ)+'</span></a></li>')});$.each(oResults.lan,function(i,oLand){$list.append('<li class="lan"><a href="/'+oLand.LANSEO+'"><i class="far fa-globe-africa"></i><span>'+keywordSuche.higlightSearchString(sSearchString,oLand.LANBEZ)+'</span></a></li>')});$.each(oResults.rei,function(i,oReise){$list.append('<li class="rei"><a href="'+oReise.REICANONICAL+'"><i class="far fa-route"></i><span>'+keywordSuche.higlightSearchString(sSearchString,oReise.REITITEL+" ("+oReise.REILAND+")")+'</span></a></li>')});if($list.find("li").length>=1){$list.slideDown();}else{$list.hide();}}else{console.log("Fehler im JSON");}}})},higlightSearchString:function(sSearchstring,sResultstring){sSearchstring=sSearchstring.replace(/(\s+)/,"(<[^>]+>)*$1(<[^>
1224]+>)*");var pattern=new RegExp("("+sSearchstring+")","gi");sResultstring=sResultstring.replace(pattern,"<mark>$1</mark>");sResultstring=sResultstring.replace(/(<mark>[^<>]*)((<[^>]+>)+)([^<>]*<\/mark>)/,"$1</mark>$2<mark>$4");return sResultstring;}} 1225var POI_Finder={Laender:[],init:function(){$('[data-poi-list]').each(function(){let $list=$(this);POI_Finder.get($list);});},get:function($list){let poi_laender=[];$list.find('[data-poi]').each(function(){let $poi=$(this);let options=$poi.data('poi');if($.inArray(options.land,poi_laender)==-1&&!(options.land==undefined||options.land=='')){poi_laender.push(options.land);}});this.Laender=poi_laender.sort(function(a,b){return a.localeCompare(b);});this.Select.create($list);},show:function($list,selected_land){$list.find('[data-poi]').removeClass('is--visible');$list.find('[data-poi]').filter(function(){return $(this).data('poi').land==selected_land;}).addClass('is--visible');UIkit.update();},Select:{create:function($list){$list_select=$('<select></select>',{class:'poi-land-select uk-select uk-width-1-2@s',title:'Land auswählen'}).insertBefore($list).wrap('<div class="uk-margin-medium-top"><div class="layoutRow__inner"></div></div>').on('change',function(){let $this=$(this);POI_Finder.show($list,$this.val());});$.each(POI_Finder.Laender,function(i,land){$list_select.append('<option value="'+land+'">'+land+'</option>');});$list_select.prepend('<option value="none" selected="selected">Reiseland auswählen</option>');}}};var Reisenliste={init:function(){Layout.init();this.ImgSwitch();this.noResults();this.loadSecondaryLayoutPage();this.ReiseFinden.init();},ImgSwitch:function(){$('[tos-reisenliste-bildmodus]').on('click keydown',function(e){e.preventDefault();if(!(e.type==='click'||e.key==='Enter'||e.key===' ')){return;} 1226let $this=$(this),$teaser=$this.parents('[tos-reiseteaser]'),sMode=$this.attr('tos-reisenliste-bildmodus');$this.siblings().removeClass('reisenliste__imgSwitch--active').focus();$this.addClass('reisenliste__imgSwitch--active');$teaser.toggleClass('map--active');});if(Base.isDomain('b2c')){}},noResults:function(){if($('[data-reisenliste]').data('reicount')==0){$('.reisenliste__liste').hide();$('.reisenliste__noResults').removeClass('none');}},loadSecondaryLayoutPage(){if($('body').hasClass('page-reisenliste--lanid')&&$('[data-secondary-layout-page]').length){let lancode=$('main').data('reisenliste').lancode;$.ajax({url:'/start/form.layoutdisplay.php',type:'post',data:{LAYCODE:'CHA-L-'+lancode+'-02',tn:'_tosf'}}).done(function(resp){let targetElement=$('[data-secondary-layout-page]');targetElement.html(resp);Layout.Videoelements.init();Layout.Lightbox.init();Layout.addDotnavShadow();targetElement.css('padding-top','70px');}).fail(function(jqXHR,textStatus,errorThrown){if(jqXHR.status===404){console.error("Requested page not found. [404]");} 1227else{console.error("Other error: "+textStatus);}});;}},ReiseFinden:{init:function(){this.FilterButton.init();},FilterButton:{init:function(){if(!$('body').hasClass('page-reisenliste-tpl--reise-finden')){$('.button--sticky-filter').remove();return;} 1228UIkit.scrollspy('.pageBanner',{repeat:true});UIkit.util.on('.pageBanner','inview',function(){$('.button--sticky-filter').fadeOut();});UIkit.util.on('.pageBanner','outview',function(){$('.button--sticky-filter').fadeIn();});}}}} 1229var Reisedisplay={oReiseData:{},init:function(){var reisedisplay=$('[data-reise]') 1230Reisedisplay.oReiseData=reisedisplay.data('reise') 1231Base.Berater.setEstosOptions($('[data-estos]')) 1232if(!reisedisplay.length){return} 1233if(typeof oMerkmale!='undefined'&&typeof oMerkmale.Kundenlogin!='undefined'){if('VISUMDEAK'in oMerkmale.Kundenlogin){$('.laenderinfos__zusatzinfo--visum').remove()}} 1234$('a[href*="https://www.bahnanreise.de"]').attr('target','_blank') 1235if($('body').hasClass('page-template-reise-baustein')){Reisedisplay.Reisebausteine.init()}else if($('body').hasClass('page-template-reise-zusatz')){Reisedisplay.Reisebausteine.abPreis()}else{this.Tabs.init() 1236this.Merkmale.check() 1237Layout.init() 1238Terminliste.init() 1239Reisedisplay.openRequest() 1240this.Scrollytelling.init() 1241if(window.matchMedia('max-width: 959px')){UIkit.sticky('.reise__footer--mobile',{animation:'uk-animation-sli
1241de-bottom',})} 1242$('[data-copy]').each(function(){let $this=$(this) 1243let options=$this.data('copy') 1244$(options.target).replaceWith($this.clone())}) 1245const reise_infos=$('[data-reise]').data('reise') 1246Reisedisplay.AehnlicheReisen.load($('#REI_SIMILAR_TARGET'),reise_infos.id,reise_infos.land,reise_infos.kontinent)}},Bannerbox:{init:function(){var sCurrentVal=$('[data-banner-dateSelect]').data('value') 1247$('[data-banner-dateSelect]').append('<option value="">Termin wählen</option>') 1248$.each(Terminliste.Termine,function(i,v){var data={reicode:v.reicode,reiseo:v.reiseo,von:v.von,bis:v.bis,preis:v.preis,vakanz:v.vakanz,request:v.request,},is_disabled=0==v.vakanz||21==v.request?'disabled':'',bSelected=sCurrentVal==v.von?'selected':'' 1249if(v.request==2){return true;} 1250if(v.vakanz>0){$('[data-banner-dateSelect]').append("<option value='"+ 1251v.von+"' "+ 1252bSelected+" data-rei='"+ 1253JSON.stringify(data)+"' data-vakanz='"+ 1254v.vakanz+"' "+ 1255is_disabled+" data-request='"+ 1256v.request+"'>"+ 1257v.von+' – '+ 1258v.bis+'</option>')}}) 1259$('[data-banner-dateSelect]').trigger('chosen:updated') 1260Reisedisplay.selectTermin() 1261if($('[data-banner-dateSelect]').val()!=''){let $selected_termin=$('[data-reisetermin-vondat="'+ 1262$('[data-banner-dateSelect]').val()+'"]') 1263var reicode_termin=$selected_termin.data('reisetermin-reicode') 1264if($selected_termin.data('reisetermin-bemerkung')&&$selected_termin.data('reisetermin-bemerkung').indexOf('[to3]')>-1){$('[data-rd-buchen-button]').each(function(){let $this=$(this) 1265let mode=$this.data('rd-buchen-button') 1266$this.attr('href','https://to3dev.tourone.de/reise/'+ 1267reicode_termin+'/buchung/'+ 1268$('[data-banner-dateSelect]').val()).attr('target','_blank')})} 1269else{if($selected_termin.data('reisetermin-request')==16){$('body').addClass('reise--mode-vormerken') 1270$('[data-rd-buchen-button="angebot"]').parent().show()}else{$('body').removeClass('reise--mode-vormerken') 1271$('[data-rd-buchen-button="angebot"]').parent().hide()} 1272$('[data-rd-buchen-button]').each(function(){let $this=$(this) 1273let mode=$this.data('rd-buchen-button') 1274$this.attr('href','/start/form.reiserequest.php?REICODE='+ 1275reicode_termin+'&ANZAHL_ERWACHSENE=2&REISEBEGINN='+ 1276$('[data-banner-dateSelect]').val()+'&POSTED0='+ 1277mode).attr('target','_blank')})}}},},updatePreisInfo:function(){if($('[data-banner-dateSelect] option:selected').length&&$('[data-banner-dateSelect] option:selected').data('rei')){window.dataLayer.push({ReisePreis:$('[data-banner-dateSelect] option:selected').data('rei').preis,}) 1278return $('[data-banner-dateSelect] option:selected').data('rei').preis.toLocaleString()}else{var iPreis=Math.min.apply(Math,Terminliste.Preise) 1279if(iPreis=='Infinity'){iPreis=$('main').data('reise').abPreis} 1280window.dataLayer.push({ReisePreis:iPreis,}) 1281return iPreis.toLocaleString()}},Tabs:{init:function(){this.cleanTabs() 1282Reisedisplay.Tabs.Hash.init() 1283$('[data-tabs-nav]').on('click','a',function(){let tab=$(this).parent('li').data('tab') 1284$('html, body').animate({scrollTop:$('.reisedisplay').offset().top,},100)})},Hash:{init:function(){$('.reisedisplay__navbar').find('[data-tab]').on('click',function(){window.location.hash=$(this).data('tab')}) 1285$('[data-tabs-nav-select]').change(function(){window.location.hash=$(this).val()}) 1286$('.reise__tabs').find('h6').attr('uk-switcher-item','next').addClass('uk-button uk-button-primary')},onChange:function(){if($('[data-tabs-nav]').length<1){return} 1287var hash=window.location.hash.substring(1) 1288if(hash!=''){var tab_index=$('.reisedisplay__navbar').find('[data-tab="'+hash+'"]').index() 1289if(hash=='termine'){$('.reise__footer--mobile').hide()}else{$('.reise__footer--mobile').show()} 1290if(tab_index>0){$('[data-section="aehnliche-reisen"]').hide()}else{$('[data-section="aehnliche-reisen"]').show()} 1291if(tab_index>-1){UIkit.switcher('[data-tabs-nav]').show(tab_index) 1292$('html, body').animate({scrollTop:$('.mainContent').offset().top,},100)}else{return true}}else{UIkit.switcher('[data-tabs-nav]').show(0)}},},cleanTabs:function(){var tabs=$('.reisedisplay__tabs').find('[data-tab]') 1293tabs.each(function(){var tab=$(this) 1294var tab_name=tab.data('tab') 1295if(tab_name=='zusatzprogramme'){if(!tab.find('[tos-reicode]').length){$('.reisedisplay__navbar').find('[data-tab="'+tab_name+'"]').hide() 1296$('[data-tabs-nav-select]').find('option[value="'+tab_name+'"]').remove()}} 1297if(tab_name=='reviews'){if(!tab.find('.reiseReview').length){$('.reisedisplay__navbar').find('[data-tab="'+tab_name+'"]').hide() 1298$('[data-tabs-nav-select]').find('option[value="'+tab_name+'"]').remove()}} 1299if(tab_name=='covid-19'){if(!tab.find('[data-tab-content]').text().trim().length){$('.reisedisplay__navbar').find('[data-tab="'+tab_name+'"]').hide() 1300$('[data-tabs-nav-select]').find('option[value="'+tab_name+'"]').remove()}}})},},selectTermin:function(){$('body').on('change','[data-reidateselect]',function(e){e.preventDefault() 1301var $this=$(this),data,options,pathname 1302if($this.is('select')){data=$(this).find('option:selected').data('rei') 1303pathname=data.reiseo 1304window.location.href=$.document_path+ 1305pathname+'?REISEBEGINN='+ 1306data.von+'&REISEENDE='+ 1307data.bis+''}else{data=$(this).data('reidateselect') 1308pathname=data.reiseo 1309window.location.href=$.document_path+ 1310pathname+'?REISEBEGINN='+ 1311data.von+'&REISEENDE='+ 1312data.bis+'#reisedetails'}})},openRequest:function(){$('body').on('click','[data-reirequest]',function(e){e.preventDefault() 1313var $this=$(this),data=$(this).data('reirequest'),$form=$('[data-requestform]') 1314$form.find('input[name="REICODE"]').val(data.reicode) 1315$form.find('input[name="REISEBEGINN"]').val(data.von) 1316$form.find('input[name="POSTED0"]').val(data.mode) 1317if($this.parents('li').data('reisetermin-vakanz')==1){$form.find('input[name="ANZAHL_ERWACHSENE"]').val(1)} 1318$form.submit()})},AehnlicheReisen:{load:function($target,self,land,fallback){$.ajax({type:'GET',url:$.document_path+'/start/list.reisen.php',data:{epp:3,encoding:'ISO-8859-15',tn:'_tosf',SHOWSUBPACKAGES:'masterornull',sortby_xml:'RAND()',lanid:land,'EXCLUDEDREIID[]':self,},}).done(function(land_data){if($(land_data).find('.reiseTeaser').length<3){fallback=fallback==61?54:fallback 1319const benoetigte_reisen=3-$(land_data).find('.reiseTeaser').length;console.log('zu wenige treffer > abfrage nach kontinent') 1320$.ajax({type:'GET',url:$.document_path+'/start/list.reisen.php',data:{epp:benoetigte_reisen,encoding:'ISO-8859-15',tn:'_tosf',SHOWSUBPACKAGES:'masterornull',sortby_xml:'RAND()',lanid:fallback,'EXCLUDEDREIID[]':self,},}).done(function(kontinent_data){$target.html(land_data) 1321$target.append(kontinent_data)})}else{$target.html(land_data)}})},},Reisebausteine:{init:function(){Reisedisplay.Reisebausteine.initAnchorMenu() 1322Reisedisplay.Reisebausteine.abPreis() 1323$('[data-rd-buchen-button]').attr('href','/start/form.layoutdisplay.php?LAYCODE=CHA-RBS-Anfrage-01')},initAnchorMenu:function(){$('[data-menu-titel]').each(function(){$('#RB_Anchormenu').append('<li><a href="#'+ 1324$(this).attr('id')+'">'+ 1325$(this).data('menu-titel')+'</a></li>')}) 1326Base.AnchorSmoothScrolling($('#RB_Anchormenu'))},abPreis:function(){var arPreise=[] 1327$('[data-reisetermin]').not('.vakanz-full').each(function(){arPreise.push($(this).data('reisetermin-preis').toString().replace('.',''))}) 1328if(arPreise.length!=0&&$('[data-banner-dateselect]').val()==''){$('[data-banner-datepreis]').html('ab '+
1329Math.min.apply(Math,arPreise).toLocaleString()+' '+ 1330$.currency_symbol)}else{}},},Merkmale:{check:function(){if(typeof oMerkmale!=='undefined'&&typeof oMerkmale.Optionals!=='undefined'){if(oMerkmale.Optionals[7607]!==undefined){$('body').addClass('reise--en') 1331$('[data-tabs-nav-select]').find('option[value="unterkuenfte"]').remove() 1332$('[data-tabs-nav]').find('li[data-tab="unterkuenfte"]').remove() 1333$('.reisedisplay__tabs').find('[data-tab="unterkuenfte"]').remove()}}},},Scrollytelling:{init:function(){this.cleanVerlaufText()},cleanVerlaufText:function(){$('.poi_marker').filter(function(){return!$(this).children('.uk-drop').length>0}).prev('strong').each(function(){let htmlContent=$(this).html() 1334let cleanHtml=htmlContent.trim() 1335$(this).html(cleanHtml)})},},} 1336var Saisontabelle={init:function(){if($('[tos-saisontabelle]').length){var oReisedaten=$('[data-reise]').data('reise');var $container=$('[tos-saisontabelle]');var oParams={REICODE:Reisedisplay.oReiseData["code"],'type':'Saison','zuschlaege':1} 1337$container.load($.document_path+'/start/jx_ajax.php?cube=jx_preistabelle',oParams,function(){});}}} 1338var Terminliste={Termine:{},Texte:{},Filter:{time:{},minDate:'today',maxDate:'',},Preise:[],$Liste:'',init:function(){if(location.href.indexOf('preventAPI')>-1){this.load()}},process:function(){Terminliste.Texte=$('[data-terminliste]').data('texte') 1339var arTermineById=[] 1340$('[data-reisetermin]').each(function(){var $this=$(this),von=$this.data('reisetermin-vondat'),vonDate=moment(von,'DD.MM.YYYY'),bis=$this.data('reisetermin-bisdat'),year=$this.data('reisetermin-year'),month=$this.data('reisetermin-month'),reicode=$this.data('reisetermin-reicode'),reiseo=$this.data('reisetermin-seo'),request=$this.data('reisetermin-request'),id=$this.data('reisetermin-id'),preis=$this.data('reisetermin-preis'),termindauer=$this.data('reisetermin-dauer'),vakanz=$this.data('reisetermin-vakanz') 1341$(this).find('.terminliste__terminDauer').html(parseInt(termindauer)+1) 1342Terminliste.Vakanz.checkVakanz($this) 1343if(vonDate<moment()){$this.hide()}else{var termin={von:von,bis:bis,reicode:reicode,reiseo:reiseo,preis:preis,vakanz:vakanz,request:request,} 1344var termin_iso=von.split('.').reverse().join('.') 1345if(id in arTermineById){$(this).remove()}else{arTermineById[id]=termin 1346Terminliste.Termine[termin_iso]=termin 1347preis=preis.toString().replace('.','') 1348if(Terminliste.Preise.indexOf(preis)==-1){Terminliste.Preise.push(preis)}} 1349if($this.find('[data-reisetermin-subhinweis]').length){Terminliste.showHinweisMarker($this)}} 1350$this.find('.ezzuschlag').html($('#EZZUSCHLAG').html()) 1351let merkmalcodes=$.trim($this.data('reisetermin-merkmalcodes')) 1352let termin_merkmale=merkmalcodes.split(' ') 1353if(termin_merkmale.includes('Business')){$this.addClass('inkl-flug-bc')} 1354if(termin_merkmale.includes('Economy')){$this.addClass('inkl-flug-ec')} 1355if(termin_merkmale.includes('Premium-Economy')){$this.addClass('inkl-flug-pe')}}) 1356if(Base.isDomain('b2c')||Base.isDomain('agt')){Terminliste.B2C.init()}else{} 1357Terminliste.initList() 1358Terminliste.initDetailbox() 1359if(!$.isEmptyObject(Terminliste.Filter)){Terminliste.initFilter()} 1360if($('body').hasClass('page-template-reise-zusatz')||$('body').hasClass('page-template-reise-baustein')||$('body').hasClass('page-template-reise-standard')){setTimeout(function(){Reisedisplay.Reisebausteine.abPreis()},500)}},load:function(){const $terminliste=$('[data-terminliste]') 1361const options=$terminliste.data('terminliste') 1362$terminliste.html('<div class="terminliste__loading">'+'<i class="fas fa-circle-notch fa-spin fa-2x"></i>'+'<div>Termine werden geladen</div>'+'</div>') 1363$.ajax({url:'/start/jx_ajax.php',type:'get',data:{cube:'jx_reise',cmd:'load.all.pakete',REICODE:options.reisecode,},}).done(function(resp){$terminliste.html(resp) 1364Terminliste.process() 1365Terminliste.JSONLD.init() 1366Reisedisplay.Bannerbox.init() 1367Base.initDomainClasses() 1368$('[data-banner-datepreis]').html(Reisedisplay.updatePreisInfo()+' '+$.currency_symbol)}).fail(function(error){console.error('request failed',error)})},JSONLD:{init:function(){const $reise=$('[data-reise]') 1369const reise_options=$reise.data('reise') 1370const jsonLdData={'@context':'https://schema.org','@type':'TouristTrip','@id':'chamaeleon-reise-'+reise_options.code+'-'+reise_options.id,name:reise_options.seo,offers:[],}
1371for(const key in Terminliste.Termine){const termin=Terminliste.Termine[key] 1372const vonParts=termin.von.split('.') 1373const bisParts=termin.bis.split('.') 1374const vonISO=vonParts[2]+'-'+vonParts[1]+'-'+vonParts[0] 1375const bisISO=bisParts[2]+'-'+bisParts[1]+'-'+bisParts[0] 1376const availability=termin.vakanz>0?'https://schema.org/InStock':'https://schema.org/SoldOut' 1377const offer={'@type':'Offer',price:termin.preis,priceCurrency:'EUR',availability:availability,availabilityStarts:vonISO,availabilityEnds:bisISO,name:termin.von+' - '+termin.bis,url:reise_options.canonical+'?REISEBEGINN='+termin.von+'&REISEENDE='+termin.bis,} 1378jsonLdData.offers.push(offer)} 1379const scriptTag=document.createElement('script') 1380scriptTag.type='application/ld+json' 1381scriptTag.textContent=JSON.stringify(jsonLdData,null,2) 1382document.head.appendChild(scriptTag)},},initList:function(){var oListOptions={valueNames:['dauer',{data:['reisetermin-vondattimestamp','reisetermin-vakanz','reisetermin-vakanz2','reisetermin-preis',],},],} 1383Terminliste.$Liste=new List('TERMINLISTE',oListOptions) 1384Terminliste.$Liste.sort('reisetermin-vondattimestamp',{order:'asc',})},initFilter:function(){var $container=$('[data-terminliste-filter]') 1385var $datepicker 1386$.each(Terminliste.Filter.time,function(i,v){$('[data-terminliste-yearfilter]').append('<option value="'+i+'">'+i+'</option>')}) 1387$('[data-terminliste-yearfilter]').trigger('chosen:updated') 1388$('[data-terminliste-yearfilter]').change(function(){if($(this).val()!=''){Terminliste.filterList('year',$(this).val()) 1389$datepicker.clear()}}) 1390Terminliste.Filter.minDate=$('[data-reisetermin]').first().data('reisetermin-vondat') 1391Terminliste.Filter.maxDate=$('[data-reisetermin]').last().data('reisetermin-vondat') 1392var iShowMonths=2 1393if(Base.cssBreakpoint('<s')){iShowMonths=1} 1394$datepicker=$('[data-terminliste-datefilter]').flatpickr({dateFormat:'d.m.Y',minDate:Terminliste.Filter.minDate,maxDate:Terminliste.Filter.maxDate,disableMobile:true,allowInput:true,mode:'range',showMonths:iShowMonths,parseDate:function(dateStr){let parsedFormat=moment.parseFormat(dateStr.trim()) 1395let parsedDate=moment(dateStr.trim(),parsedFormat,'de') 1396if(parsedDate.isValid()){return parsedDate.toDate()}},onChange:function(selectedDates,dateStr,instance){if(selectedDates.length>0){$(instance.element).addClass('has--values')}else{$(instance.element).removeClass('has--values') 1397Terminliste.$Liste.filter()} 1398let dateParts=dateStr.includes('bis')?dateStr.split(' bis '):dateStr.split('-')},onClose:function(selectedDates,dateStr,instance){if(selectedDates.length>0){Terminliste.filterList('dates',{start:selectedDates[0],end:selectedDates[1],})}},}) 1399$('[data-flatpickr-clear]').on('click',function(e){e.preventDefault() 1400$datepicker.clear() 1401Terminliste.$Liste.filter()}) 1402$container.slideDown() 1403$('[data-terminliste-vakanzfilter-toggle]').on('change',function(){let $this=$(this) 1404if($this.is(':checked')){$this.parents('.layoutRow').find('[data-terminliste]').removeClass('show--vakanz-full')}else{$this.parents('.layoutRow').find('[data-terminliste]').addClass('show--vakanz-full') 1405UIkit.update()}})},filterList:function(sMode,Filter){Terminliste.$Liste.filter() 1406switch(sMode){case'year':Terminliste.$Liste.filter(function(item){if(item.values()['reisetermin-year']==Filter){return true}else{return false}}) 1407break 1408case'dates':Terminliste.$Liste.filter(function(item){if(Filter.start===undefined||Filter.end===undefined){return} 1409var startTS=moment(Filter.start,'DD.MM.YYYY').format('X'),endTS=moment(Filter.end,'DD.MM.YYYY').format('X') 1410if(item.values()['reisetermin-vondattimestamp']>=startTS&&item.values()['reisetermin-vondattimestamp']<=endTS){return true}else{return false}}) 1411default:}},initDetailbox:function(){$('[data-reisetermin]').on('mouseenter click keydown',function(e){if(e.type==='keydown'&&!(e.keyCode==13||e.keyCode==32)){return} 1412$('#TERMINDETAILS').empty() 1413$('#TERMINDETAILS').append($(this).find('[data-reisetermin-details]').clone())}) 1414$('#TERMINDETAILS').on('click','[data-reisetermin-details] [uk-close]',function(){$(this).parent().remove()})},showHinweisMarker:function($termin){var sHinweis=$termin.find('[data-reisetermin-subhinweis]').text() 1415$termin.find('.terminInfoMarker').append('<i class="fa fa-info-circle" title="'+sHinweis+'"></i>')},Vakanz:{checkVakanz:function($termin){var vakanzG=$termin.data('reisetermin-vakanz'),vakanzDZ=$termin.data('reisetermin-vakanz2'),vakanzEZ=$termin.data('reisetermin-vakanz3'),requestG=$termin.data('reisetermin-request'),requestDZ=$termin.data('reisetermin-request2'),requestEZ=$termin.data('reisetermin-request3'),bAufRequest=false 1416if(requestDZ==2||vakanzDZ<=0){$termin.find('.terminliste__vakanzDZ').html('0') 1417vakanzDZ=0} 1418if(requestEZ==2||vakanzEZ<=0){$termin.find('.terminliste__vakanzEZ').html('0') 1419vakanzEZ=0} 1420if(vakanzEZ==0){$termin.find('[data-termin-vakanz-ez]').html('Einzelzimmer auf Anfrage')} 1421if(requestG==2||requestG==33){$termin.addClass('status-stop').remove() 1422return 0} 1423if(vakanzG<=0||requestG==21){$termin.addClass('vakanz-full') 1424return 0} 1425if(requestG==16){$termin.addClass('termin-vorgemerkt')
1426$termin.find('[data-reisetermin-details]').addClass('termin-vorgemerkt') 1427return 0} 1428if(requestDZ==2&&requestEZ==2){return 0} 1429if(vakanzG<=1&&vakanzEZ<=0){return 0} 1430var vakanzGesamt=Number(vakanzDZ)+Number(vakanzEZ) 1431if(vakanzGesamt==0){return 0}else{$termin.find('.terminliste__vakanzDZ').html(Math.floor(Number(vakanzDZ)/2)) 1432Terminliste.Vakanz.markTermin($termin,vakanzGesamt)}},markTermin:function($termin,iVakanz){},},B2C:{init:function(){$('#TERMINLISTE').prepend('<div class="termninliste__filterB2C uk-button-group">'+'<span class="uk-button uk-button-primary togglePreisFarbskala">Preis Farbskala</span>'+'<span class="sort uk-button uk-button-default uk-button-small" data-sort="reisetermin-vondattimestamp">Sort. nach Datum</span>'+'<span class="sort uk-button uk-button-default uk-button-small" data-sort="reisetermin-preis">Sort. nach Preis</span>'+'<span class="sort uk-button uk-button-default uk-button-small" data-sort="reisetermin-vakanz2">Sort. nach Vakanz DZ</span>'+'<span class="sort uk-button uk-button-default uk-button-small" data-sort="reisetermin-vakanz3">Sort. nach Vakanz EZ</span>'+'</div>') 1433Terminliste.B2C.initPreisFarbSkala() 1434$('body').on('click','.togglePreisFarbskala',function(){$('#TERMINLISTE').toggleClass('preisfarbskala')})},initPreisFarbSkala:function(){$.each(Terminliste.Preise,function(i,v){$('.terminliste__termin[data-reisetermin-preis="'+v+'"]').addClass('terminPreisSkala_'+i)})},},} 1435var Merkzettel={init:function(){$('[data-merkzettel-link-parent]').on('click',function(e){e.preventDefault();$(this).find('[data-merkzettel-link]').trigger('click');});$('[data-merkzettel-link]').on('click',function(e){e.preventDefault();e.stopPropagation();var $this=$(this);var options=$this.data('merkzettel-link');if($this.attr('data-mz-state')=='1'){$this.attr('data-mz-state','0');$('[data-merkzettel-link*="'+options.id+'"]').attr('data-mz-state','0');Merkzettel.remove(options.id,options.title);} 1436else{$this.attr('data-mz-state','1');$('[data-merkzettel-link*="'+options.id+'"]').attr('data-mz-state','1');Merkzettel.add(options.id,options.title);}});if($("body").hasClass("page-reisenliste-tpl--merkzettel")||$('[tos-mz-share]').length){Merkzettel.shareLink();}},initFromDB:function(){$.ajax({type:'get',url:$.document_path+'/src/cube/jx_merkzettel.php',data:{cmd:'initFromDb',modus:'html',},dataType:'html',}).done(function(data){$('.merkzettel-info').replaceWith(data);});},add:function(id,title){$.ajax({type:'get',url:$.document_path+'/src/cube/jx_merkzettel.php',data:{cmd:'add',REIID:id,modus:'html'},dataType:'html',}).done(function(data){$('.merkzettel-info').replaceWith(data);Base.ChangeMe.init();if(Base.getKundenModus()=='Agentur'){UIkit.notification("<i class='fa-solid fa-star tos-font-h2 uk-margin-small-right'></i><span>Die Reise "+title+" wurde auf dem Angebotszettel gespeichert.</span>",{status:"merkzettel",timeout:5000});} 1437else{UIkit.notification("<i class='fal fa-heart tos-font-h2 uk-margin-small-right'></i><span>Die Reise "+title+" wurde auf dem Merkzettel gespeichert.</span>",{status:"merkzettel",timeout:5000});}});},remove:function(id,title){$.ajax({type:'get',url:$.document_path+'/src/cube/jx_merkzettel.php',data:{cmd:'remove',REIID:id,modus:'html'},dataType:'html',}).done(function(data){$('.merkzettel-info').replaceWith(data);Base.ChangeMe.init();if(Base.getKundenModus()=='Agentur'){UIkit.notification("<i class='fa-solid fa-star tos-font-h2 uk-margin-small-right'></i><span>Die Reise "+title+" wurde vom Angebotszettel entfernt.</span>",{timeout:750,status:"merkzettel"});} 1438else{UIkit.notification("<i class='fal fa-heart tos-font-h2 uk-margin-small-right'></i><span>Die Reise "+title+" wurde vom Merkzettel entfernt.</span>",{timeout:750,status:"merkzettel"});} 1439if($("body").hasClass("page-reisenliste-tpl--merkzettel")){window.location.reload();}});},shareLink:function(){$('[tos-mz-share]').each(function(){$(this).click(function(e){e.preventDefault();$('#MZSHARELINK').select();try{var successful=document.execCommand('copy');var msg=successful?'successful':'unsuccessful';console.log('Copying text command was '+msg);if(successful){UIkit.notification("<div class='tos-font-h4 uk-text-center'>Link kopiert!</div>",{timeout:750});} 1440else{UIkit.notification("<div class='tos-font-h4 uk-text-center'>Kopieren nicht mö
1440glich.</div><div>Drücken Sie Strg+C (oder Cmd + C auf Macs) um den Link zu kopieren</div>",{timeout:750});}}catch(err){}});});}};$root='https://'+window.location.hostname;var rbFinder={sMapContainerID:"RBFINDER_MAP",sSearchBoxID:"RBFINDER_SEARCHBOX",sListContainerID:"RBFINDER_LIST",sListItemSelector:".selectTrigger",sIconLocationUrl:$root+"/html/img/gmap/location.png",oIconAgtUrl:{0:$root+"/html/img/gmap/agt0_alt2.png",1:$root+"/html/img/gmap/agt1_alt2.png"},oIconAgtHighlightUrl:{0:$root+"/html/img/gmap/agt0.png",1:$root+"/html/img/gmap/agt1.png"},oIconAgtHoverUrl:{0:$root+"/html/img/gmap/agt0_alt3.png",1:$root+"/html/img/gmap/agt1_alt3.png"},sLoadAnimation:'<div class="tos-spinner"></div>',aMapStyles:[{"featureType":"all","elementType":"all","stylers":[{"saturation":"30"},{"lightness":"20"},{"gamma":"1"}]},{"featureType":"administrative","elementType":"all","stylers":[{"visibility":"simplified"}]},{"featureType":"landscape","elementType":"geometry","stylers":[{"visibility":"simplified"},{"hue":"#0065ff"},{"saturation":"-40"},{"lightness":"10"},{"weight":"1"}]},{"featureType":"landscape.natural","elementType":"all","stylers":[{"visibility":"simplified"},{"hue":"#00ff36"},{"saturation":"10"},{"lightness":"-10"},{"gamma":"1.5"}]},{"featureType":"poi","elementType":"all","stylers":[{"visibility":"off"}]},{"featureType":"poi","elementType":"geometry","stylers":[{"visibility":"simplified"},{"color":"#fcfcfc"}]},{"featureType":"road","elementType":"all","stylers":[{"visibility":"on"}]},{"featureType":"road.highway","elementType":"geometry","stylers":[{"visibility":"simplified"},{"color":"#dddddd"}]},{"featureType":"road.arterial","elementType":"geometry","stylers":[{"visibility":"simplified"},{"color":"#dddddd"}]},{"featureType":"road.local","elementType":"geometry","stylers":[{"visibility":"simplified"},{"color":"#eeeeee"}]},{"featureType":"water","elementType":"geometry","stylers":[{"visibility":"simplified"},{"hue":"#007cff"},{"saturation":"-30"},{"lightness":"10"}]}],oIconSettings:"",oIconHighlightSettings:"",oMap:"",aAgtMarker:[],oBounds:"",oCenter:"",init:function(){rbFinder.fnCreateMap();rbFinder.oIconSettings={origin:new google.maps.Point(0,0),};rbFinder.oIconHighlightSettings={origin:new google.maps.Point(0,0),};},fnCreateMap:function(){rbFinder.oMap=new google.maps.Map(document.getElementById(rbFinder.sMapContainerID),{center:{lat:52.523405,lng:13.4114},zoom:15,disableDefaultUI:true});if(!rbFinder.aMapStyles.length==0){rbFinder.oMap.mapTypeControlOptions={mapTypeIds:['Styled']};rbFinder.oMap.mapTypeId='Styled';var styledMapType=new google.maps.StyledMapType(rbFinder.aMapStyles,{name:'Styled'});rbFinder.oMap.mapTypes.set('Styled',styledMapType);} 1441rbFinder.fnGetUserLocation();rbFinder.fnInitSearchBox();},fnGetUserLocation:function(){if(navigator.geolocation){navigator.geolocation.getCurrentPosition(function(position){var pos={lat:position.coords.latitude,lng:position.coords.longitude};rbFinder.oMap.setCenter(pos);$.ajax({type:'get',url:'https://maps.googleapis.com/maps/api/geocode/json',data:{latlng:pos.lat+','+pos.lng,key:$.gmap_api_key}}).done(function(resp){console.log(resp);console.log("ermittelte Adresse",resp.results[0].formatted_address);let $search_input=document.getElementById(rbFinder.sSearchBoxID);let $searchBox=new google.maps.places.SearchBox($search_input);$search_input.val(resp.results[0].formatted_address);google.maps.event.trigger($searchBox,'places_changed');});},function(){});}else{}},fnInitSearchBox:function(){var input=document.getElementById(rbFinder.sSearchBoxID);var searchBox=new google.maps.places.SearchBox(input);rbFinder.oMap.addListener('bounds_changed',function(){searchBox.setBounds(rbFinder.oMap.getBounds());});var markers=[];searchBox.addListener('places_changed',function(){var places=searchBox.getPlaces();if(places.length==0||places.length>1){return;} 1442markers.forEach(function(marker){marker.setMap(null);});markers=[];places.forEach(function(place){var icon={};if(rbFinder.sIconLocationUrl!=""){icon.url=rbFinder.sIconLocationUrl;}else{icon.url=place.icon;} 1443$.extend(icon,rbFinder.oIconSettings);markers.push(new google.maps.Marker({map:rbFinder.oMap,icon:icon,title:"Ihr Standort",position:place.geometry.location}));rbFinder.oCenter=place.geometry.location;rbFinder.oMap.setCenter(rbFinder.oCenter);rbFinder.fnLoadAgtList(place);});});},fnLoadAgtList:function(place){position=place.geometry.location;address=place.formatted_address;$listContainer=$('#'+rbFinder.sListContainerID);$listContainer.empty();$listContainer.html(rbFinder.sLoadAnimation);rbFinder.aAgtMarker.forEach(function(marker){marker.setMap(null);});rbFinder.aAgtMarker=[];$listContainer.load($.document_path+'/start/jx_ajax.php?cube=jx_nearestagent&cmd=get.NearestAgent',{distance:5,position:position.toUrlValue(),minCnt:20,address:address,AGTISOCODE:'DEU,CHE,AUT,BEL,LUX,ITA'},function(){rbFinder.fnAddAgtMarker($listContainer);rbFinder.fnAfterListLoad();});},fnAddAgtMarker:function($listContainer){rbFinder.oBounds=new google.maps.LatLngBounds();$listContainer.find('.nearestAgent').each(function(){var $agt=$(this);var agtDetails=$agt.data('agt-details');var agtPos={lat:Number(agtDetails.latitude),lng:Number(agtDetails.longitude)};var type=rbFinder.fnGetAgtType($agt);var icon={url:rbFinder.oIconAgtUrl[type]};$.extend(icon,rbFinder.oIconSettings);var markerOptions={title:agtDetails.name,position:agtPos,map:rbFinder.oMap,id:agtDetails.id,type:type};if(rbFinder.oIconAgtUrl!=""){markerOptions.icon=icon;} 1444rbFinder.aAgtMarker.push(new google.maps.Marker(markerOptions));rbFinder.oBounds.extend(agtPos);});rbFinder.oMap.fitBounds(rbFinder.oBounds);rbFinder.oMap.setCenter(rbFinder.oCenter);rbFinder.aAgtMarker.forEach(function(marker){marker.addListener('mouseover',function(){var type=marker.type;marker.setIcon(rbFinder.fnNewMarkerIcon(type,'hover'));});marker.addListener('mouseout',function(){var type=marker.type;if(!marker.highlight==true){marker.setIcon(rbFinder.fnNewMarkerIcon(type));}else{marker.setIcon(rbFinder.fnNewMarkerIcon(type,'highlight'));}});marker.addListener('click',function(){var id=marker.id;if(!marker.highlight==true){rbFinder.fnHighlightMarker(id);rbFinder.fnHighlightListItem(id);}else{rbFinder.fnResetMapToSearchResult();}});});$('body').off('click').on('click',rbFinder.sListItemSelector,function(){console.log("hello32");if($(this).hasClass('nearestAgent')){console.log("hasclass");agtDetails=$(this).data('agt-details');}else{console.log("hasntclass");agtDetails=$(this).parents('.nearestAgent').data('agt-details');} 1445var id=agtDetails.id;console.log(agtDetails.id);if(!$(this).parents('.nearestAgent').hasClass('highlight')){rbFinder.fnHighlightListItem(id);rbFinder.fnHighlightMarker(id);}else{rbFinder.fnResetMapToSearchResult();}});},fnHighlightListItem:function(id){rbFinder.fnUnhighlightAllListItems();var $agt=$('#AGT'+id);$agt.addClass('highlight');$(window).trigger('resize');setTimeout(function(){var scrollTo=$agt;$('#'+rbFinder.sListContainerID).animate({scrollTop:scrollTo.offset().top-$listContainer.offset().top+$listContainer.scrollTop()});},500);},fnUnhighlightAllListItems:function(){var $listContainer=$('#'+rbFinder.sListContainerID);$listContainer.find('.nearestAgent').each(function(){$(this).removeClass('highlight');});},fnHighlightMarker:function(id){rbFinder.fnUnhighlightAllMarker();rbFinder.aAgtMarker.forEach(function(marker){if(marker.id==id){var type=marker.type;marker.setIcon(rbFinder.fnNewMarkerIcon(type,'highlight'));marker.highlight=true;rbFinder.oMap.setCenter(marker.position);rbFinder.oMap.setZoom(14);}});},fnUnhighlightAllMarker:function(){rbFinder.aAgtMarker.forEach(function(marker){if(marker.highlight==true){var type=marker.type;marker.setIcon(rbFinder.fnNewMarkerIcon(type));marker.highlight=false;}});},fnNewMarkerIcon:function(type,modus){var icon={};if(modus=='highlight'){if(rbFinder.oIconAgtHighlightUrl!=""){icon.url=rbFinder.oIconAgtHighlightUrl[type];}else{icon.url=rbFinder.oIconAgtUrl[type];} 1446$.extend(icon,rbFinder.oIconHighlightSettings);}else if(modus=='hover'){icon.url=rbFinder.oIconAgtHoverUrl[type];$.extend(icon,rbFinder.oIconSettings);}else{icon.url=rbFinder.oIconAgtUrl[type];$.extend(icon,rbFinder.oIconSettings);} 1447return icon;},fnResetMapToSearchResult:function(){rbFinder.fnUnhighlightAllListItems();rbFinder.fnUnhighlightAllMarker();rbFinder.oMap.fitBounds(rbFinder.oBounds);rbFinder.oMap.setCenter(rbFinder.oCenter);},fnAfterListLoad:function(){preventRelativeLinks($('.rbFinder-list a.website'));$('.rbFinder-text').slideUp(400,function(){$('.rbFinder-list').slideDown(400,function(){$(window).trigger('resize');});});$('#'+rbFinder.sListContainerID+' .nearestAgent').each(function(){var agtDetails=$(this).data('agt-details');if(agtDetails.Zertifiziert==1){}});},fnGetAgtType:function($agt){var agtDetails=$agt.data('agt-details');if(agtDetails.Zertifiziert==1){return 1;}else{return 0;}},};function handleLocationError(browserHasGeolocation,infoWindow,pos){infoWindow.setPosition(pos);infoWindow.setContent(browserHasGeolocation?'Error: The Geolocation service failed.':'Error: Your browser doesn\'t support geolocation.')}
1448function preventRelativeLinks(linkElements){linkElements.each(function(){var href=$(this).attr('href');if(href.substr(0,7)!="http://"&&href.substr(0,1)!='/'){$(this).attr('href','http://'+href);}});} 1449Offcanvas={init:function(){$('.menuOffcanvas [tos-subtoggle]').click(function(e){e.preventDefault();$(this).next('ul').slideToggle();$(this).toggleClass('menu__open');});}} 1450if(typeof oAgtData==='undefined'){var oAgtData={};} 1451var Agentur={sLoggedInStartPage:'#',loggedIn:false,get Data(){return(typeof oAgtData!=='undefined')?oAgtData:{};},get LoginMode(){if(this.Data===null){return false;} 1452if(this.Data.affiliate=='1'){return'Affiliate';}else if(this.Data.nr&&this.Data.nr!==''){return'Agenturlogin';}else{return false;}},init:function(){Agentur.logoutWithoutExpSet();Agentur.showLoginModal();Agentur.setBerater();$('[data-home-link]').on('click',function(e){e.preventDefault();let default_link=$(this).attr('href');if(Base.getKundenModus()!='Agentur'){if(location.hostname.indexOf('dev')!=-1){location.href='https://chamdev.tourone.de';}else if(location.hostname.indexOf('test')!=-1){location.href='https://chamtest.tourone.de';}else{location.href='https://www.chamaeleon-reisen.de';}}else{location.href=default_link;}});$('#FORMREISEBOOK').find('#ADREMAIL').attr('placeholder','E-Mail-Adresse (des Gastes)');$('#FORMREISEBOOK').find('#ADREMAIL').prev('label').html('E-Mail-Adresse (des Gastes)');if(Base.getKundenModus()=='Agentur'){Agentur.showLoggedInElements();$('[data-header-login-link]').parent('.menu__li').remove();if($('body').hasClass('page-agentur--edit')){Agentur.AgenturEdit.init();} 1453if(oAgtData.exp.position=='Mobile/r Reiseberater/in'){$('[data-agtDataEdit]').remove();} 1454$('[data-berater-mail-link]').removeAttr('uk-toggle');if(!$('body').hasClass('page-reise')){$('[data-berater-mail-link]').removeAttr('uk-toggle').attr('href','mailto:[email protected]');}}},logoutWithoutExpSet:function(){if(window.oAgtData===undefined||window.oAgtData==={}||(window.oAgtData?.exp!==undefined&&window.oAgtData?.exp.id!=='')||$('html').attr('to-readonly')=='1'){return;} 1455if(window.oAgtData?.exp!==undefined&&window.oAgtData?.exp.id===''){console.log('logout weil kein expedient gewählt');$.ajax({url:$.document_path+'/start/agt.login.php?cmd=logout',type:'GET',}).done(function(){if(window.location.search.indexOf('anr=')>-1){window.location.href=window.location.origin+window.location.pathname;}else{window.location.reload();}});}},setBerater:function(){if(Base.getKundenModus()=='Affiliate'){$('[data-berater-name]').text(oAgtData.namehr);$('[data-berater-telefon]').text(oAgtData.telefon);$('[data-berater-telefon], [data-berater-telefon-link]').attr('href','tel:'+oAgtData.telefon);$('[data-berater-mail-link]').attr('href','mailto:'+oAgtData.email).removeAttr('uk-toggle');if(oAgtData.logo!=''&&oAgtData.logo!='/data/flags/'){$('[data-berater-bild]').attr('src',oAgtData.logo);}else{$('[data-berater-bild]').hide();}} 1456else if(Base.getKundenModus()=='Agentur'){$('[data-berater-mail-link]').each(function(){const $this=$(this);const options=$this.data('berater-mail-link');$this.attr('href','mailto:'+options.paket_mail).removeAttr('uk-toggle');})}},showLoginModal:function(mode){var $LoginModal=UIkit.modal('#MODAL_AGTLOGIN');if(mode!=undefined)$('#MODAL_AGTLOGIN').addClass('mode--'+mode);var arOpenSites=[];if((Base.isDomain('agt')||Base.isDomain('b2c'))&&!$(document).data('isAgentur')){if(location.pathname!='/Agentur/Login'){sessionStorage.setItem('pageAfterLogin',location.pathname);location.pathname=$.document_path+'/Agentur/Login';} 1457$('body').on('click','[tos-agtpwlostform-trigger]',function(e){e.preventDefault();$('[tos-agtloginform]').slideUp();$('[tos-agtpwlostform]').slideDown();});}else if($('body').hasClass('page-layout--CHA-AGT-LOGIN')){$('body').on('click','[tos-agtpwlostform-trigger]',function(e){e.preventDefault();$('[tos-agtloginform]').slideUp();$('[tos-agtpwlostform]').slideDown();});}else{if(mode=='expSelect'){Agentur.loadExpedientenListe($('[tos-agtexplist] .list'),oAgtData.nr);$LoginModal.show();}}},loadExpedientenListe:function($container,sAgtnr,modus='link',callback){if(sAgtnr===undefined||sAgtnr===''){oParams={cmd:'Agentur.ListExpedienten',};}else{oParams={cmd:'Agentur.ListExpedienten',sAgtnr:sAgtnr,};} 1458$.getJSON($.document_path+'/src/cube/jx_agentur.php',oParams,function(arData){if($.isEmptyObject(arData)){var $modal_noexpi=UIkit.modal('#MODAL_AGT_NOEXPI');$modal_noexpi.show();} 1459if(modus!=='partnertage'){var html=`<header class="expedienten__header">
1459<div uk-grid><div class="uk-width-1-2@m">NAME</div><div class="uk-width-1-4@s">POSITION</div><div class="uk-width-1-4@s uk-text-right@s">LETZTER LOGIN</div></div></header><div class="expedienten__content">`;if(!$.isEmptyObject(arData)){const expedientenArray=Object.values(arData);expedientenArray.sort((a,b)=>(a.EXPVORNAME||'').localeCompare(b.EXPVORNAME||'','de',{sensitivity:'base'}));$.each(expedientenArray,function(i,arEach){switch(modus){case'link':html+=`<div class="expedient__zeile"data-set-expedient-zeile><div uk-grid><div class="uk-width-1-2@m"><a href="${Agentur.sLoggedInStartPage}"data-expid="${arEach.EXPID}"data-set-expedient-link><strong>${arEach.EXPVORNAME} ${arEach.EXPNAME}</strong></a></div><div class="uk-width-1-4@s">${arEach.EXPPOSITION}</div><div class="uk-width-1-4@s uk-text-right@s">${arEach.EXPLASTLOGINDAT}</div></div></div>`;break;case'checkbox':html+='<div><input type="checkbox" id="EXPID_'+ 1460arEach.EXPID+'" name="EXP_'+ 1461arEach.EXPID+'" value="'+ 1462arEach.EXPID+'">';html+='<label for="EXPID_'+ 1463arEach.EXPID+'">'+ 1464arEach.EXPVORNAME+' '+ 1465arEach.EXPNAME+'</label></div>';}});html+='</div>';}}else{var html='';if(!$.isEmptyObject(arData)){$.each(arData,function(i,arEach){html+='<li><input type="checkbox" id="EXPID_'+ 1466arEach.EXPID+'" name="EXP_'+ 1467arEach.EXPID+'" value="'+ 1468arEach.EXPID+'">';html+='<label for="EXPID_'+ 1469arEach.EXPID+'">'+ 1470arEach.EXPVORNAME+' '+ 1471arEach.EXPNAME+'</label></li>';});}} 1472$container.html(html);$('[tos-agtloginform]').slideUp();$('[tos-agtexplist]').slideDown();Agentur.setExpedient();if(callback&&typeof callback==='function'){callback();}});},setExpedient:function(){let memberSelected=false;function checkMemberSelected(e){if(memberSelected){return;} 1473if(!$(e.target).closest('[tos-agtexplist] a').length){if(!$('#EXPID').val()){e.preventDefault();UIkit.notification({message:'Bitte einen Expedienten w\u00e4hlen.',status:'warning',timeout:5000,pos:'top-right',});}}} 1474$('body').on('click','[data-add-new-expedient-button]',function(e){setTimeout(()=>{Form.Pflichtfelder.mark($('[data-add-expedient-form]'));},100);});$(document).on('click','[data-set-expedient-zeile]',function(e){e.preventDefault();const $this=$(this);const $expedient_link=$this.find('[data-set-expedient-link]');$expedient_link.trigger('click');});$('body').on('click','[tos-agtexplist] a',function(e){e.preventDefault();e.stopPropagation();$('#EXPID').val($(this).data('expid'));$('#FORM_EXPEDIENTSELECT').submit();memberSelected=true;});},redirectOnLogin:function(){document.location.href=Agentur.sLoggedInStartPage;if(sessionStorage.pageAfterLogin!=undefined&&sessionStorage.pageAfterLogin!='/Agentur'){location.pathname=sessionStorage.pageAfterLogin;sessionStorage.removeItem('pageAfterLogin');}else{location.pathname='/Agentur/Start';}},showLoggedInElements:function(){$('[tos-agtbox-target]').append($('[tos-agtbox]'));},initListeBuchungen:function(){var $buchungsliste=$('#BUCHUNGSLISTE').DataTable({responsive:true,paging:false,searching:false,info:false,ordering:false,columns:[null,{width:'200px',},{width:'200px',},null,null,null,null,],});const cookies=$.cookie()||{} 1475Object.keys(cookies).forEach(function(cookie){if(cookie.startsWith('pending-datenaenderung-')){let cookiedata=JSON.parse($.cookie(cookie));$('[data-teilnehmerdaten-aendern-name-liste]').filter(function(){return $(this).data('teilnehmerdaten-aendern-name-liste').vorgang==cookiedata.vorgang;}).each(function(){const $this=$(this);if($this.find('.uk-form-danger').length){return;}else{$this.append('<small class="uk-form-danger">Deine Änderungen werden derzeit geprüft.</small>');}});}});var buchungDetailModal=UIkit.modal('#MODAL_AGTBUCHUNG',{center:true,});UIkit.util.on('#MODAL_AGTBUCHUNG','show',function(){NationalitaetSelect.init();ISOLandSelect.init();Agentur.Teilnehmerdaten.init();});$('#BUCHUNGSLISTE td').on('click','span, .uk-button',function(){t1=$(this).parents('tr').data('t1');t4=$(this).parents('tr').data('t4');let duhash=$(this).parents('tr').data('duhash');$('#MODAL_AGTBUCHUNG_CONTENT').load($.document_path+'/start/agt.form.buchung.php',{t1:t1,t4:t4,},function(){Agentur.initBuchungDetailAnsicht({duhash:duhash});buchungDetailModal.show();Base.Readonly.init();});});if(oAgtData.checkit=='1'){$('.buchungsliste__button--checkit').show();}},initBuchungDetailAnsicht:function(options){switch($('#BUCHUNG_DETAIL').data('status')){case'OP':$('#BUCHUNG_DETAIL .status.op').append(' - Option bis '+moment($('#BUCHUNG_DETAIL').data('optiondat')).format('DD.MM.YYYY 17:00'));$('#BUCHUNG_DETAIL .status.op').show();var today=new Date();var optiondat=$('#BUCHUNG_DETAIL').data('optiondat').split('.');var optiondat_formatted=optiondat[2]+'-'+optiondat[1]+'-'+optiondat[0];var optiondat_date=new Date(optiondat_formatted);var restOption=Math.floor((optiondat_date.getTime()-today.getTime())/(1000*60*60*24));if($('#BUCHUNG_DETAIL').data('optionpast')!='1'){$('#BUCHUNGDETAILS_BUTTONS').css('display','flex');$('#STORNIEREN').click(function(event){event.preventDefault();if(confirm(unescape('M%F6chten Sie die Option stornieren%3F'))){$('#aktion').val('S');Agentur.sendFormBuchungStatus();}});$('#FIXIEREN').click(function(event){event.preventDefault();
1475if(confirm('Wirklich fixieren?')){$('#aktion').val('F');Agentur.sendFormBuchungStatus();}});} 1476break;case'AN':$('#BUCHUNG_DETAIL .status.ok').show();break;case'OK':$('#BUCHUNG_DETAIL .status.ok').show();break;case'XX':$('#BUCHUNG_DETAIL .status.xx').show();break;default:break;} 1477var nachname=$('#teilnehmerdaten-modal-1 [data-teilnehmer-nachname]').data('teilnehmer-nachname');$('#DU_AGENTUR').load('/start/form.unterlagen.login.php',{cube:'jx_unterlagen',cmd:'login',VRRVORGANG:$('#BUCHUNG_DETAIL').data('vorgang'),VRRADRNAME:nachname,AGTFLAG:1,DUHASH:options.duhash,},function(response){if(response=='Login fehlerhaft'){$('#DU_AGENTUR').empty();} 1478if(oAgtData.exp.position=='Mobile/r Reiseberater/in'){$('[data-list-unterlagen]').find("a:contains('Provision')").remove();}});},sendFormBuchungStatus:function(){$.ajax({type:'post',url:$('#BUCHUNG_DETAIL').attr('action'),data:$('#BUCHUNG_DETAIL').serializeArray(),}).done(function(resp){window.location.reload();});},initListeKunden:function(){var $Kundenliste=$('#KUNDENLISTE').DataTable({responsive:true,paging:false,searching:false,info:false,ordering:false,columns:[null,null,{width:'40px',},null,null,null,],});if(!$('#KUNDENLISTE tr').length){$('#AGTKUNDENLISTE').hide();$('#AGTKUNDENLISTE_NORESULTS').show();}},AgenturEdit:{init:function(){Agentur.AgenturEdit.initExpedientenEdit();if(!$('[data-agt-logo-upload] img').length){$('[data-agt-logo-upload] .agtEdit-logoInput').show();} 1479if($('#ERRORMSG').text()!=''){UIkit.notification({message:'Alle Änderungen wurden gespeichert.',timeout:5000,pos:'top-right',});}},initExpedientenEdit:function(){$('tr.expEdit').each(function(){});$('[data-geschlecht]').each(function(){var sVal=$(this).data('geschlecht');sVal=sVal=='Frau'?'F':'M';$(this).val(sVal).trigger('chosen:updated');});$('[data-position]').each(function(){var sVal=$(this).data('expposition');$(this).val(sVal).trigger('chosen:updated');});$('#EXP_ADD_NEW').click(function(e){e.preventDefault();Agentur.AgenturEdit.addExpedient();});$('tr.exp').click(function(){Agentur.AgenturEdit.editExpedient($(this));});$(document).on('click','.agtEdit-saveExp',function(){Agentur.AgenturEdit.showEditChangesBeforeSave($(this));});$(document).on('click','.agtEdit-deleteExp',function(){Agentur.AgenturEdit.deleteExpedient($(this));});$(document).on('change','.agtEdit-expPosition',function(){let $this=$(this);let $form=$this.parents('.agtEdit-expForm');if($this.val()=='Mobile/r Reiseberater/in'){$form.find('[data-setting-buchungen]').val('1');$form.find('[data-setting-kunden]').val('1');$form.find('[data-setting-provision]').val('1');}else{$form.find('[data-setting-buchungen]').val('');$form.find('[data-setting-kunden]').val('');$form.find('[data-setting-provision]').val('');}});},addExpedient:function(){var counter=$('#COUNTER').val();var neueZeile=cloneAndRename('NEW_EXP','NEW',counter,false);$('#AGTEDIT_EXPLIST tbody').append(neueZeile);$('#AGTEDIT_EXPLIST tbody tr').last().find('select').chosen();$('#AGTEDIT_EXPLIST tbody tr').last().addClass('expEdit_row'+counter).removeClass('none');$('#EXP_ADD_NEW').hide();counter++;$('#COUNTER').val(counter);$(window).trigger('resize');},editExpedient:function($exp){$editField=$exp.next('tr');$editField.slideDown();},showEditChangesBeforeSave:function($clickedButton){row=$clickedButton.parents('tr');var newVorname=row.find('.vorname').val(),newNachname=row.find('.nachname').val(),newTel=row.find('.telefon').val(),newEmail=row.find('.email').val(),newPosition=row.find('.position').val();newSettingBuchungen=row.find('[data-setting-buchungen]').val();newSettingKunden=row.find('[data-setting-kunden]').val();newSettingProvisionen=row.find('[data-setting-provision]').val();if(row.find('.vorname').val()!=''&&row.find('.nachname').val()!=''&&row.find('.email').val()!=''){if(row.hasClass('newExp')){row.before('<tr class="exp"><td>'+ 1480newVorname+' '+ 1481newNachname+'</td><td>'+ 1482newPosition+'</td><td>'+ 1483newTel+'</td><td>'+ 1484newEmail+'</td></tr>');row.removeClass('newExp').removeClass('form--offWhite');$(this).val('?nderungen ?bernehmen');$('#EXP_ADD_NEW').show();row.slideUp();}else{row.prev('tr.exp').html('<td>'+ 1485newVorname+' '+ 1486newNachname+'</td><td>'+ 1487newPosition+'</td><td>'+ 1488newTel+'</td><td>'+ 1489newEmail+'</td>');row.prev('tr.exp').removeClass('open');row.slideUp();}}else{if(row.find('.vorname').val()==''){row.find('.vorname').addClass('error');} 1490if(row.find('.nachname').val()==''){row.find('.nachname').addClass('error');} 1491if(row.find('.email').val()==''){row.find('.email').addClass('error');}}},deleteExpedient:function($clickedButton){var datensatz=$clickedButton.parents('tr').data('count');$('#EXPDELETE_'+datensatz).val(1);if($clickedButton.parents('tr').hasClass('newExp')){$clickedButton.parents('tr').remove();var counter=$('#COUNTER').val();counter--;$('#COUNTER').val(counter);$('#EXP_ADD_NEW').show();}else{$clickedButton.parents('tr').prev('tr.exp').hide();$clickedButton.parents('tr').hide();}},},Teilnehmerdaten:{init:function(){if(!$('body').hasClass('page-agentur')){return;} 1492const cookies=$.cookie()||{}
1493Object.keys(cookies).forEach(function(cookie){if(cookie.startsWith('pending-datenaenderung-')){let cookiedata=JSON.parse($.cookie(cookie));$('[data-teilnehmerdaten-aendern-vorgang="'+cookiedata.vorgang+'"]').find('[data-teilnehmerdaten-aendern-link]').filter(function(){return $(this).data('teilnehmerdaten-aendern-link').teilnehmer==cookiedata.teilnehmer;}).html('<small class="uk-form-danger">Deine Änderungen werden derzeit geprüft.</small>');}});if(typeof oMerkmale!=='undefined'&&typeof oMerkmale.BuchungShowPassFields!=='undefined'){let showPersoFields='AUSWEISABFRAGE'in oMerkmale.BuchungShowPassFields;let showPassFields='PASSABFRAGE'in oMerkmale.BuchungShowPassFields;if(showPersoFields){$('body').addClass('has--persofields');} 1494if(showPassFields){$('body').addClass('has--passfields');}} 1495let vorgang=$('[data-teilnehmerdaten-aendern-vorgang]').data('teilnehmerdaten-aendern-vorgang');$('[data-teilnehmerdaten-aendern-form]').each(function(){let $form=$(this);let form_options=$form.data('teilnehmerdaten-aendern-form');let changes=[];$form.on('change','[data-change-input]',function(){const $this=$(this);const options=$this.data('change-input');const field=$this.attr('name');const changed_value=$this.val();const old_value=options.was;if(changed_value!=old_value){$this.addClass('is--edited');let already_changed=changes.find((change)=>change.feld===field&&change.teilnehmer===options.teilnehmer);if(already_changed){already_changed.neu=changed_value;}else{changes.push({teilnehmer:options.teilnehmer,feld:field,alt:old_value,neu:changed_value,});}}else{$this.removeClass('is--edited');changes=changes.filter((change)=>!(change.feld===field&&change.teilnehmer===options.teilnehmer));} 1496console.log(changes);});$form.validate({rules:{Anrede:'required',Vorname:'required',Nachname:'required',Strasse:'required',PLZ:'required',Ort:'required',Land:'required',Geburtsdatum:'required','Staatsangeh?rigkeit':'required','Reisepass Ausstellungsdatum':'date','Reisepass Ablaufdatum':'date','Personalausweis Ausstellungsdatum':'date','Personalausweis Ablaufdatum':'date',},submitHandler:function(form){$.ajax({type:'post',url:$.document_path+'/start/jx_ajax.php?cube=jx_kunde',beforeSend:function(){$form.find('[data-submit-teilnehmerdaten-change]').prop('disabled',true);},data:{cmd:'teilnehmer.aenderung.request',VRRVORGANG:vorgang,DATA:changes,ORIGIN:'Agenturbereich',},}).done(function(resp){$('[data-teilnehmerdaten-aendern-link]').filter(function(){return($(this).data('teilnehmerdaten-aendern-link').teilnehmer==form_options.teilnehmer);}).html('<small class="uk-form-danger">Deine Änderungen werden derzeit geprüft.</small>');$('[data-teilnehmerdaten-aendern-name-liste]').filter(function(){return $(this).data('teilnehmerdaten-aendern-name-liste').vorgang==vorgang;}).append('<small class="uk-form-danger">Deine Änderungen werden derzeit geprüft.</small>');$.cookie(`pending-datenaenderung-${vorgang}-${form_options.teilnehmer}`,JSON.stringify({vorgang:vorgang,teilnehmer:form_options.teilnehmer,}),{expires:1});UIkit.modal('#teilnehmerdaten-modal-'+form_options.teilnehmer).hide();});},});});$(document).on('nationalitaet-select-loaded land-select-loaded',function(){$('[data-change-input]').each(function(){const $this=$(this);const options=$this.data('change-input');if($this.is('select')){$this.val(options.was);}});});},},Expedient:{init:function(){},add:function(data){console.log('data from validator',data);const agtnr=$('#AGTLOGIN_AGTNR').val();data.push({name:'cmd',value:'Expedient.Save',});data.push({name:'AGTNR',value:agtnr,});$.ajax({type:'post',url:'/src/cube/jx_agentur.php',data:data,}).done(function(resp){console.log(resp);let new_expedient=JSON.parse(resp);$('#FORM_EXPEDIENTSELECT').find('input[name="EXPID"]').val(new_expedient.EXPID);$('#FORM_EXPEDIENTSELECT').submit();});},},};var Affiliate={init:function(){Agentur.showLoggedInElements();Agentur.setBerater();$('[data-agt-action="logout"]').on('click',function(e){e.preventDefault();$.ajax({url:$.document_path+'/src/cube/jx_agt.php',data:{cmd:'agt.logout',},type:'post',}).done(function(){if(window.location.search.indexOf('anr=')>-1){console.log('anr= gefunden in URL','Redirect auf origin + path',window.location.origin+window.location.pathname);window.location.href=window.location.origin+window.location.pathname;}else{window.location.reload();}});});},};var Paxconnect={active:false,block:false,init:function(){Paxconnect.active=true 1497if(!Paxconnect.block){$('body').on('click','button[data-paxconnect]',function(e){e.preventDefault() 1498Paxconnect.sendToPaxlounge()})}else{var $PaxModal=UIkit.modal('#MODAL_PAXCONNECT') 1499$PaxModal.show()} 1500if(Agentur.LoginMode=='Affiliate'){$('body').addClass('page-mode-affiliate-paxconnect');$('.pageHeader__inner').before('<div class="contentWrapper pageHeader__hinweis">Du bist eingeloggt über paxconnect - Agenturnummer '+Agentur.Data.nr??''+'</div>')}},sendToPaxlounge:function(){var oData={REICODE:$('main').data('reicode'),REISEBEGINN:$('#REISEBEGINN').val(),REISEENDE:$('#REISEENDE').val(),t1:$('#KASSENZETTEL').data('t1'),t4:$('#KASSENZETTEL').data('t4'),type:'paxconnect',POSTED0:$('main').data('request').mode} 1501$.get($.document_path+'/src/cube/jx_paxconnect.php',oData,function(data_paxconnecturl){console.log('Das Angebot wird in die paxlounge übertragen.') 1502window.open(data_paxconnecturl,'_self')})},} 1503var Bosys={active:false,block:false,init:function(){Bosys.active=true 1504if(!Bosys.block){$('body').on('click','button[data-bosys]',function(e){e.preventDefault() 1505Bosys.send()})}else{var $BosysModal=UIkit.modal('#MODAL_BOSYS') 1506$BosysModal.show()}},send:function(){var data={REICODE:$('main').data('reicode'),REISEBEGINN:$('#REISEBEGINN').val(),REISEENDE:$('#REISEENDE').val(),t1:$('#KASSENZETTEL').data('t1'),t4:$('#KASSENZETTEL').data('t4'),type:'bosys'} 1507$.get($.document_path+'/src/cube/jx_paxconnect.php',data,function(url){console.log('Das Angebot wird in bosys übertragen.') 1508window.open(url,'_self')})},} 1509var Base={init:function(){this.PageClass.set() 1510this.PageBanner.init() 1511this.extendjQuery() 1512this.MobileTabNavigation.init() 1513Datepicker.init()
1514this.initDomainClasses() 1515this.ChangeMe.init() 1516this.showMax.init() 1517this.Readonly.init() 1518this.Tabs.init() 1519this.Chatbot.init()},PageClass:{set:function(){$('main').each(function(){var $main=$(this) 1520var oSettings=$main.data('page') 1521if(oSettings!=undefined&&oSettings!=''){var body_classes=oSettings.class 1522$('body').addClass(body_classes)}})},},Chatbot:{init:function(){this.Label.init()},Label:{Oeffnungszeiten:{1:{open:'09:00',close:'18:00',},2:{open:'09:00',close:'18:00',},3:{open:'09:00',close:'18:00',},4:{open:'09:00',close:'20:00',},5:{open:'09:00',close:'18:00',},6:{open:'09:00',close:'13:00',},0:null,},init:function(){if(!this.isOpen()){$('.chatbot-label').show()}else{$('.chatbot-label').hide()}},isOpen:function(){const jetzt=moment() 1523const wochentag=jetzt.day() 1524const zeitenHeute=this.Oeffnungszeiten[wochentag] 1525if(!zeitenHeute){return false} 1526const format='HH:mm' 1527const start=moment(zeitenHeute.open,format) 1528const ende=moment(zeitenHeute.close,format) 1529if(jetzt.isBetween(start,ende,null,'[]')){return true}else{return false}},},},PageSpinner:{show:function(){if(!$('.page__spinner').length){$('<div class="page__spinner"><i class="fa-solid fa-spinner fa-spin-pulse fa-2x"></i></div>').appendTo('body')} 1530$('body').addClass('page--loading')},hide:function(){$('body').removeClass('page--loading')},},PageBanner:{init:function(){var This=this 1531if($('.pageBanner picture').length==0&&$('.pageBanner video').length==0&&typeof gallery_videos_all!='undefined'&&gallery_videos_all.length){This.loadFallback()}else{This.startSlideshow()} 1532This.openGraph.init() 1533$('[data-banner-video]').each(function(){if($(this).find('video').attr('src')==''){return} 1534let index=$(this).data('banner-video') 1535$('[data-banner-zusatzbild="'+index+'"]').remove()}) 1536if(!$('body').hasClass('page-reise')){UIkit.sticky('.page__header',{showOnUp:true,animation:'uk-animation-slide-top',})}},startSlideshow:function(){UIkit.slideshow('#BANNER_SLIDESHOW',{animation:'slide',autoplay:true,})},Videos:{init:function(){let videos_played=[] 1537let videos_available=[] 1538let poster_image='' 1539if(typeof gallery_videos_all=='undefined'||gallery_videos_all.length==0){$('[data-banner-video-pause]').remove() 1540return} 1541if(gallery_videos_all.length){poster_image=$('#BANNER_SLIDESHOW').find('.banner__image--main').find('img').eq(0).data('src-mobile') 1542$('#BANNER_SLIDESHOW').find('.banner__image--main').remove()} 1543if(JSON.parse(sessionStorage.getItem('videos_played'))!==null){videos_played=[].concat(videos_played,JSON.parse(sessionStorage.getItem('videos_played')))} 1544if(gallery_videos_all.length==videos_played.length){videos_played=[] 1545sessionStorage.removeItem('videos_played')} 1546videos_available=gallery_videos_all.filter((v)=>!videos_played.includes(v.id)) 1547let play_video=videos_available[Math.floor(Math.random()*videos_available.length)] 1548if(play_video===undefined)return 1549if($('#BANNER_SLIDESHOW').find('.banner__video').length){$('#BANNER_SLIDESHOW').find('.banner__video video').attr('src',play_video.src)}else{$('#BANNER_SLIDESHOW').find('.pageBanner__slideshowItems').append('<li class="banner__video"><video src="'+ 1550play_video?.src+'" autoplay loop muted playsinline poster="'+poster_image+'" uk-cover></video></li>')} 1551if(!videos_played.includes(play_video?.id)){videos_played.push(play_video?.id)} 1552sessionStorage.setItem('videos_played',JSON.stringify(videos_played))},},loadFallback:function(){var This=this 1553var sBannerContent=$('.pageBanner__content').clone() 1554$('.pageBanner__slideshow div').load('/start/form.textdisplay.php?tn=_banner&TXTNR=Bannerfallback',function(){$('.pageBanner__slideshow div').append(sBannerContent) 1555This.startSlideshow()})},openGraph:{init:function(){let $banner=$('.pageBanner') 1556if($banner.find('.banner__video').length){$banner.find('.banner__image--main picture').prependTo($banner).hide() 1557$banner.find('.banner__image--main').remove()}},},},showHinweis:function(){var hinweisModal=UIkit.modal($('#MODAL_HINWEIS')) 1558if($('#MODAL_HINWEIS').find('.layoutElement__text').text().trim()!=''){hinweisModal.show()}},showPopup:function(){let modal_gaeste=UIkit.modal($('#MODAL_POPUP_GAESTE')) 1559let modal_exp=UIkit.modal($('#MODAL_POPUP_EXPEDIENTEN')) 1560let the_modal=$(document).data('isAgentur')?modal_exp:modal_gaeste 1561if($(document).data('isAgentur')&&$('#MODAL_POPUP_EXPEDIENTEN').length<1){return false} 1562if(!$(document).data('isAgentur')&&$('#MODAL_POPUP_GAESTE').length<1){return false} 1563if(location.pathname=='/Agentur/Start'||location.pathname=='/'){if($.cookie('popup')!='1'){the_modal.show() 1564$.cookie('popup','1',{expires:1})}}},extendjQuery:function(){$.extend({getUrlVars:function(queryString){var oVars={},hash 1565if(queryString==''||queryString==undefined){queryString=window.location.href.slice(window.location.href.indexOf('?')+1)} 1566queryString=decodeURI(queryString) 1567var hashes=queryString.split('&') 1568for(var i=0;i<hashes.length;i++){hash=hashes[i].split('=') 1569if(hash[0]in oVars){if($.isArray(oVars[hash[0]])){oVars[hash[0]].push(hash[1])}else{var curVal=oVars[hash[0]] 1570oVars[hash[0]]=[curVal,hash[1]]}}else{oVars[hash[0]]=hash[1]}} 1571return oVars},getUrlVar:function(name){return $.getUrlVars()[name]},}) 1572jQuery.event.special.touchstart={setup:function(_,ns,handle){if(ns.includes('noPreventDefault')){this.addEventListener('touchstart',handle,{passive:false,})}else{this.addEventListener('touchstart',handle,{passive:true,})}},} 1573jQuery.event.special.touchmove={setup:function(_,ns,handle){if(ns.includes('noPreventDefault')){this.addEventListener('touchmove',handle,{passive:false,})}else{this.addEventListener('touchmove',handle,{passive:true,})}},} 1574jQuery.event.special.mousewheel={setup:function(_,ns,handle){if(ns.includes('noPreventDefault')){this.addEventListener('mousewheel',handle,{passive:false,})}else{this.addEventListener('mousewheel',handle,{passive:true,})}},}},MobileTabNavigation:{init:function(){$('[tos-mobile-tab-trigger]').each(function(){var $trigger=$(this),$nav=$(this).next('[tos-mobile-tab-nav]'),$active_item=$nav.find('.uk-active'),sText=$active_item.find('a').text() 1575sText!=''?$trigger.text(sText):'' 1576$nav.find('a').click(function(){$trigger.text($(this).text())})})},},isDomain:function(domain){var sUrl=window.location.host 1577if($.inArray(sUrl,oDomains[domain.toLowerCase()])!=-1){return true}else{return false}}
1577,initDomainClasses:function($context=$('body')){arDomains=['de','agt','b2c'] 1578$.each(arDomains,function(i,v){if(Base.isDomain(v)){$context.find('.'+v.toUpperCase()+'remove').remove()}else{$context.find('.'+v.toUpperCase()+'only').remove()}}) 1579if(Agentur.LoginMode=='Agenturlogin'){$context.find('.removeAGT').remove()}else{$context.find('.onlyAGT').remove()} 1580if(Agentur.LoginMode=='Affiliate'){$context.find('.removeAFF').remove()}else{$context.find('.onlyAFF').remove()} 1581if(Kunde.LoggedIn){$context.find('.hideMC').hide() 1582$context.find('.removeMC').remove()} 1583if(!$(document).data('isAgentur')&&!Base.isDomain('b2c')){$context.find('.removeDK').remove()} 1584if(Base.isDomain('b2c')){$('#chatbot-button, #chatbot-container').remove()} 1585if(window.matchMedia('(display-mode: standalone)').matches){$('#chatbot').remove()}},getKundenModus:function(){var besuchertyp='Direktkunde' 1586if($(document).data('isAgentur')&&!$(document).data('isAffiliate')){besuchertyp='Agentur'}else if($(document).data('isAffiliate')){besuchertyp='Affiliate'}else if(Kunde.LoggedIn){besuchertyp='Direktkunde (MeinChamaeleon)'} 1587return besuchertyp},kontingentToString:function(max,frei,context){max=Number(max) 1588frei=Number(frei) 1589if(typeof frei!='number'){$('body').here('kontingentToString - frei not numeric '+frei) 1590return null} 1591if(typeof max!='number'){$('body').here('kontingentToString - max not numeric '+max) 1592return null} 1593if(frei<=0){if(context=='reisedisplay')return $('#VAKANZ_RQ_HINWEIS').html() 1594else 1595return'<div style="color: red">Die Verfügbarkeit wird von uns geprüft.</div>'} 1596var limes 1597if(max>9)limes=8 1598else if(max>6)limes=6 1599else limes=4 1600var platz 1601platz=frei==1?'Platz':'Plätze' 1602sind=frei==1?'ist noch':'sind' 1603if(context=='reisedisplay'){if(frei>limes){return'Über <span>'+limes+' Plätze frei</span>.'}else{return'<span>'+frei+' '+platz+' frei</span>.'}} 1604if(context=='book'){if(frei>limes){return('Zu diesem Termin sind noch mehr als <nobr>'+ 1605limes+' Plätze</nobr> frei')}else{return('Zu diesem Termin '+ 1606sind+' <nobr>'+ 1607frei+' '+ 1608platz+'</nobr> frei')}}},initAutoSenseDate:function(){$(document).on('change','.autosensedate',function(){$(this).autosenseDate()})},AnchorSmoothScrolling:function($context){$context.find('a[href^="#"]').each(function(){var $scrollTarget=$($(this).attr('href')) 1609$(this).on('click',function(e){e.preventDefault() 1610var elementPosition=$scrollTarget.offset().top 1611var offsetPosition=elementPosition-150 1612window.scrollTo({top:offsetPosition,behavior:'smooth',}) 1613window.location.hash=$(this).attr('href').substring(1)})})},cssBreakpoint:function(sBreakpoint){var oBreakpoints={xs:480,s:640,m:960,l:1200,xl:1600,} 1614if(sBreakpoint.charAt(0)=='<'){sBreakpoint=sBreakpoint.substring(1) 1615if($(window).width()<oBreakpoints[sBreakpoint]){return true}else{return false}}else{if($(window).width()>=oBreakpoints[sBreakpoint]){return true}else{return false}}},Berater:{setEstosOptions:function($element){if($element.data('estos-sip')!=''){$('.quickmenu__direktKontakt--chat').show()} 1616if($element.data('estos-team')!=''){$('.quickmenu__direktKontakt--videochat').show()}},},ChangeMe:{init:function(){$('[data-change-me]').each(function(){let $this=$(this) 1617let options=$this.data('change-me') 1618if(options.if==Base.getKundenModus()){if(options.what=='text'){$this.text(options.to)} 1619if(options.what=='title'){$this.attr('title',options.to)} 1620if(options.what=='value'){$this.val(options.to)}}})},},Reveal:{init:function(){$('[data-reveal]').each(function(){let $this=$(this) 1621let $content=$this.find('[data-reveal-content]') 1622let options=$this.data('reveal') 1623let minimum=options.min 1624if($content.children().length<=minimum){return} 1625$content.children().filter(function(index){return index>=options.showInitial}).hide() 1626$('<a></a>',{class:'expand__toggle uk-button uk-button-secondary','data-expand-toggle':'',html:options.toggleText.more+' <i class="fa-solid fa-angle-down"></i>',}).on('click',function(e){e.preventDefault() 1627if($this.hasClass('is--active')){$this.find('[data-expand-toggle]').html(options.toggleText.more+' <i class="fa-solid fa-angle-down"></i>') 1628$this.removeClass('is--active') 1629$content.children().filter(function(index){return index>=options.showInitial}).slideUp()}else{$this.find('[data-expand-toggle]').html(options.toggleText.less+' <i class="fa-solid fa-angle-up"></i>') 1630$this.addClass('is--active') 1631$content.children().slideDown()}}).appendTo($this)})},},showMax:{init:function(){$('[data-show-max]').each(function(){const $this=$(this) 1632const options=$this.data('show-max') 1633if(parseInt(options.value)>parseInt(options.max)){$this.text(options.max)}})},},Readonly:{isActive:function(){if($('html').attr('to-readonly')===undefined||$('html').attr('to-readonly')!=='1'){return false}else{return true}},init:function(){if(!this.isActive()){return} 1634$submit_elements=['[type="submit"]','[data-buchung-book-button]','.buchungsliste__button--checkit > a','#BUCHUNGDETAILS_BUTTONS button','[data-agt-request-password]','#EXP_ADD_NEW','.agtEdit-saveExp','#FORM_AGTEDIT_SUBMIT','[data-deactivate-kundenaccount]','[data-merkzettel-link]','[data-merkzettel-link-parent]','[data-submit-teilnehmerdaten-change]','.agtEdit-deleteExp',] 1635$($submit_elements.join(', ')).each(function(){let $this=$(this) 1636if($this.is('button')||$this.is(':input')){$this.prop('disabled',true)}else if($this.is('a')||$this.is('div')){$this.addClass('uk-disabled')}})},},Tabs:{init:function(){this.cleanTabs() 1637this.initHashChange() 1638$(window).on('load',function(){Base.Tabs.initHashChange()})},initHashChange:function(){$(window).on('hashchange',function(){var hash=window.location.hash.substring(1) 1639if(hash!=''){var tab_index=$('[data-tabs-nav]').find('[data-tab="'+hash+'"]').index() 1640if($('.reisedisplay').length){if(tab_index>0){$('[data-section="aehnliche-reisen"]').hide()}else{$('[data-section="aehnliche-reisen"]').show()}} 1641if(tab_index>-1){UIkit.switcher('[data-tabs-nav]').show(tab_index) 1642$('html, body').animate({scrollTop:$('.mainContent').offset().top,},100)}else{return true}}}) 1643$(window).trigger('hashchange') 1644$('[data-tabs-nav]').find('[data-tab]').on('click',function(){window.location.hash=$(this).data('tab')}) 1645$('[data-tabs-nav-select]').change(function(){window.location.hash=$(this).val()}) 1646if($('.reisedisplay').length){$('.reise__tabs').find('h6').attr('uk-switcher-item','next').addClass('uk-button uk-button-primary')}},cleanTabs:function(){var tabs=$('.reisedisplay__tabs').find('[data-tab]') 1647tabs.each(function(){var tab=$(this) 1648var tab_name=tab.data('tab') 1649if(tab_name=='zusatzprogramme'){if(!tab.find('[tos-reicode]').length){$('.reisedisplay__navbar').find('[data-tab="'+tab_name+'"]').hide() 1650$('[data-tabs-nav-select]').find('option[value="'+tab_name+'"]').remove()}} 1651if(tab_name=='reviews'){if(!tab.find('.reiseReview').length){$('.reisedisplay__navbar').find('[data-tab="'+tab_name+'"]').hide() 1652$('[data-tabs-nav-select]').find('option[value="'+tab_name+'"]').remove()}} 1653if(tab_name=='covid-19'){if(!tab.find('[data-tab-content]').text().trim().length){$('.reisedisplay__navbar').find('[data-tab="'+tab_name+'"]').hide() 1654$('[data-tabs-nav-select]').find('option[value="'+tab_name+'"]').remove()}}})},},} 1655var Kunde={LoggedIn:false,init:function(){this.Modal.init();this.Archiv.init();this.Reise.Tabs.init();this.Reise.Unterlagen.init();this.Reise.Berater.init();this.Teilnehmerdaten.init();this.Club.init();if(window.matchMedia('(max-width: 959px)').matches){this.Teilnehmerdaten.Accordion.init();} 1656const isStandalone=window.matchMedia('(display-mode: standalone)').matches||window.navigator.standalone;const isNotOnMeinCHAM=window.location.pathname.indexOf('/MeinChamaeleon/')===-1;if(isStandalone&&isNotOnMeinCHAM){setTimeout(function(){if(!Kunde.LoggedIn){window.location.href='/MeinChamaeleon/';}},500);} 1657$('body').on('click','[tos-kundenlogin-trigger]',function(e){Kunde.Modal.show();});$('body').on('click','[tos-kundenpwlostform-trigger]',function(){$('[tos-kundenpwlostform-trigger]').hide();
1657$('[tos-kundenloginform]').slideUp();$('[tos-kundenpwlostform]').slideDown();});$('body').on('click','[data-fill-in-kundendaten]',function(e){let $this=$(this);Reisebook.Kundendaten.load(null,'kunde');});$('body').on('click','[data-kunde-logout]',function(e){$.ajax({type:'get',url:'/start/jx_ajax.php',data:{cube:'jx_kunde',cmd:'kunde.logout',},}).done(function(){location.reload();});});$('[data-deactivate-kundenaccount]').on('click',function(){let $this=$(this);let adrid=$this.data('deactivate-kundenaccount').adrid;if(window.confirm('Account wirklich deaktivieren? Anschließend ist der Account deaktiviert und eine erneute Registrierung erforderlich!')){$.ajax({type:'post',url:$.document_path+'/src/cube/jx_kunde.php',data:{cmd:'request.login.deactivate',ADRID:adrid,},}).done(function(resp){location.reload();});}else{return false;}});},setLoggedIn:function(){Kunde.LoggedIn=true;$(document).data('isKundeLoggedIn',true);$('body').addClass('kunde--logged-in');$('[data-header-login-link]').removeAttr('uk-toggle').attr('href','/MeinChamaeleon/');$('[data-header-login-link] > i').removeClass('fa-lock-keyhole').addClass('fa-lock-keyhole-open');$('[data-header-login-link] > span').text('MeinChamäleon');},Club:{init:function(){},},Modal:{init:function(){$('body').on('click','[tos-kundenpwlostform-trigger]',function(e){e.preventDefault();$('[tos-kundenloginform]').slideUp();$('[tos-kundenregisterform]').slideUp();$('[tos-kundenpwlostform]').slideDown();});$('body').on('click','[tos-kundenregisterform-trigger]',function(e){e.preventDefault();$('[tos-kundenloginform]').slideUp();$('[tos-kundenpwlostform]').slideUp();$('[tos-kundenregisterform]').slideDown();});},show:function(){var $LoginModal=UIkit.modal('#MODAL_KUNDENLOGIN');$LoginModal.show();},},Archiv:{init:function(){$('.kunde-archiv').find('[data-kun-vorgang]').filter(function(){let options=$(this).data('kun-vorgang');if(moment(options.reisebeginn,'DD.MM.YYYY').isBefore(moment('01.01.2022','DD.MM.YYYY'))){return true;}else{return false;}}).addClass('none');},},Reise:{Tabs:{Debouncer:null,PassolutionFetched:false,init(){UIkit.util.on('.kundenlogin-vorgang__tabs','show',(e)=>{clearTimeout(this.Debouncer);this.Debouncer=setTimeout(()=>{if(e.target.dataset.tab==='unterlagen'){if(!this.PassolutionFetched){this.PassolutionFetched=true;Passolution.Overview.init();}}},100);});},},Unterlagen:{init:function(){this.check();this.Visum.init();},check:function(){if($('[data-kunde-unterlagen]').find('[data-unterlage]').length>0){$('.section--unterlagen').find('.section__placeholder').hide();}},Visum:{init:function(){if(typeof oMerkmale!='undefined'&&typeof oMerkmale.Kundenlogin!='undefined'){if('VISUMDEAK'in oMerkmale.Kundenlogin){$('[data-kunde-section-visum]').remove();}}},},},Berater:{init:function(){let vorgang_agentur=$('.kunde-reise').find('[data-vorgang-agentur]').data('vorgang-agentur');if(vorgang_agentur!=1&&vorgang_agentur!=undefined){let $ansprechpartner_vorgang=$('[data-ansprechpartner]').filter(function(){return $(this).data('ansprechpartner').type=='agentur';}).data('ansprechpartner');$('[data-berater-name]').text($ansprechpartner_vorgang.name) 1658$('[data-berater-zusatz]').text($ansprechpartner_vorgang.expedient) 1659$('[data-berater-telefon]').text($ansprechpartner_vorgang.telefon) 1660$('[data-berater-bild]').attr('src',$ansprechpartner_vorgang.logo) 1661$('[data-berater-bild]').attr('alt',$ansprechpartner_vorgang.name) 1662$('[data-berater-telefon], [data-berater-telefon-link]').attr('href','tel:'+$ansprechpartner_vorgang.telefon);$('[data-berater-mail-link]').attr('href','mailto:'+$ansprechpartner_vorgang.email).removeAttr('uk-toggle');if(oAgtData.logo!=''&&oAgtData.logo!='/data/flags/'){$('[data-berater-bild]').attr('src',oAgtData.logo);}else{$('[data-berater-bild]').hide();}}},},},iFrame:{init:function(){let adrid=$('[data-print]').data('print').adrid;let adremail=$('[data-print]').data('print').adremail;$.ajax({type:'post',url:$.document_path+'/src/cube/jx_kunde.php',data:{cmd:'kunde.get.mcf',ADRID:adrid,Kundenemailadr:adremail,herkunft:'dankeseite-iframe',},}).done(function(resp){if(resp.LINK!=''){$('[data-kunde-register-iframe]').attr('src',resp.L
1662INK);$('[data-kunde-register-iframe]').on('load',function(){$('[data-kunde-register-iframe]').contents().find('html').addClass('page--iframe');});}else{$('[data-booking-box="bookdone_kunde_register"]').hide();}});},},Teilnehmerdaten:{init:function(){if(!$('body').hasClass('kunde-reise')){return;} 1663let vorgang=$('[data-kundenlogin-vorgang]').data('kundenlogin-vorgang');if($.cookie('datenaenderung-pending-kunde')){let cookiedata=$.cookie('datenaenderung-pending-kunde').split('-');$('[data-kundenlogin-vorgang="'+cookiedata[0]+'"]').find('[data-teilnehmerdaten-aendern-link]').filter(function(){return $(this).data('teilnehmerdaten-aendern-link').teilnehmer==cookiedata[1];}).html('<small class="uk-form-danger">Deine Änderungen werden derzeit von einem Mitarbeitenden geprüft und anschließend aktualisiert.</small>');} 1664if(typeof oMerkmale!=='undefined'&&typeof oMerkmale.BuchungShowPassFields!=='undefined'){let showPersoFields='AUSWEISABFRAGE'in oMerkmale.BuchungShowPassFields;let showPassFields='PASSABFRAGE'in oMerkmale.BuchungShowPassFields;if(showPersoFields){$('body').addClass('has--persofields');} 1665if(showPassFields){$('body').addClass('has--passfields');}} 1666$('[data-teilnehmerdaten-aendern-form]').each(function(){let $form=$(this);let form_options=$form.data('teilnehmerdaten-aendern-form');let changes=[];$form.on('change','[data-change-input]',function(){const $this=$(this);const options=$this.data('change-input');const field=$this.attr('name');const changed_value=$this.val();const old_value=options.was;if(changed_value!=old_value){$this.addClass('is--edited');let already_changed=changes.find((change)=>change.feld===field&&change.teilnehmer===options.teilnehmer);if(already_changed){already_changed.neu=changed_value;}else{changes.push({teilnehmer:options.teilnehmer,feld:field,alt:old_value,neu:changed_value,});}}else{$this.removeClass('is--edited');changes=changes.filter((change)=>!(change.feld===field&&change.teilnehmer===options.teilnehmer));} 1667console.log(changes);});$form.validate({rules:{Anrede:'required',Vorname:'required',Nachname:'required',Strasse:'required',PLZ:'required',Ort:'required',Land:'required',Geburtsdatum:'required',Staatsangehörigkeit:'required','Reisepass Ausstellungsdatum':'date','Reisepass Ablaufdatum':'date','Personalausweis Ausstellungsdatum':'date','Personalausweis Ablaufdatum':'date',},submitHandler:function(form){$.ajax({type:'post',url:$.document_path+'/start/jx_ajax.php?cube=jx_kunde',beforeSend:function(){$form.find('[data-submit-teilnehmerdaten-change]').prop('disabled',true);},data:{cmd:'teilnehmer.aenderung.request',VRRVORGANG:vorgang,DATA:changes,ORIGIN:'Kundenlogin',},}).done(function(resp){console.log(changes);console.log(resp);$('[data-teilnehmerdaten-aendern-link]').filter(function(){return($(this).data('teilnehmerdaten-aendern-link').teilnehmer==form_options.teilnehmer);}).html('<small class="uk-form-danger">Deine Änderungen werden derzeit von einem Mitarbeitenden geprüft und anschließend aktualisiert.</small>');$.cookie('datenaenderung-pending-kunde',vorgang+'-'+form_options.teilnehmer,{expires:2,});UIkit.modal('#teilnehmerdaten-modal-'+form_options.teilnehmer).hide();});},});});$(document).on('nationalitaet-select-loaded land-select-loaded',function(){$('[data-change-input]').each(function(){const $this=$(this);const options=$this.data('change-input');if($this.is('select')){$this.val(options.was);}});});},Accordion:{init:function(){$('[data-teilnehmer-toggle]').each(function(index,element){const $this=$(this);const $content=$this.siblings('[data-teilnehmer-content]');if(index>0){$content.hide();}else{$this.addClass('is-open');}}).on('click',function(){const $this=$(this);const $content=$this.siblings('[data-teilnehmer-content]');if($this.hasClass('is-open')){$content.slideUp();$this.removeClass('is-open');}else{$content.slideDown();$this.addClass('is-open');}});},},},};let kunden_domains={'live':'https://www.chamaeleon-reisen.de','test':'https://chamtest.tourone.de','dev':'https://chamdev.tourone.de'} 1668var Adminbar={init:function(){if($('html').attr('to-user')!=1){return false;} 1669this.create();this.Elements.init();},create:function(){if($('[to-adminbar]').length){return;} 1670$('<link></link>',{rel:'stylesheet',href:'/html/css/to-adminbar.css',type:'text/css'}).appendTo('head');$('<div></div>',{class:'to__adminbar','to-adminbar':''}).appendTo($('body'));$('html').addClass('has--adminbar');},add:function(label,$module,css_class){$module.appendTo($('[to-adminbar]')).wrap('<div class="adminbar__widget adminbar__widget--'+css_class+'"></div>').parent().prepend('<label class="widget__label">'+label+'</label>');},Elements:{init:function(){this.create();},create:function(){$('[data-to-admin-element]').each(function(){let $this=$(this);let options=$this.data('to-admin-element');let labels={'layout':options.mode+' '+options.code,'layoutrow':options.mode+' '+options.rowid,'text':options.mode+' '+options.code,'reise':options.mode+' '+options.code,'form':options.mode+' '+options.code};$('<div></div>',{class:'admin-element__label',html:'<div class="label__icon"><i class="fa-solid fa-pencil fa-xs"></i></div><div class="label__text">'+labels[options.mode]+'</div>'}).on('click',function(e){e.preventDefault();let $this=$(this);Adminbar.Elements.edit(options.mode,options.id,options.rowid);}).appendTo($this);});},edit:function(mode,id,rowid=null){let admin_urls={'layout':location.origin+'/src/modules/layout/form.lay.php?LAYID='+id+'&key='+id+'&cmd=edit','layoutrow':location.origin+'/src/modules/layout/form.lay.php?LAYID='+id+'&key='+id+'&cmd=edit#rowid='+rowid,'text':location.origin+'/src/modules/text/form.txt.php?TXTID='+id+'&key='+id+'&cmd=edit','reise':location.origin+'/src/cms/form.paketmaske.php?REIID='+id+'&key='+id+'&cmd=edit','form':location.origin+'/src/modules/formmanager/form.fom.php?FOMID='+id+'&key='+id+'&cmd=edit'};window.open(admin_urls[mode]);}}} 1671$(function(){Adminbar.init();let $element_switch=$('<div></div>',{class:'adminbar__elements-toggle',html:`<input type="checkbox"id="check--hide-admin-elements"/><label for="check--hide-admin-elements"class="toggle"></label>`}).on('change',function(){let $this=$(this);let mode=$this.find('input[type="checkbox"]').is(':checked')?'show':'hide';if(mode=='hide'){$('html').addClass('hide-admin-elements');} 1672else{$('html').removeClass('hide-admin-elements');}}).trigger('change');Adminbar.add('show/hide elements',$element_switch,'elements-toggle');let $domainswitch=$('<div></div>',{class:'adminbar__domainswitch',html:`<a class="widget__link domainswitch__link ${kunden_domains['live'] == location.origin ? 'is--active' : ''}"href="${kunden_domains['live']}">LIVE</a><a class="widget__link domainswitch__link ${kunden_domains['dev'] == location.origin ? 'is--active' : ''}"href="${kunden_domains['dev']}">DEV</a><a class="widget__link domainswitch__link ${kunden_domains['test'] == location.origin ? 'is--active' : ''}"href="${kunden_domains['test']}">TEST</a>`}).on('click','.domainswitch__link',function(e){e.preventDefault();let $this=$(this);let page=location.pathname;let new_url=$this.attr('href')+page;window.open(new_url);});Adminbar.add('open page in',$domainswitch,'domainswitch');let admin_urls,page_type,page_id,page_code;let $editpage=$('<a></a>',{class:'editpage__link widget__link',href:'#',html:'edit',target:'_blank'});Adminbar.add('edit page',$editpage,'edit-page');
1672if($('[data-layout]').length){page_type='layout';page_id=$('[data-layout]').data('layout').id;page_code=$('[data-layout]').data('layout').code;$editpage.html('layout "'+page_code+'"');} 1673else if($('[data-text]').length){page_type='text';page_id=$('[data-text]').data('text').id;page_code=$('[data-text]').data('text').code;$editpage.html('text "'+page_code+'"');} 1674else if($('[data-reise]').length&&!$('[data-reisenliste]').length&&!$('[data-print]').length){page_type='reise';page_id=$('[data-reise]').data('reise').id;page_code=$('[data-reise]').data('reise').code;$editpage.html('tour "'+page_code+'"');} 1675else if($('[data-request]').length){page_type='reise';page_id=$('[data-request]').data('request').id;page_code=$('[data-request]').data('request').reisecode;$editpage.html('tour "'+page_code+'"');} 1676else if($('[data-book]').length){page_type='reise';page_id=$('[data-book]').data('book').id;page_code=$('[data-book]').data('book').code;$editpage.html('tour "'+page_code+'"');} 1677else if($('[data-print]').length){page_type='book';page_id=$('[data-print]').data('print').vorgang;$editpage.html('booking "'+page_id+'"');} 1678else if($('[data-form]').length){page_type='form';page_id=$('[data-form]').data('form').id;page_code=$('[data-form]').data('form').code;$editpage.html('form "'+page_code+'"');} 1679else{$editpage.parents('.adminbar__widget').addClass('is--disabled');} 1680admin_urls={'layout':location.origin+'/src/modules/layout/form.lay.php?LAYID='+page_id+'&key='+page_id+'&cmd=edit','text':location.origin+'/src/modules/text/form.txt.php?TXTID='+page_id+'&key='+page_id+'&cmd=edit','reise':location.origin+'/src/cms/form.paketmaske.php?REIID='+page_id+'&key='+page_id+'&cmd=edit','form':location.origin+'/src/modules/formmanager/form.fom.php?FOMID='+page_id+'&key='+page_id+'&cmd=edit','book':location.origin+'/src/steward/form.stewardmaske.php?cmd=D&VRRVORGANG='+page_id+'&aktiveKartei=Vorgang'};$editpage.attr('href',admin_urls[page_type]);let $favourites=$('<div></div>',{class:'adminbar__links',html:`<a class="widget__link"target="_blank"href="https://agt.chamdev.tourone.de">AGT(DEV)</a><a class="widget__link"href="#"data-trigger-function="DummyPics">Dummy Pics()</a>`});Adminbar.add('links',$favourites,'links');window.showRequestInfo=function(){let services=[];$('[data-reise-leistung]').each(function(){let $this=$(this);let anf=$this.data('anforderung');let lei_code=$this.data('leistung');let lei_id=$this.data('leistung-id');let code_id=$this.find('.coderubrik__select').val();let code_bez=$this.find('.coderubrik__select option:selected').text();let code=$this.find('.coderubrik__select option:selected').data('code');let anzahl=$this.find('.anzahl_input').val();let selected=$this.find('[data-reise-leistung__toggle]').is(':checked');let service={anforderung:anf,leistungs_code:lei_code,leistungs_id:lei_id,code_bez:code_bez,code:code,code_id:code_id,anzahl:anzahl,isSelected:selected} 1681services.push(service);});console.table(services);} 1682let $request_info=$('<div></div>',{class:'adminbar__request-info',html:`<a class="widget__link"href="#"data-trigger-function="showRequestInfo">show</a>`});Adminbar.add('Request info',$request_info,'request-info');let $customer_data=$('<div></div>',{class:'adminbar__customer-data',html:`<a class="widget__link"href="#"data-trigger-function="GO">fill</a>`});Adminbar.add('Customer Data',$customer_data,'customer-data');let branch=$('html').attr('to-branch');let $branchinfo=$('<div></div>',{class:'adminbar__branchinfo',html:`<div>${branch}</div>`});});var Buchungsstrecke={lastRequestStep:2,firstBookStep:3,lastBookStep:5,expMode:false,oStoredData:{},$hinweisModal:"",MERSettings:{},init:function(){Buchungsstrecke.oStoredData=(sessionStorage.getItem('buchung')!=null)?JSON.parse(sessionStorage.getItem('buchung')):{};Buchungsstrecke.Schritte.init();Buchungsstrecke.Notiz.init();Buchungsstrecke.$hinweisModal=UIkit.modal('#MODAL_BUCHUNG_HINWEIS');Buchungsstrecke.MERSettings=(typeof oMerkmale!="undefined")?oMerkmale.Buchungsstrecke:{};if(Buchungsstrecke.expMode==true){Buchungsstrecke.oStoredData.anreiseModus='eigenanreise' 1683$('[data-buchung-anreise="veranstalter"]').css({'pointer-events':'none'});} 1684if(typeof(Buchungsstrecke.MERSettings)!='undefined'&&!Base.isDomain('b2c')){if(!('ANREISE_TAB_F'in Buchungsstrecke.MERSettings)){$('#ANREISE_SWITCHER').find('[data-buchung-anreise="veranstalter"]').parent('li').hide();$('#ANREISE_OPTIONEN').find('[data-anreise-content-tab="veranstalter"]').hide();}
1685if(!('ANREISE_TAB_E'in Buchungsstrecke.MERSettings)){$('#ANREISE_SWITCHER').find('[data-buchung-anreise="eigenanreise"]').parent('li').hide();$('#ANREISE_OPTIONEN').find('[data-anreise-content-tab="eigenanreise"]').hide();} 1686if(!('ANREISE_TAB_B'in Buchungsstrecke.MERSettings)){$('#ANREISE_SWITCHER').find('[data-buchung-anreise="bahnanreise"]').parent('li').hide();$('#ANREISE_OPTIONEN').find('[data-anreise-content-tab="bahnanreise"]').hide();} 1687if(!('ANREISE_TAB_F'in Buchungsstrecke.MERSettings)&&!('ANREISE_TAB_E'in Buchungsstrecke.MERSettings)&&!('ANREISE_TAB_B'in Buchungsstrecke.MERSettings)){$('[data-booking-box="anreise"]').hide();} 1688if(('ANREISE_B_DFLT'in Buchungsstrecke.MERSettings)){$('#ANREISE_SWITCHER').find('[data-buchung-anreise="bahnanreise"]').parent('li').prependTo('#ANREISE_SWITCHER');$('#ANREISE_OPTIONEN').find('[data-anreise-content-tab="bahnanreise"]').prependTo('#ANREISE_OPTIONEN');} 1689if('ANREISE_E'in Buchungsstrecke.MERSettings){Buchungsstrecke.oStoredData.anreiseModus=(Buchungsstrecke.oStoredData.anreiseModus==undefined?'eigenanreise':Buchungsstrecke.oStoredData.anreiseModus);}} 1690if($('main').hasClass('reiserequest')){Reiserequest.init();} 1691if($('main').hasClass('reisebook')){Reisebook.init();} 1692Buchungsstrecke.hideEmptyBoxes();Kassenzettel.init();if($('main').hasClass('reiseprint')){$(document).trigger('refresh-kassenzettel',"Print load");} 1693$('[data-booking-box="zusatzprogramme"]').on('change','.freie-terminwahl__input--von, .freie-terminwahl__input--bis, .wahlpflicht__item input[type="radio"]',function(){console.log("zusatzprogramm datepicker ge?ndert");if(Buchungsstrecke.oStoredData.oNotiz==undefined){Buchungsstrecke.oStoredData.oNotiz={};} 1694Buchungsstrecke.oStoredData.oNotiz["zusatzprogramme"]="Verlängerung wurde möglicherweise im Datum verändert oder ein anderes Hotel gewählt";});},Schritte:{init:function(step){Buchungsstrecke.Schritte.onPageLoad();$('body').on('click','[data-buchung-step-next]',function(e){e.preventDefault();var iActiveStepNum=$('.buchung__step--active').data('booking-step'),iNextStepNum=parseInt(iActiveStepNum)+1;Buchungsstrecke.Schritte.goToStep(iNextStepNum);});$('body').on('click','[data-buchung-step-prev]',function(e){e.preventDefault();var iActiveStepNum=$('.buchung__step--active').data('booking-step'),iNextStepNum=parseInt(iActiveStepNum)-1;Buchungsstrecke.Schritte.goToStep(iNextStepNum);});$('[data-buchung-fortschritt]').click(function(){var iActiveStepNum=$('.buchung__step--active').data('booking-step'),iNextStepNum=$(this).data('buchung-fortschritt');if($(this).hasClass('done')){Buchungsstrecke.Schritte.goToStep(iNextStepNum);}});},goToStep:function(iNewStep){var $activeStep=$('.buchung__step--active'),iActiveStep=$activeStep.data('booking-step');if(Buchungsstrecke.Schritte.validateStep(iActiveStep,iNewStep)){$activeStep.fadeOut(400,function(){$(this).removeClass('buchung__step--active');Buchungsstrecke.Schritte.updateFortschrittsanzeige(iActiveStep,iNewStep);if(iActiveStep<=(Buchungsstrecke.firstBookStep-1)&&iNewStep>(Buchungsstrecke.firstBookStep-1)){Buchungsstrecke.Schritte.goToBook(iNewStep);} 1695else if(iActiveStep>=Buchungsstrecke.firstBookStep&&iNewStep<Buchungsstrecke.firstBookStep){Buchungsstrecke.Schritte.returnToRequest(iNewStep);} 1696else{$('[data-booking-step="'+iNewStep+'"]').fadeIn(400,function(){$(this).addClass('buchung__step--active');});Buchungsstrecke.Schritte.onStepOpen(iNewStep);location.hash='#'+iNewStep;}});$('html, body').animate({scrollTop:$activeStep.offset().top-500},400);}},goToBook:function(iStep){sessionStorage.setItem('buchungTargetStep',iStep);sessionStorage.setItem('buchung',JSON.stringify(Buchungsstrecke.oStoredData));window.dataLayer.push({event:'buchung-step-change','buchung-step':iStep});$('#FORMREISEREQ').submit();},returnToRequest:function(iStep){Buchungsstrecke.oStoredData.returnToRequest=true;sessionStorage.setItem('buchungTargetStep',iStep);sessionStorage.setItem('buchung',JSON.stringify(Buchungsstrecke.oStoredData));window.dataLayer.push({event:'buchung-step-change','buchung-step':iStep});window.location.replace($.document_path+'/start/form.reiserequest.php?t1='+$('#t1').val()+'&t4='+$('#t4').val()+'&POSTED0='+$('[name="POSTED0"]').val()+'#2');},onStepOpen:function(iStep){$step=$('[data-booking-step="'+iStep+'"]');
1696window.dataLayer.push({event:'buchung-step-change','buchung-step':iStep});if($step.find('[data-booking-box="versicherung"]').length){Versicherung.getVersicherungen(function(){});} 1697if(iStep==Buchungsstrecke.lastBookStep){if($('[data-book]').data('book').mode=='option'||$('[data-book]').data('book').mode=='buchung'||$('[data-book]').data('book').mode==''){const $option_button=$('<button data-buchung-book-button="option" class="buchung__bookBtn uk-button uk-button-secondary">7 Tage reservieren</button>');$option_button.insertAfter('.buchung__step--last [data-buchung-step-next]');if($('.button__wrap--option').length<1){$option_button.wrap('<div class="button__wrap--option"></div>');$('.button__wrap--option').append('<a href="#" uk-toggle="target: .modal--option-erklaerung">Was bedeutet reservieren?</a>');} 1698else{$('.button__wrap--option').prepend($option_button);} 1699$('<button data-buchung-book-button="book" class="buchung__bookBtn uk-button uk-button-primary">Jetzt buchen</button>').insertAfter('.buchung__step--last [data-buchung-step-next]');} 1700else if($('[data-book]').data('book').mode=='angebot'){$('<button data-buchung-book-button="angebot" class="buchung__bookBtn uk-button uk-button-primary">Jetzt vorausbuchen</button>').insertAfter('[data-buchung-step-next]');} 1701$(document).trigger('buchung-buttons-created');$('[data-buchung-step-next]').hide();} 1702else{$('[data-buchung-step-next]').show();$('[data-buchung-book-button]').remove();} 1703if(iStep==Buchungsstrecke.lastRequestStep){if(Paxconnect.active){if(!$('button[data-paxconnect]').length){$('<button data-paxconnect class="uk-button uk-button-primary">An Paxlounge übertragen</button>').insertBefore('[data-buchung-step-next]');}} 1704if(Bosys.active){if(!$('button[data-bosys]').length){$('<button data-bosys class="uk-button uk-button-primary">An UI.Office übertragen</button>').insertBefore('[data-buchung-step-next]');}} 1705if(window.location.href.indexOf("t1=")===-1){if(Kassenzettel.PreisanfrageStatus!=="OK"){$('button[data-bosys], button[data-paxconnect], button[data-buchung-step-next]').attr('disabled','disabled');$('button[data-buchung-step-next]').html('Reise nicht buchbar');} 1706else{$('button[data-bosys], button[data-paxconnect], button[data-buchung-step-next]').removeAttr('disabled') 1707$('button[data-buchung-step-next]').html('Weiter');}}}},onPageLoad:function(){var iTargetStep=sessionStorage.getItem('buchungTargetStep');if(iTargetStep!=null){if($('[data-booking-step="'+iTargetStep+'"]').length){if(iTargetStep!=$('.buchung__step--active').data('booking-step')){Buchungsstrecke.Schritte.goToStep(iTargetStep);}}} 1708else{if($('main').hasClass('reiserequest')){iTargetStep=1;} 1709else if($('main').hasClass('reiseprint')){iTargetStep=6;} 1710else{iTargetStep=Buchungsstrecke.firstBookStep;}} 1711Buchungsstrecke.Schritte.initFortschrittsanzeige(iTargetStep);Buchungsstrecke.Schritte.onStepOpen(iTargetStep);sessionStorage.removeItem('buchungTargetStep');},validateStep:function(iStep,iNextStep){var bValid=true;if(iNextStep<iStep){return true;} 1712else{$('[data-booking-step="'+iStep+'"] [data-booking-box]').each(function(){if(!Buchungsstrecke.Schritte.validateBox($(this))){bValid=false;}});if(!bValid){$('html,body').animate({scrollTop:$('[data-booking-box].not-valid').eq(0).offset().top},400);} 1713return bValid;}},validateBox:function($box){sName=$box.data('booking-box');switch(sName){case'teilnehmer':var valid=true;var sTeiln_nr=$box.data('teiln_nr');$('[data-booking-box="'+sName+'"][data-teiln_nr="'+sTeiln_nr+'"]').find('input, select').each(function(i,v){valid=Reisebook.validator.element(v)&&valid;});if(!valid){$box.addClass('not-valid');return false;} 1714else{$box.removeClass('not-valid');Reisebook.Form.copyAdress($box);Form.assembleStreetInfo($box);return true;} 1715break;case'versicherung':var valid=true;if($('#VERSICHERUNGEN').length!=0){for(var i=1;i<=parseInt($('[data-book]').data('book').teilnehmer);i++){if($('[tos-versicherung][data-teilnehmer="'+i+'"]:checked').length==0){$('[tos-versicherung][data-teilnehmer="'+i+'"]').addClass('error') 1716console.warn('No Insurance chosen for Teiln '+i);$('html, body').animate({scrollTop:$box.offset().top-500},400);valid=false;}} 1717if(!valid){$box.addClass('not-valid');} 1718else{$box.removeClass('not-valid');} 1719return valid;} 1720break;default:return true;}},initFortschrittsanzeige:function(iStep){$('[data-buchung-fortschritt="'+iStep+'"]').addClass('active');var iDoneSteps=Buchungsstrecke.oStoredData.cntStepsDone;if(iDoneSteps>1){for(var i=1;i<=iDoneSteps;i++){$('[data-buchung-fortschritt="'+i+'"]').addClass('done');}}},updateFortschrittsanzeige:function(iStep,iNewStep){$('[data-buchung-fortschritt="'+iStep+'"]').removeClass('active').addClass('done');Buchungsstrecke.oStoredData.cntStepsDone=iStep;$('[data-buchung-fortschritt="'+iNewStep+'"]').addClass('active');}},Notiz:{init:function(){if(Buchungsstrecke.oStoredData.oNotiz!=""){Buchungsstrecke.Notiz.reloadData();} 1721$('[data-book-note]').change(function(){Buchungsstrecke.Notiz.onFieldChange($(this));});$('[data-teilnehmer-verpflegung-select]').on('change',function(){Buchungsstrecke.Notiz.onFieldChange($(this));});},onFieldChange:function($elem){if(Buchungsstrecke.oStoredData.oNotiz==undefined){Buchungsstrecke.oStoredData.oNotiz={};} 1722var sElemID=$elem.prop('id');if($elem.attr("type")=="checkbox"){var sLabel=sElemID;var sValue="";if($elem.is(':checked')){if($elem.data('book-note')==""){sValue=$('label[for="'+sElemID+'"]').text();} 1723else{sValue=$elem.data('book-note');} 1724Buchungsstrecke.oStoredData.oNotiz[sLabel]=sValue;} 1725else{delete Buchungsstrecke.oStoredData.oNotiz[sLabel];}} 1726else if($elem.is('select')){let label=sElemID;let value=$elem.val();if(value!=''){Buchungsstrecke.oStoredData.oNotiz[label]=value;} 1727else{delete Buchungsstrecke.oStoredData.oNotiz[label];}} 1728else{sValue=$('#BOOKWUNSCH').val();if(sValue!=""){Buchungsstrecke.oStoredData.oNotiz.BOOKWUNSCH=sValue;} 1729else{delete Buchungsstrecke.oStoredData.oNotiz.BOOKWUNSCH;}}},reloadData:function(){$.each(Buchungsstrecke.oStoredData.oNotiz,function(key,val){var $elem=$('#'+key);if($elem.length){switch($elem.prop('type')){case"checkbox":$elem.prop('checked',true);break;default:$elem.val(val);break;}}});},updateInput:function(){var sValue="";if(Buchungsstrecke.oStoredData.oNotiz!=undefined){if('BOOKWUNSCH'in Buchungsstrecke.oStoredData.oNotiz){sValue=Buchungsstrecke.oStoredData.oNotiz.BOOKWUNSCH+'; ';} 1730$.each(Buchungsstrecke.oStoredData.oNotiz,function(key,val){if(key!="BOOKWUNSCH"){sValue+=val+'; ';}});$('#BOOK_NOTIZ').val(sValue);}}},hideEmptyBoxes:function(){$('.buchung__box').each(function(){var $box=$(this),sBoxIdentifier=$box.data('booking-box'),bHide=false;switch(sBoxIdentifier){case'optionale_leistungen':if($box.find('[data-reise-leistung][data-anzeigen="1"]').length==0){bHide=true;} 1731break;case'projekte':if($box.find('[data-reise-leistung][data-anzeigen="1"]').length==0){bHide=true;} 1732break;case'zusatzprogramme':if($box.find('[data-zusatzprogramm]').length==0){bHide=true;} 1733break;default:} 1734if(bHide==true){$box.hide();}});}} 1735$(function(){Reiseunterlagen.init();}) 1736var Reiserequest={init:function(){Reiserequest.Reisezeitraum.init();if(Reiserequest.Reisezeitraum.valid){Reiserequest.Zimmer.init();Leistungen.init();} 1737Reiserequest.initMSBButtons();Reiserequest.Teilnehmerzuordnung.init();Gutschein.init('[data-booking-box="gutschein"]');
1737Reiserequest.Zusatzprogramme.init();if(Buchungsstrecke.oStoredData.returnToRequest){Kassenzettel.blocks.selectionRestored=false;KeepAlive.get("Reiserequest");Reiserequest.Zusatzprogramme.reactivateSelection();Kassenzettel.blocks.selectionRestored=true;Buchungsstrecke.oStoredData.returnToRequest=false;} 1738KeepAlive.init('Reiserequest',$('.request__form'));},Reisezeitraum:{valid:false,reisebeginn:'',reiseende:'',reisedauer:'',init:function(){if($('#REISEBEGINN').length&&$('#REISEBEGINN').val()!==""){Reiserequest.Reisezeitraum.valid=true;Reiserequest.Reisezeitraum.reisebeginn=moment($('#REISEBEGINN').val(),'DD.MM.YYYY');Reiserequest.Reisezeitraum.reisedauer=$('#REIDAUER').val();Reiserequest.Reisezeitraum.reiseende=Reiserequest.Reisezeitraum.calcReiseende();$('#REISEENDE').val(Reiserequest.Reisezeitraum.reiseende.format('DD.MM.YYYY'));$('[data-reisezeitraum]').html(Reiserequest.Reisezeitraum.reisebeginn.format('dd DD.MM.YYYY')+' – '+Reiserequest.Reisezeitraum.reiseende.format('dd DD.MM.YYYY'))} 1739else{Buchungsstrecke.$hinweisModal.show();}},calcReiseende:function(){var reise_beginn=Reiserequest.Reisezeitraum.reisebeginn;var reise_dauer=Reiserequest.Reisezeitraum.reisedauer;var the_date=moment(reise_beginn,'DD.MM.YYYY').add(reise_dauer,'days');return the_date;}},oZimmerLeistungen:['P','L','H','UV','UN','AP','VP'],oZimmerHauptLeistungen:['P'],sCoderubrikZimmer:"69",Zimmer:{oZugelasseneKombinationen:{"1":{"1":["EZ","HD","EX","EV"]},"2":{"1":["DZ","DX","DV"],"2":["EZ|EZ","EX|EX","EV|EV"]},"3":{"2":["DZ|EZ","DZ|HD","DX|EX","EV|DV","DV|EV"],"3":["EZ|EZ|EZ","EX|EX|EX","EV|EV|EV"]},"4":{"2":["DZ|DZ","DX|DX","DV|DV"],"3":["DZ|EZ|EZ","DX|EX|EX","EV|EV|DV"],"4":["EZ|EZ|EZ|EZ","EX|EX|EX|EX","EV|EV|EV|EV"]}},init:function(){$('#ANZAHL_ERWACHSENE, #ANZAHL_KINDER, #ANZAHL_BABY').on('change',function(){Reiserequest.Zimmer.calcMinMax();Reiserequest.Teilnehmerzuordnung.setCheckboxes();});$('#ANZAHL_ZIMMER').on('change',function(){});$('#ANZAHL_ZIMMER').on('increase',function(){$(document).attr('data-kassenzettel-blocked',true).data('kassenzettel-block-anzahl-zimmer-change',true);$.each(Reiserequest.oZimmerLeistungen,function(i,sAnf){$('[data-reise-leistung][data-anforderung="'+sAnf+'"]').find('[data-msb-button][data-action="add"]').click();});$(document).attr('data-kassenzettel-blocked',false).data('kassenzettel-block-anzahl-zimmer-change',false);Reiserequest.Teilnehmerzuordnung.preselect();});$('#ANZAHL_ZIMMER').on('decrease',function(){$(document).attr('data-kassenzettel-blocked',true).data('kassenzettel-block-anzahl-zimmer-change',true);$.each(Reiserequest.oZimmerLeistungen,function(i,sAnf){$('[data-reise-leistung][data-anforderung="'+sAnf+'"]').find('[data-msb-button][data-action="remove"]').click();});$(document).attr('data-kassenzettel-blocked',false).data('kassenzettel-block-anzahl-zimmer-change',false);Reiserequest.Teilnehmerzuordnung.preselect();});},calcMinMax:function(callback){var $input=$('#ANZAHL_ZIMMER'),iMax=$('#ANZAHL_ERWACHSENE').val(),iMin=Math.round(iMax/2);$input.attr('max',iMax);$input.attr('min',iMin);$input.trigger('change');if(callback&&typeof(callback)==="function"){callback();}}},Teilnehmerzuordnung:{init:function(){Reiserequest.Teilnehmerzuordnung.setCheckboxes();$('body').on('change','[data-teilnehmerzuordnung-ckb]',function(){var $leistung=$(this).parents('[data-reise-leistung]');var iTeiln=$(this).val();var sID=$(this).attr('id');Reiserequest.Teilnehmerzuordnung.updateAllInputs($(this));});},setCheckboxes:function(){$(document).attr('data-kassenzettel-blocked',true).data('kassenzettel-block-tnz-check',true);var iErwachsene=parseInt($('#ANZAHL_ERWACHSENE').val()),iKinder=0,iPersonen=iErwachsene+iKinder,oPersonen={};for(var i=1;i<=iPersonen;
1739i++){if(i<=iErwachsene)oPersonen[i]="erw";if(i>iErwachsene&&i<=iErwachsene+iKinder)oPersonen[i]="kind";} 1740$('[data-reise-leistung][data-setze-anzahl="F"]').each(function(){var $leistung=$(this),iLeistungsId=$leistung.data('leistung-id'),$tnzContainer=$leistung.find('[data-teilnehmerzuordnung-container]');$tnzContainer.each(function(){var $container=$(this),$chkboxContainer=$container.find('[data-teilnehmerzuordnung-checkboxes]'),sSuffix=($container.attr('data-suffix')!="")?"_"+$container.attr('data-suffix'):"",arChkboxState=[];$chkboxContainer.find('[data-teilnehmer] input[type="checkbox"]').each(function(){arChkboxState.push($(this).prop('checked'));});$chkboxContainer.empty();$.each(oPersonen,function(iTeiln,sTyp){$chkboxContainer.append('<span data-teilnehmer="'+iTeiln+'" data-teilnehmer-typ="'+sTyp+'" class="teilnehmerzuordnung__teiln"><input type="checkbox" data-teilnehmerzuordnung-ckb id="tnz_'+iLeistungsId+'_'+iTeiln+sSuffix+'" value="'+iTeiln+'">'+'<label class="uk-flex uk-flex-middle" for="tnz_'+iLeistungsId+'_'+iTeiln+sSuffix+'" tabindex="0">Gast '+iTeiln+'</label></span>');$chkboxContainer.find('[data-teilnehmer="'+iTeiln+'"] input[type="checkbox"]').prop('checked',arChkboxState[parseInt(iTeiln)-1]);});});});Reiserequest.Teilnehmerzuordnung.preselect();$(document).attr('data-kassenzettel-blocked',false).data('kassenzettel-block-tnz-check',false);$(document).trigger('refresh-kassenzettel','Anzahl Zimmer/Teiln gen�ndert - Checkboxen upgedated');},updateInput:function($chkbox){var $container=$chkbox.parents('[data-teilnehmerzuordnung-container]'),iLeistungsId=$container.data('rleid');var arTNZ=[];$container.find('[data-teilnehmer]').each(function(){var $chkbox=$(this).find('input[type="checkbox"]');if($chkbox.prop('checked'))arTNZ.push($chkbox.val());});$container.find('[data-teilnehmerzuordnung-input]').val(arTNZ.join(","));$(document).trigger('refresh-kassenzettel',"Teilnehmerzuordnung ge�ndert (update Input)"+$chkbox.parents('[data-reise-leistung]').data('leistung'));},updateAllInputs:function(){$('[data-teilnehmerzuordnung-container]').each(function(){var $container=$(this);var arTNZ=[];$container.find('[data-teilnehmer]').each(function(){var $chkbox=$(this).find('input[type="checkbox"]');if($chkbox.prop('checked'))arTNZ.push($chkbox.val());});$container.find('[data-teilnehmerzuordnung-input]').val(arTNZ.join(","));});$(document).trigger('refresh-kassenzettel',"Teilnehmerzuordnung ge�ndert (update all Inputs)");},preselect:function(){$(document).attr('data-kassenzettel-blocked',true).attr('data-kassenzettel-block','tnz_preselect');;var iAnzahlPersonen=$('#ANZAHL_ERWACHSENE').val();var iAnzahlZimmer=$('#ANZAHL_ZIMMER').val();$('[data-reise-leistung][data-setze-anzahl="F"]').each(function(){var $leistung=$(this);var $zimmerSelect=$leistung.find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').first();var sDZValue=$zimmerSelect.find('option[data-code="DZ"]').val();var sEZValue=$zimmerSelect.find('option[data-code="EZ"]').val();$leistung.find('[data-teilnehmerzuordnung-ckb]').prop('checked',false) 1741var oPresets={"1":{"1":function(){$zimmerSelect.val(sEZValue);$zimmerSelect.trigger('chosen:updated');$leistung.find('[data-teilnehmerzuordnung-ckb][value="1"]').prop('checked',true);}},"2":{"1":function(){$zimmerSelect.val(sDZValue);$zimmerSelect.trigger('chosen:updated');$leistung.find('[data-teilnehmerzuordnung-ckb][value="1"], [data-teilnehmerzuordnung-ckb][value="2"]').prop('checked',true);},"2":function(){$leistung.find('[data-msb]').each(function(i,v){$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sEZValue).trigger('chosen:updated');$(this).find('[data-teilnehmerzuordnung-ckb][value="'+(parseInt(i)+1)+'"]').prop('checked',true);});}},"3":{"2":function(){$leistung.find('[data-msb]').each(function(i,v){if(i==0){$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sDZValue).trigger('chosen:updated');$(this).find('[data-teilnehmerzuordnung-ckb][value="1"],[data-teilnehmerzuordnung-ckb][value="2"]').prop('checked',true);} 1742else{$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sEZValue).trigger('chosen:updated');$(this).find('[data-teilnehmerzuordnung-ckb][value="3"]').prop('checked',true);;}});},"3":function(){$leistung.find('[data-msb]').each(function(i,v){$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sEZValue).trigger('chosen:updated');$(this).find('[data-teilnehmerzuordnung-ckb][value="'+(parseInt(i)+1)+'"]').prop('checked',true);});}},"4":{"2":function(){$leistung.find('[data-msb]').each(function(i,v){$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sDZValue).trigger('chosen:updated');if(i==0){$(this).find('[data-teilnehmerzuordnung-ckb][value="1"], [data-teilnehmerzuordnung-ckb][value="2"]').prop('checked',true);} 1743else{$(this).find('[data-teilnehmerzuordnung-ckb][value="3"], [data-teilnehmerzuordnung-ckb][value="4"]').prop('checked',true);}});},"3":function(){$leistung.find('[data-msb]').each(function(i,v){switch(i){case 0:$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sDZValue).trigger('chosen:updated');$(this).find('[data-teilnehmerzuordnung-ckb][value="1"],[data-teilnehmerzuordnung-ckb][value="2"]').prop('checked',true);break;case 1:$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sEZValue).trigger('chosen:updated');$(this).find('[data-teilnehmerzuordnung-ckb][value="3"]').prop('checked',true);break;case 2:$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sEZValue).trigger('chosen:updated');$(this).find('[data-teilnehmerzuordnung-ckb][value="4"]').prop('checked',true);break;default:break;}});},"4":function(){$leistung.find('[data-msb]').each(function(i,v){$(this).find('select[data-corid='+Reiserequest.sCoderubrikZimmer+']').val(sDZValue).trigger('chosen:updated');$(this).find('[data-teilnehmerzuordnung-ckb][value="'+(parseInt(i)+1)+'"]').prop('checked',true);})}}};oPresets[iAnzahlPersonen][iAnzahlZimmer]();});Reiserequest.Teilnehmerzuordnung.updateAllInputs();if(!$(document).data('kassenzettel-block-tnz-check')){$(document).attr('data-kassenzettel-blocked',fal
1743se).attr('data-kassenzettel-block','');$(document).trigger('refresh-kassenzettel','Anzahl Zimmer/Teiln gen�ndert - TNZ Preset');}}},initMSBButtons:function(){$('[data-reise-leistung][data-setze-anzahl="F"], [data-reise-leistung][data-setze-anzahl="M"]').find('[data-msb-button][data-action="add"]').off('click').on('click',function(e){e.preventDefault();var rleid=$(this).parents('[data-reise-leistung]').data('id');var original_rleblock=$('#ROW_MSB_'+rleid);original_rleblock.find('select').each(function(){$(this).chosen("destroy");});rleblock=original_rleblock.clone(true);rleblock.attr('data-suffix',$('#HID_'+rleid).val());rleblock.find('*[id]').addBack().each(function(){var $this=$(this);var suffix=$('#HID_'+rleid).val();$this.attr('id',$this.attr('id')+'_'+suffix);});rleblock.find('*[name]').each(function(){var $this=$(this);var suffix=$('#HID_'+rleid).val();var pos=$this.attr('name').indexOf('[]');if(pos==-1){$this.attr('name',$this.attr('name')+'_'+suffix);} 1744else{$this.attr('name',$this.attr('name').substring(0,pos)+'_'+suffix+'[]');}});rleblock.find('*[data-suffix]').each(function(){var suffix=$('#HID_'+rleid).val();$(this).attr('data-suffix',suffix);});rleblock.find('*[for]').each(function(){var $this=$(this);var suffix=$('#HID_'+rleid).val();$this.attr('for',$this.attr('for')+'_'+suffix);});rleblock.find(':checkbox').each(function(){$(this)[0].checked=false;});rleblock.find('select').each(function(){$(this).chosen({disable_search_threshold:100,inherit_select_classes:true});});original_rleblock.find('select').each(function(){$(this).chosen({disable_search_threshold:100,inherit_select_classes:true});});$(this).parent().before(rleblock);$('#HID_'+rleid).incChar();if(!$(document).data('kassenzettel-block-anzahl-zimmer-change')){Reiserequest.Teilnehmerzuordnung.preselect();}});$('[data-reise-leistung][data-setze-anzahl="F"], [data-reise-leistung][data-setze-anzahl="M"]').find('[data-msb-button][data-action="remove"]').on('click',function(e){e.preventDefault();var rleid=$(this).parents('[data-reise-leistung]').data('id');var suffix=$('#HID_'+rleid).decChar().val();$('#ROW_MSB_'+rleid+'_'+suffix).remove();if(!$(document).data('kassenzettel-block-anzahl-zimmer-change')){Reiserequest.Teilnehmerzuordnung.preselect();}});},Zusatzprogramme:{init:function(){$('[data-zusatzprogramm]').each(function(){const $this=$(this);$this.find('[data-reise-leistung] [data-reise-leistung__toggle]').prop('checked',false);Reiserequest.Zusatzprogramme.checkModal($this);});Kassenzettel.blocks.zusatzProgrammeInitiated=true;$(document).trigger('refresh-kassenzettel','Zusatzprogramme init complete');$('[data-zusatzprogramm-toggle]').on('change',function(){Reiserequest.Zusatzprogramme.toggleProgramm($(this),$(this).prop('checked'));});},checkModal:function($zusatzprogramm){$zusatzprogramm.find('[data-baustein-modal]').each(function(){const $modal=$(this);const leistung_id=$modal.data('baustein-modal');if($.trim($modal.html())==''){$zusatzprogramm.find('[data-baustein-modal-toggle="'+leistung_id+'"]').remove();$modal.remove();}})},toggleProgramm:function($chkbox,bState){var $zusatzprogramm=$chkbox.parents('[data-zusatzprogramm]'),sTyp=$zusatzprogramm.data('zp-typ'),$body=$zusatzprogramm.find('.zusatzprogramm__body');if(bState){$(document).attr('data-kassenzettel-blocked',true).attr('data-kassenzettel-block','zp_toggle');$body.find('[data-reise-leistung][data-pflichtleistung="1"] [data-reise-leistung__toggle]').each(function(){$(this).prop('checked',true);Leistungen.toggle($(this));});$body.find('[data-wahlpflicht]').each(function(){$(this).find('.wahlpflicht__item input[type="radio"]').first().prop('checked','true').trigger('change');}) 1745Reiserequest.Zusatzprogramme.deactivateSameType(sTyp,$zusatzprogramm.data('zp-reicode'));$body.slideDown();Leistungen.Zusatzprogramme.Zimmerauswahl.hide();$(document).attr('data-kassenzettel-blocked',false).attr('data-kassenzettel-block','');} 1746else{$body.slideUp();$body.find('[data-reise-leistung] [data-reise-leistung__toggle]').prop('checked',false);} 1747$(document).trigger('refresh-kassenzettel','Zusatzprogramm toggle: '+$zusatzprogramm.data('zp-reicode')+' '+bState);},deactivateSameType:function(sTyp,sSelectedReicode){$(document).attr('data-kassenzettel-blocked',true).attr('data-kassenzettel-block','zp_deactivateSameType');var iCnt=$('[data-zusatzprogramm][data-zp-typ="'+sTyp+'"]').length;$('[data-zusatzprogramm][data-zp-typ="'+sTyp+'"]').each(function(){if($(this).data('zp-reicode')!=sSelectedReicode){$(this).removeClass('is--active');
1747$(this).find('[data-zusatzprogramm-toggle]').prop('checked',false).trigger('change');} 1748iCnt--;});if(iCnt==0){$(document).attr('data-kassenzettel-blocked',false).attr('data-kassenzettel-block','');}},reactivateSelection:function(){}},RailAndFly:{AbflughaefenWithoutRailAndFly:["GZ","IN","LZ","VI","GF","ZR","LU","BU"],init:function(){const leistung_abflughafen=$('[data-reise-leistung][data-anforderung="AF"]');const leistung_rail_and_fly=$('[data-reise-leistung][data-anforderung="RF"]');leistung_abflughafen.on('change','[data-corid="57"]',function(){const $this=$(this);const flughafenCode=$this.find('option:selected').data('code');if(Reiserequest.RailAndFly.AbflughaefenWithoutRailAndFly.includes(flughafenCode)){leistung_rail_and_fly.slideUp().find('[data-reise-leistung__toggle]').prop('checked',false).trigger('change');} 1749else{leistung_rail_and_fly.slideDown().find('[data-reise-leistung__toggle]').prop('checked',true).trigger('change');}});leistung_abflughafen.find('[data-corid="57"]').trigger('change');}}} 1750function SortByRang(a,b){return((a.rang<b.rang)?-1:((a.rang>b.rang)?1:0));} 1751$(document).on('after-keep-alive-get',function(){Reiserequest.RailAndFly.init();});var Reisebook={validator:'',hasKundenAccount:false,init:function(){$(document).trigger('refresh-kassenzettel','Initialer Book load') 1752Reisebook.Form.init() 1753Reisebook.Kundenlogin.init() 1754Passolution.init() 1755if(Base.isDomain('b2c')){Reisebook.Kundendaten.init()} 1756$('body').on('click','[data-buchung-book-button]',function(e){e.preventDefault() 1757var sMode=$(this).data('buchung-book-button') 1758switch(sMode){case'angebot':$('#AKTIONCODE').val('A') 1759break 1760case'option':$('#AKTIONCODE').val('O') 1761break 1762case'book':break 1763default:break} 1764Buchungsstrecke.Notiz.updateInput() 1765$('#FORMREISEBOOK').submit()}) 1766if(Kunde.LoggedIn){$('[data-buchung-box="kunden-register"]').remove()} 1767if(typeof oMerkmale!=='undefined'&&typeof oMerkmale.BuchungShowPassFields!=='undefined'){let showPersoFields='AUSWEISABFRAGE'in oMerkmale.BuchungShowPassFields 1768let showPassFields='PASSABFRAGE'in oMerkmale.BuchungShowPassFields 1769if(showPersoFields){$('body').addClass('has--persofields')} 1770if(showPassFields){$('body').addClass('has--passfields')}}},Form:{init:function(){Reisebook.Form.validate() 1771Reisebook.Form.intlPhoneNumber.init() 1772Form.Pflichtfelder.mark($('#FORMREISEBOOK')) 1773Base.initAutoSenseDate() 1774$('[data-copy-adress]').on('change',function(){Reisebook.Form.toggleAdressFields($(this))})},intlPhoneNumber:{Inputs:{Kunde:{},Teilnehmer:{},},init:function(){$('[data-intl-tel]').each(function(){const $input=$(this) 1775const input_type=$input.data('intl-tel').type 1776const hidden_input=$input.data('intl-tel').hiddenInput 1777const $land_trigger=$('[data-set-intl-tel="#'+$input.attr('id')+'"]') 1778const intl_input=window.intlTelInput($input[0],{loadUtils:()=>import('https://cdn.jsdelivr.net/npm/[email protected]/dist/js/utils.min.js'),countryOrder:['de','at','ch'],initialCountry:'de',strictMode:true,separateDialCode:true,formatAsYouType:true,}) 1779$input.data('iti',intl_input) 1780$input[0].addEventListener('paste',(e)=>{setTimeout(()=>{const val=$input[0].value 1781if(val.startsWith('+')){intl_input.setNumber(val)}},10)}) 1782if(input_type=='kunde'){Reisebook.Form.intlPhoneNumber.Inputs.Kunde[$input.attr('id')]=intl_input}else{Reisebook.Form.intlPhoneNumber.Inputs.Teilnehmer[$input.attr('id')]=intl_input} 1783$land_trigger.on('change',function(e){const land=$(this).val() 1784intl_input.setSelectedCountry(land) 1785$(hidden_input).val(intl_input.getNumber())}) 1786$input.on('change focusout',function(){$(hidden_input).val(intl_input.getNumber())}) 1787$input.on('countrychange',function(){if(input_type=='kunde'){const land=intl_input.getSelectedCountry() 1788Object.values(Reisebook.Form.intlPhoneNumber.Inputs.Teilnehmer).forEach((i)=>{if(i.getNumber()===''){i.setSelectedCountry(land.iso2)}})}})})},},validate:function(){Reisebook.validator=$('#FORMREISEBOOK').validate({ignore:':hidden:not([tos-chosen], .validateHidden, [type="checkbox"])',invalidHandler:function(event,validator){console.warn('Form not valid')},submitHandler:function(form){Base.PageSpinner.show() 1789form.submit()},rules:{RT_ADRANREDE_1:'required',RT_ADRNAME1_1:'required',RT_ADRNAME_1:'required',ADRLAND:'required',STRASSE:'required',HAUSNR:'required',ADRSTRASSE:'required',ADRPLZ:{postcode:true,required:true,},ADRORT:'required',ADREMAIL:{required:true,regex:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,},ADRHANDY:'required',ADRHANDY_temp:'required',RT_GEBDATUM_1:{required:true,date:true,maxAge:120,},RT_ADRNATIONALITY_1:'required',RT_ADREXPIREDATE_1:{date:true,},RT_ADRAUTHORITYDATE_1:{date:true,},RT_ADRPERSOAUTHORITYDATE_1:{date:true,},RT_ADRPERSOEXPIREDATE_1:{date:true,},RT_ADRANREDE_2:'required',RT_ADRVORNAME_2:'required',RT_ADRNACHNAME_2:'required',RT_ADRPLZ_2:{postcode:true,required:true,},RT_ADRORT_2:'required',RT_STRASSE_2:'required',RT_HAUSNR_2:'required',RT_HANDY_2:'required',RT_ADREMAIL_2:{required:true,regex:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,},RT_GEBDATUM_2:{required:true,date:true,maxAge:120,},RT_ADRNATIONALITY_2:'required',RT_ADREXPIREDATE_2:{date:true,},RT_ADRAUTHORITYDATE_2:{date:true,},RT_ADRPERSOAUTHORITYDATE_2:{date:true,},RT_ADRPERSOEXPIREDATE_2:{date:true,},RT_ADRANREDE_3:'required',RT_ADRVORNAME_3:'required',RT_ADRNACHNAME_3:'required',RT_ADRPLZ_3:{postcode:true,required:true,},RT_ADRORT_3:'required',RT_STRASSE_3:'required',RT_HAUSNR_3:'required',RT_HANDY_3:'required',RT_ADREMAIL_3:{required:true,regex:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,},RT_GEBDATUM_3:{required:true,date:true,maxAge:120,},RT_ADRNATIONALITY_3:'required',RT_ADREXPIREDATE_3:{date:true,},RT_ADRAUTHORITYDATE_3:{date:true,},RT_ADRPERSOAUTHORITYDATE_3:{date:true,},RT_ADRPERSOEXPIREDATE_3:{date:true,},RT_ADRANREDE_4:'required',RT_ADRVORNAME_4:'required',RT_ADRNACHNAME_4:'required',RT_ADREMAIL_4:{postcode:true,required:true,},RT_ADRORT_4:'required',RT_STRASSE_4:'required',RT_HAUSNR_4:'required',RT_HANDY_4:'required',RT_EMAIL_4:{required:true,regex:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,},RT_GEBDATUM_4:{required:true,date:true,maxAge:120,},RT_ADRNATIONALITY_4:'required',RT_ADREXPIREDATE_4:{date:true,},RT_ADRAUTHORITYDATE_4:{date:true,},RT_ADRPERSOAUTHORITYDATE_4:{date:true,},RT_ADRPERSOEXPIREDATE_4:{date:true,},EINWILLIGUNG:'required',},}) 1790if(Base.getKundenModus()=='Agentur'){const $emailFielder=$('#FORMREISEBOOK').find('[name="ADREMAIL"], [name^="RT_ADREMAIL_"]') 1791const message='Hinweis: Bitte trage die E-Mailadresse des Reisegastes ein!' 1792const warningClass='email-warning-message' 1793const domainKeywords=/ruefa|holiday|sonnen|adac|buehler\.de|der\.com|derpart|dsar\.de|e-kolumbus|fairlines|ferienwelt|flammang\.lu|flug|globetrotter|hebbel\.de|hotelplan\.ch|intaba|journaway|kuoni|lcc|meimberg\.de|meridiana\.de|mondial|reise|safari|schauinsland|schmetterling|sonnenklar|sonneundmehr\.com|soorb\.de|sunshine|take-a-cruise|thomascook|tour|travel|tui|urlaub|voyages/i 1794const emailFormatRegex=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;$emailFielder.each(function(){$(this).off('blur.agenturModus').on('blur.agenturModus',function(){const value=$(this).val() 1795const $element=$(this) 1796let $warningContainer=$element.next(`.${warningClass}`) 1797if($warningContainer.length===0){$warningContainer=$(`<div class="${warningClass}"style="color: orange; margin-top: 5px;"></div>`) 1798$element.after($warningContainer)} 1799if(value.length===0||!emailFormatRegex.test(value)){$warningContainer.hide() 1800$element.removeClass('input-warning') 1801return} 1802const domain=value.substring(value.lastIndexOf('@')+1) 1803if(domainKeywords.test(domain)){$warningContainer.text(message).show() 1804$element.addClass('input-warning')}else{$warningContainer.hide() 1805$element.removeClass('input-warning')}})})}},toggleAdressFields:function($ckb){var $teiln=$ckb.parents('[data-booking-box]'),$adressBlock=$teiln.find('.adressblock') 1806if($ckb.prop('checked')==true){$adressBlock.slideDown()}
1806else{$adressBlock.slideUp()}},copyAdress:function($teilnBox){var oAdressDaten={} 1807$('[data-booking-box="teilnehmer"][data-teiln_nr="1"] .adressblock').find('input[type="text"]:not(.chosen-search-input), select').each(function(){oAdressDaten[$(this).attr('tos-field-type')]=$(this).val()}) 1808var $adressBlock=$teilnBox.find('.adressblock') 1809if($teilnBox.find('[data-copy-adress]').prop('checked')!=true){$.each(oAdressDaten,function(sFieldType,sVal){$adressBlock.find('[tos-field-type="'+sFieldType+'"]').val(sVal).trigger('change')})}},},Kundendaten:{anreden:{F:'Frau',H:'Herr',},oKundendaten:'',init:function(){$('#KUNDENABFRAGE').show() 1810Reisebook.Kundendaten.fillLoadForm() 1811$('body').on('click','#KUNDENABFRAGE_CLEAR',function(e){e.preventDefault() 1812$('form#FORM_KUNDENABFRAGE input[type=text], form#FORM_KUNDENSUCHE input[type=text]').val('')})},search:function(form){$.ajax({url:$.document_path+'/start/jx_ajax.php?cube=jx_kunden&cmd=suche.kunden.liste',type:'get',data:$(form).serialize(),dataType:'json',}).done(function(resp){$('#kundensuche-results ul').empty() 1813var $list='' 1814$list+="<li uk-grid class='uk-grid-small tos-bold'><div class='uk-width-2-16'>Kundennr</div><div class='uk-width-1-16'></div><div class='uk-width-4-16'>Name</div><div class='uk-width-4-16'>Ort</div><div class='uk-width-4-16'>E-Mail</div></li>" 1815$.each(resp,function(i,kundendaten){$list+="<li data-kundendaten='"+ 1816kundendaten.ADRKUNDENNR+"' uk-grid class='uk-grid-small tos-pointer tos-boldOnHover'>" 1817$list+="<div class='uk-width-2-16'>"+kundendaten.ADRKUNDENNR+'</div>' 1818$list+="<div class='uk-width-1-16'>"+kundendaten.ADRTYPE+'</div>' 1819$list+="<div class='uk-width-4-16'>"+kundendaten.ADRNAME+', '+kundendaten.ADRVORNAME+'</div>' 1820$list+="<div class='uk-width-4-16'>"+kundendaten.ADRPLZ+' '+kundendaten.ADRORT+'</div>' 1821$list+="<div class='uk-width-4-16'>"+kundendaten.ADREMAIL+'</div>' 1822$list+='</li>'}) 1823$('#kundensuche-results ul').html($list) 1824UIkit.modal('#kundensuche-results').show()})},fillLoadForm:function(){$('body').on('click','[data-kundendaten]',function(){var kdnr=$(this).data('kundendaten') 1825$('[name="ADRKUNDENNR"]').val(kdnr) 1826$('#FORM_KUNDENABFRAGE').submit() 1827UIkit.modal('#kundensuche-results').hide()})},load:function(form,mode='dashboard'){let data={} 1828switch(mode){case'buchung':data={ADRKUNDENNR:Reisebook.Kundenlogin.Kunde.Nr} 1829break 1830case'kunde':data={ADRKUNDENNR:oKundenData.nr} 1831break 1832default:data=$(form).serialize() 1833break} 1834$.ajax({url:$.document_path+'/start/jx_ajax.php?cube=jx_kunden&cmd=suche.kunden',type:'get',data:data,dataType:'json',}).done(function(response){if(Object.keys(response).length==0){UIkit.notification({message:'Es wurden keine Daten zur Kundennummer gefunden',status:'danger',pos:'top-center',timeout:3000,}) 1835return false} 1836Reisebook.Kundendaten.oKundendaten=response[Object.keys(response)[0]] 1837setTimeout(function(){$('[data-booking-box="teilnehmer"]').find('[data-intl-tel]').trigger('change')},500) 1838if(Reisebook?.Kundendaten?.oKundendaten?.ADRISTKUNDEVONAGTNR){$('#ADRISTKUNDEVONAGTNR').val(Reisebook.Kundendaten.oKundendaten.ADRISTKUNDEVONAGTNR)} 1839Reisebook.Kundendaten.ladeTeilndaten(Reisebook.Kundendaten.oKundendaten.ADRID)}) 1840$(document).on('change','[data-load-teilnehmerdaten]',function(){var selectedTeiln=$(this).children('option:selected') 1841var oTeilnDaten=selectedTeiln.data('adt') 1842var iTeilnTargetNr=$(this).parents('[data-booking-box="teilnehmer"]').data('teiln_nr') 1843Reisebook.Kundendaten.setTeilndaten(oTeilnDaten,iTeilnTargetNr)})},completeRechnungsempfaengerData:function(oAdt,oAdr){var oADRFields={ADTLAND:'ADRLAND',ADTPLZ:'ADRPLZ',ADTORT:'ADRORT',ADTSTRASSE:'ADRSTRASSE',ADTZUSATZ:'ADRZUSATZ',} 1844if(oAdt['ADTSTRASSE']==''&&oAdt['ADTPLZ']==''){$.each(oADRFields,function(adt,adr){oAdt[adt]=oAdr[adr]})} 1845oAdt['ADTTEL']=oAdt['ADTTEL']!=''?oAdt['ADTTEL']:oAdr['ADRTEL'] 1846oAdt['ADTMOBIL']=oAdt['ADTMOBIL']!=''?oAdt['ADTMOBIL']:oAdr['ADRHANDY'] 1847oAdt['ADTEMAIL']=oAdt['ADTEMAIL']!=''?oAdt['ADTEMAIL']:oAdr['ADREMAIL'] 1848return oAdt},ladeTeilndaten:function(kdnID){let kundennr=typeof oKundenData!='undefined'&&oKundenData.nr!=undefined?oKundenData.nr:'' 1849$.ajax({url:$.document_path+'/start/jx_ajax.php?cube=jx_kunden&cmd=suche.teilnehmer',type:'get',data:{ADTADRID:kdnID,},dataType:'json',}).done(function(response){var oRechnungsempfaenger 1850if(Object.keys(response).length>
18501){$('.teilnehmerdaten--preview').remove() 1851var $teilnehmerdaten_select=$('<select/>',{class:'teilnehmerdaten--preview uk-width-1-1 uk-margin-bottom','tos-chosen':'','data-load-teilnehmerdaten':'',}).insertAfter('[data-booking-box="teilnehmer"]:not([data-teiln_nr="1"]) .buchung__boxHeader') 1852$('.teilnehmerdaten--preview').chosen({disable_search_threshold:100,inherit_select_classes:true,})} 1853var firstMitreisenderSelected=false 1854$.each(response,function(i,teilnehmerdaten){var gebdat=teilnehmerdaten.ADTGEBDAT!=''?moment(teilnehmerdaten.ADTGEBDAT).format('DD.MM.YYYY'):'' 1855if(teilnehmerdaten.ADTRECHNUNGSEMPFAENGER==1){var oRechnungsempfaengerDaten=teilnehmerdaten 1856oRechnungsempfaengerDaten=Reisebook.Kundendaten.completeRechnungsempfaengerData(oRechnungsempfaengerDaten,Reisebook.Kundendaten.oKundendaten) 1857Reisebook.Kundendaten.setTeilndaten(oRechnungsempfaengerDaten,1)}else{gebdat=gebdat!=''?gebdat+', ':'' 1858var teilnehmer_label=Reisebook.Kundendaten.anreden[teilnehmerdaten.ADTANREDE]+' '+ 1859teilnehmerdaten.ADTTITEL+' '+ 1860teilnehmerdaten.ADTNACHNAME+', '+ 1861teilnehmerdaten.ADTVORNAME+' - '+ 1862gebdat+ 1863teilnehmerdaten.ADTPASSNATIONALITAET 1864$teilnehmerdaten_select.append("<option value='"+ 1865i+"' data-adt='"+ 1866JSON.stringify(teilnehmerdaten)+"'>"+ 1867teilnehmer_label+'</option>') 1868$teilnehmerdaten_select.trigger('chosen:updated') 1869if(!firstMitreisenderSelected){$teilnehmerdaten_select.val($teilnehmerdaten_select.find('option:nth-child(1)').val()).trigger('change') 1870firstMitreisenderSelected=true}}})})},setTeilndaten:function(oDaten,iTeilnNr){var $fieldContainer=$('[data-booking-box="teilnehmer"][data-teiln_nr="'+iTeilnNr+'"]') 1871var oFieldMapping={ADTANREDE:'anrede',ADTITEL:'titel',ADTVORNAME:'vorname',ADTNACHNAME:'nachname',ADTLAND:'land',ADTPLZ:'plz',ADTORT:'ort',ADTSTRASSE:'strasse',ADTZUSATZ:'adrzusatz',ADTMOBIL:'mobile',ADTEMAIL:'email',ADTGEBDAT:'dob',ADTPASSNATIONALITAET:'nationalitaet',ADTPASSNUMMER:'passnr',ADTPASSGUELTIGBISDAT:'passdat',} 1872$.each(oDaten,function(key,val){if(key=='ADTGEBDAT'||key=='ADTPASSGUELTIGBISDAT'){val=val!=''?moment(val).format('DD.MM.YYYY'):''} 1873if(key=='ADTANREDE'){$fieldContainer.find('[tos-field-type="anrede"]').val(Reisebook.Kundendaten.anreden[val]).trigger('chosen:updated')}else if(key=='ADTSTRASSE'){var adresse=val.split(' ') 1874var hausnummer_oder_zusatz=adresse.pop() 1875if($.isNumeric(hausnummer_oder_zusatz)){var strasse=adresse.join(' ') 1876var hausnummer=hausnummer_oder_zusatz 1877var zusatz=''}else{var strasse=adresse.join(' ') 1878var hausnummer=' '+hausnummer_oder_zusatz} 1879$fieldContainer.find('[tos-field-type="strasse_str"]').val(strasse) 1880$fieldContainer.find('[tos-field-type="strasse_nr"]').val(hausnummer)}else{var sfieldType=oFieldMapping[key] 1881var $field=$fieldContainer.find('[tos-field-type="'+sfieldType+'"]') 1882$field.val(val) 1883if($field.is('select')){$field.trigger('chosen:updated')}} 1884if(key=='ADTPASSNATIONALITAET'){$fieldContainer.find('[tos-field-type="nationalitaet"]').trigger('change')}}) 1885$fieldContainer.find('[data-intl-tel]').each(function(){let $this=$(this) 1886$this.data('iti').setNumber($this.val())}) 1887$('[data-booking-box="teilnehmer"] :input').valid()},},Kundenlogin:{Kunde:{},init:function(){if(Kunde.LoggedIn){return} 1888$('[data-rb-kundenlogin-close]').on('click',function(e){e.preventDefault() 1889$('[data-rb-kundenlogin-extend]').slideUp()}) 1890$('[data-rb-kundenlogin-input="password"]').on('keydown',function(event){if(event.key==='Enter'||event.keyCode===13){event.preventDefault() 1891$('[data-rb-kundenlogin-submit]').trigger('click')}}) 1892$('[data-rb-kundenlogin-submit]').on('click',function(e){e.preventDefault() 1893var enteredPassword=$('[data-rb-kundenlogin-input="password"]').val() 1894var encryptedPassword=hex_sha512(enteredPassword) 1895$.ajax({type:'post',url:$.document_path+'/start/jx_ajax.php',data:{cmd:'kunde.login',cube:'jx_kunde',KUNDE_EMAIL:$('[data-rb-kundenlogin-input="email"]').val(),KUNDE_PASSWORT:encryptedPassword,},}).done(function(data){switch(data.status){case'ChangePassword':break 1896case'Invalid':$('[data-rb-kundenlogin-input="password"]').siblings('.uk-alert').fadeOut() 1897let message=kd_form_messages[data.code] 1898$('[data-rb-kundenlogin-input="password"]').after('<div uk-alert class="uk-alert u
1898k-alert-danger">'+message+'</div>') 1899break 1900case'OK':$('[data-rb-kundenlogin-extend]').slideUp() 1901Reisebook.Kundenlogin.Kunde.Nr=data.kunde.kundennummer 1902Reisebook.Kundendaten.load(null,'buchung') 1903Kunde.setLoggedIn() 1904Base.initDomainClasses()}})})},},} 1905$(document).on('refresh-kassenzettel',function(event,sInitiator){clearTimeout(Kassenzettel.ReloadTimer) 1906Kassenzettel.Log.push({caller:sInitiator}) 1907Kassenzettel.ReloadTimer=setTimeout(function(){Kassenzettel.sInitiator=sInitiator 1908$('body').addClass('kassenzettel--loading') 1909Kassenzettel.load() 1910Kassenzettel.Log=[]},500)}) 1911var Kassenzettel={Log:[],ReloadTimer:'',ReloadLeistungen:false,sInitiator:'',blocks:{leistungenInitiated:false,zusatzProgrammeInitiated:false,selectionRestored:true,},sInitiator:'',init:function(){$('.request__form').on('change','[data-reise-leistung] [data-reise-leistung__toggle], [data-reise-leistung] .coderubrik__select, [data-reise-leistung] .anzahl_input',function(){$(document).trigger('refresh-kassenzettel','Leistung ge?ndert: '+ 1912$(this).parents('[data-reise-leistung]').data('leistung'))}) 1913$('body').on('click','[data-kassenzettel-expand]',function(){Kassenzettel.expand()}) 1914Kassenzettel.Leistungen.init()},load:function(){var bLoadPermit=true 1915if($('.request__form').length&&(!Kassenzettel.blocks.leistungenInitiated||!Kassenzettel.blocks.zusatzProgrammeInitiated||!Kassenzettel.blocks.selectionRestored)){bLoadPermit=false} 1916if($(document).attr('data-kassenzettel-blocked')!=true&&bLoadPermit){var arValues=Kassenzettel.getData() 1917var ajax_url=$.document_path+'/start/form.reiserequest.php' 1918if($('[data-book]').length){ajax_url=$.document_path+'/start/form.reiseprint.php'}else if($('[data-print]').length){ajax_url=$.document_path+'/start/form.reiseprint.php'} 1919$.ajax({type:'POST',url:ajax_url,data:arValues,dataType:'html',beforeSend:function(){$('[data-kassenzettel]').addClass('is--loading') 1920$('[data-kassenzettel-modal-trigger]').html('<i class="fa-solid fa-spinner fa-spin-pulse"></i>')},success:function(data){$('[data-kassenzettel]').html(data).removeClass('is--loading') 1921$('[data-kassenzettel-modal-trigger]').html('<i class="fa-solid fa-angle-up"></i>') 1922const $kz=$('[data-kassenzettel]') 1923const $next_step_button=$('[data-booking-step="1"]').find('[data-buchung-step-next]') 1924const $next_step_buttons=$('[data-booking-step]').find('[data-buchung-step-next]') 1925const $fu_modal_beratung_button=$('[data-booking-step="1"]').find('[data-fu-modal-button]') 1926Kassenzettel.PreisanfrageStatus='OK' 1927if($('.kassenzettelLeistung').length===0){Kassenzettel.PreisanfrageStatus='ERROR'}else{if($('.leistung[data-anforderung="FS"]').data('anzeigen')==''&&$('.kassenzettelLeistung[data-leistung-anf="FS"]').length==1){$('.leistung[data-anforderung="FS"], .leistung[data-anforderung="FS"] .leistung__body').show().find('[data-reise-leistung__toggle]').prop('checked',true)} 1928let flug_leistung=$('.leistung[data-anforderung="F"]') 1929let flug_status=flug_leistung.data('status') 1930if(flug_leistung.length&&flug_status=='RQ'){$('.leistung[data-anforderung="AF"], .leistung[data-anforderung="FS"]').attr('data-status','RQ').data('status','RQ')} 1931$('[data-zimmerauswahl-hinweis]').remove() 1932$next_step_button.show() 1933$fu_modal_beratung_button.remove() 1934const $fu_leistungen=$kz.find('[data-leistung][data-status="FU"]') 1935if($fu_leistungen.length&&$fu_leistungen.length>0){const $modal_button=$('<a></a>',{'uk-toggle':'#MODAL_FORM_BERATUNG',class:'uk-button uk-button-primary',text:'Einzelzimmer anfragen','data-fu-modal-button':'',}) 1936if($fu_leistungen.filter(function(){return $(this).data('leistung-anf')=='P'}).length>0){$('[data-leistung-sort-target="pauschal"]').append(`<div class="zimmerauswahl__hinweis"data-zimmerauswahl-hinweis><div>Deine gewünschte Anzahl an Einzelzimmern ist für diesen Termin nur auf Anfrage verfügbar.</div><a href="#"uk-toggle="#MODAL_FORM_BERATUNG"class="uk-button uk-button-primary">Jetzt anfragen</a></div>`) 1937$next_step_button.after($modal_button) 1938$next_step_button.hide()} 1939if($fu_leistungen.filter(function(){return $(this).data('leistung-anf')!='P'}).length>0){Kassenzettel.PreisanfrageStatus='ERROR'}else if($fu_leistungen.filter(function(){return $(this).data('leistung-anf')!='P'}).length==0){console.log('keine FU Leistungen mehr gefunden. Buttons freigeben') 1940Kassenzettel.PreisanfrageStatus='OK'}}else{console.log('keine FU Leistungen mehr gefunden. Buttons freigeben') 1941Kassenzettel.PreisanfrageStatus='OK'} 1942window.dataLayer=window.dataLayer.filter((x)=>!x.ReisePreis) 1943window.dataLayer.push({event:'reisepreis.update',ReisePreis:parseFloat($('#KASSENZETTEL_SUMME').text()),})} 1944if(Kassenzettel.PreisanfrageStatus=='ERROR'){$next_step_buttons.attr('disabled',true)}else{$next_step_buttons.attr('disabled',false)} 1945Kassenzettel.Leistungen.sort()},})}else{}},getData:function(){var values=[] 1946if($('.request__form').length){if($('[data-reise-leistung] [data-reise-leistung__toggle]:checked').length===0||$('#REISEBEGINN').val()===''){return} 1947values=$('.request__form').serializeArray()} 1948else if($('[data-book]').length){var book=$('[data-book]').data('book') 1949var t1=book.t1 1950var t4=book.t4 1951values.push({name:'t1',value:t1,}) 1952values.push({name:'t4',value:t4,})} 1953else if($('[data-print]').length){var print=$('[data-print]').data('print') 1954var t1=print.t1 1955var t4=print.t4 1956values.push({name:'t1',value:t1,}) 1957values.push({name:'t4',value:t4,})} 1958else if($('[data-pay]').length){var pay=$('[data-pay]').data('pay') 1959var t1=pay.t1 1960var t4=pay.t4 1961values.push({name:'t1',value:t1,}) 1962values.push({name:'t4',value:t4,})} 1963values.push({name:'tf',value:'t_kassenzettel',}) 1964values.push({name:'encoding',value:'iso-8859-1',}) 1965values.push({name:'VRRTTL',value:1,}) 1966$.each(values,function(i,obj){if(obj.name=='REISEREQUEST_ACTION'){values[i].value=''}}) 1967return values},expand:function(){var $kassenzettel=$('.buchung__kassenzettelContainer').find('.kassenzettel') 1968if(!$kassenzettel.hasClass('expanded')){$kassenzettel.addClass('expanded')
1969$kassenzettel.find('.kassenzettel__body').slideDown()}else{$kassenzettel.removeClass('expanded') 1970$kassenzettel.find('.kassenzettel__body').slideUp()}},Leistungen:{Gruppen:{Reise:['P','H'],Flug:['AF','F','FK','RF'],Sonstiges:['FO','NB'],Vorprogramme:['VP'],Nachprogramme:['AP'],},sort:function(){$('[data-kassenzettel]').each(function(){const $this=$(this) 1971const $leistungen=$this.find('[data-kassenzettel-leistungen]') 1972$leistungen.find('[data-leistung]').filter(function(){return($.inArray($(this).data('leistung').anforderung,['AP','VP','P',])>-1)}).each(function(){const $this=$(this) 1973const options=$this.data('leistung') 1974const zusatzpaketleistung_reicode=options['leistung-aus-reicode'] 1975const zusatzpaketleistung_anforderung=options.anforderung 1976const $zusatzpaketleistung_wrap=$('<div></div>',{class:'leistungen__wrap','data-leistungen-wrap':'{"reicode": "'+ 1977zusatzpaketleistung_reicode+'", "anforderung": "'+ 1978zusatzpaketleistung_anforderung+'"}','data-leistungen':'[]',}) 1979if($leistungen.find('.leistungen__wrap').filter(function(){return($(this).data('leistungen-wrap').anforderung==zusatzpaketleistung_anforderung)}).length<1){$zusatzpaketleistung_wrap.appendTo($leistungen)} 1980$leistungen.children('[data-leistung]').filter(function(){return($(this).data('leistung')['leistung-aus-reicode']==zusatzpaketleistung_reicode)}).each(function(){let $this=$(this) 1981let leistungen_in_wrap=$zusatzpaketleistung_wrap.data('leistungen') 1982if($this.data('leistung').code==''){return} 1983leistungen_in_wrap.push($this.data('leistung').code) 1984$zusatzpaketleistung_wrap.attr('data-leistungen',leistungen_in_wrap) 1985$this.appendTo($zusatzpaketleistung_wrap)})})})},init:function(){$('[data-kassenzettel]').on('click','[data-kassenzettel-remove-leistung]',function(e){e.preventDefault() 1986let $this=$(this) 1987let leistung_id=$this.data('kassenzettel-remove-leistung') 1988$('[data-reise-leistung__toggle][value="'+ 1989leistung_id+'"]').parents('[data-zusatzprogramm]').find('[data-zusatzprogramm-toggle]').prop('checked',false).trigger('change') 1990$('[data-reise-leistung__toggle][value="'+ 1991leistung_id+'"]').prop('checked',false).trigger('change') 1992$('[data-reise-leistung__toggle][value="'+ 1993leistung_id+'"]').parents('[data-zusatzprogramm]').removeClass('is--active')})},},} 1994var Leistungen={sortierGruppen:{'pauschal':['P','PT','L'],'anreise':['F','FK','AF','FS','RF','T','IF'],'anreise_selbst':['E'],'anreise_bahn':['B'],'projekte':['FO'],'optionale':['OA','UV','UN'],'naturebottle':['NB','EB'],},init:function(){this.sort();this.Zusatzprogramme.init();Wahlpflicht.init();this.Flug.init();$('[data-reise-leistung__toggle][data-pflicht="1"]').each(function(i,v){if(!$(this).parents('[data-booking-box="zusatzprogramme"]').length){$(this).prop('checked','true');} 1995Leistungen.toggle($(this));});if($('[data-reise-leistung][data-anforderung="NB"]').length<1){$('[data-booking-box="nature bottle"]').remove();} 1996$('[data-reise-leistung][data-anforderung="NB"]').on('change','[data-reise-leistung__toggle]',function(i,v){let $this=$(this);let $container=$this.parents('[data-booking-box]');let $eigeneFlasche=$container.find('[data-reise-leistung][data-anforderung="EB"]').find('[data-reise-leistung__toggle]');if($this.is(':checked')){$eigeneFlasche.prop('checked',false).trigger('change');} 1997else{$eigeneFlasche.prop('checked',true);Leistungen.toggle($eigeneFlasche);}});$('[data-reise-leistung][data-anforderung="EB"]').on('change','[data-reise-leistung__toggle]',function(i,v){let $this=$(this);let $container=$this.parents('[data-booking-box]');let $natureBottle=$container.find('[data-reise-leistung][data-anforderung="NB"]').find('[data-reise-leistung__toggle]');if($this.is(':checked')){$natureBottle.prop('checked',false).trigger('change');} 1998else{$natureBottle.prop('checked',true);Leistungen.toggle($natureBottle);}});setTimeout(function(){$('[data-reise-leistung][data-anforderung="NB"]').find('[data-reise-leistung__toggle]').each(function(i,v){$(this).prop('checked',true);Leistungen.toggle($(this));});},500) 1999$('[data-reise-leistung__toggle][data-pflicht=""]').on('click, change',function(){Leistungen.toggle($(this));});Leistungen.Anreise.init();Leistungen.Vererbung.init();Leistungen.Vererbung.initTNZ();Leistungen.FreieTerminwahl.init();Kassenzettel.blocks.leistungenInitiated=true;$(document).trigger('refresh-kassenzettel','Leistungen init complete');Leistungen.updateLetzeCodestellen([85]);$('.coderubrik__select[data-corid="85"]').trigger('change');},toggle:function($leistungsToggle){var leistungsblock=$leistungsToggle.parents('.leistung').find('.leistung__body');if($leistungsToggle.is(':checked')){leistungsblock.slideDown().show();this.selectFirst(leistungsblock);}
2000else{leistungsblock.slideUp();}},selectFirst:function($leistung){let $select=$leistung.find('.coderubrik__select');if($select.length&&($select.val()==null||$select.val()=='')){$select.find('option:first').prop('selected',true).trigger('chosen:updated');}},sort:function(callback){var iCount=Object.keys(Leistungen.sortierGruppen).length;$.each(Leistungen.sortierGruppen,function(sTargetKey,arAnf){$.each(arAnf,function(index,v){$('#leistungen [data-reise-leistung][data-anforderung="'+v+'"], [data-wahlpflicht][data-anforderung="'+v+'"]').appendTo('[data-leistung-sort-target="'+sTargetKey+'"]');});});if('MODIFLYLINK-REI'in(oMerkmale.Kundenlogin??{})){let message='Du erhältst eine E-Mail von uns, sobald du deine Wunschsitzplätze bequem online buchen kannst.' 2001if(Agentur.loggedIn===true){message='Wir benachrichtigen euch, sobald unsere Gäste ihre Wunschsitzplätze bequem online über Modifly buchen können.'} 2002$('[data-reise-leistung][data-anforderung="FS"]').replaceWith('<article class="leistung leistung--replacement"><header class="leistung__header"><div class="leistung__title">Sitzplatz</div></header><div class="leistung__body"><div>'+message+'</div></div></article>')}},updateLetzeCodestellen:function(arCOR){$.each(arCOR,function(i,iCorId){if($('.coderubrik__select[data-corid="'+iCorId+'"]').length){$('.coderubrik__select[data-corid="'+iCorId+'"]').change(function(){var corSelectVal=$(this).find('option:selected').data('code');$('.coderubrik__select[data-corid="'+iCorId+'"]').each(function(){var $leistung=$(this).parents('[data-reise-leistung]');var sLeicode=$leistung.attr('data-leistung');var $container=$(this).parents('.coderubrik');if($container.find('[data-cod710]').length){$container.find('[data-cod710]').val(corSelectVal)} 2003else{$container.append('<input data-cod710 type="hidden" name="LEIST_'+sLeicode+'_KABINE" value="'+corSelectVal+'">');}});})}});},Anreise:{arAnfAnreiseVeranstalter:["F","FK","AF","RF","FS"],arAnfAnreiseVeranstalterPlicht:["F","FK","RF","AF","T"],arAnfAnreiseEigenregie:["E"],arAnfAnreiseBahn:["B"],sCoderubrikTransfer:"71",init:function(){var $switcher=$('#ANREISE_SWITCHER');Leistungen.Anreise.setStartMode($switcher);$(window).on('load',function(){Leistungen.Anreise.setStartMode($switcher);});$('[data-buchung-anreise]').on('click',function(){var sMode=$(this).data('buchung-anreise');Leistungen.Anreise.switch(sMode);});},setStartMode:function($switcher){if(Buchungsstrecke.oStoredData.anreiseModus!=undefined){Leistungen.Anreise.switch(Buchungsstrecke.oStoredData.anreiseModus);var iSwitcherIndex=(Buchungsstrecke.oStoredData.anreiseModus=="veranstalter"?0:1);UIkit.switcher($switcher).show(iSwitcherIndex);} 2004else{if(Buchungsstrecke.MERSettings===undefined||Base.isDomain('b2c')){Leistungen.Anreise.switch('veranstalter');UIkit.switcher($switcher).show(0);console.log("set mode veranstalter weil MERSettings nicht defined");return;} 2005if(('ANREISE_B_DFLT'in Buchungsstrecke.MERSettings)){Leistungen.Anreise.switch('bahnanreise');let index_bahnanreise=$switcher.find('li').index($('[data-buchung-anreise="bahnanreise"]').parent('li'));console.log("set mode bahnanreise weil Merkmal Default gesetzt","bahnanreise index",index_bahnanreise);setTimeout(()=>{UIkit.switcher($switcher).show(index_bahnanreise);},2500);} 2006else{if(!('ANREISE_TAB_F'in Buchungsstrecke.MERSettings)){if('ANREISE_TAB_E'in Buchungsstrecke.MERSettings){Leistungen.Anreise.switch('eigenanreise');let index_eigenanreise=$switcher.find('li').index($('[data-buchung-anreise="eigenanreise"]').parent('li'));setTimeout(()=>{UIkit.switcher($switcher).show(index_eigenanreise);},2500);} 2007if('ANREISE_TAB_B'in Buchungsstrecke.MERSettings){Leistungen.Anreise.switch('bahnanreise');let index_bahnanreise=$switcher.find('li').index($('[data-buchung-anreise="bahnanreise"]').parent('li'));setTimeout(()=>{UIkit.switcher($switcher).show(index_bahnanreise);},2500);}} 2008else{Leistungen.Anreise.switch('veranstalter');UIkit.switcher($switcher).show(0);}}}},switch:function(sMode){$(document).attr('data-kassenzettel-blocked',true);if(sMode=="veranstalter"){$.each(Leistungen.Anreise.arAnfAnreiseVeranstalterPlicht,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',true).trigger('change').addClass("js--locked");});$.each(Leistungen.Anreise.arAnfAnreiseEigenregie,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',fal
2008se).trigger('change');});$.each(Leistungen.Anreise.arAnfAnreiseBahn,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',false).trigger('change');});$('[data-booking-box="anreise"] [data-anforderung="T"]').each(function(){$this=$(this);$this.find('select[data-corid="'+Leistungen.Anreise.sCoderubrikTransfer+'"] option[data-code="TG"]').prop('selected','true');});$('[data-booking-box="anreise"] [data-anforderung="IF"]').each(function(){$this=$(this);$this.find('select[data-corid="82"] option[data-code="GP"]').prop('selected','true');});Buchungsstrecke.oStoredData.anreiseModus="veranstalter"} 2009else if(sMode=="eigenanreise"){$.each(Leistungen.Anreise.arAnfAnreiseEigenregie,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',true).trigger('change').addClass("js--locked");});$.each(Leistungen.Anreise.arAnfAnreiseBahn,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',false).trigger('change');});$.each(Leistungen.Anreise.arAnfAnreiseVeranstalter,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',false).trigger('change');});$('[data-booking-box="anreise"] [data-anforderung="T"]').each(function(){$this=$(this);$this.find('select[data-corid="'+Leistungen.Anreise.sCoderubrikTransfer+'"] option[data-code="NO"]').prop('selected','true');});$('[data-booking-box="anreise"] [data-anforderung="IF"]').each(function(){$this=$(this);$this.find('select[data-corid="82"] option[data-code="IF"]').prop('selected','true');});Buchungsstrecke.oStoredData.anreiseModus="eigenanreise"} 2010else if(sMode=="bahnanreise"){$.each(Leistungen.Anreise.arAnfAnreiseBahn,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',true).trigger('change').addClass("js--locked");});$.each(Leistungen.Anreise.arAnfAnreiseEigenregie,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',false).trigger('change');});$.each(Leistungen.Anreise.arAnfAnreiseVeranstalter,function(key,val){$('[data-booking-box="anreise"] [data-anforderung="'+val+'"] [data-reise-leistung__toggle]').prop('checked',false).trigger('change');});$('[data-booking-box="anreise"] [data-anforderung="T"]').each(function(){$this=$(this);$this.find('select[data-corid="'+Leistungen.Anreise.sCoderubrikTransfer+'"] option[data-code="NO"]').prop('selected','true');});$('[data-booking-box="anreise"] [data-anforderung="IF"]').each(function(){$this=$(this);$this.find('select[data-corid="82"] option[data-code="IF"]').prop('selected','true');});Buchungsstrecke.oStoredData.anreiseModus="bahnanreise"} 2011$(document).attr('data-kassenzettel-blocked',false);$(document).trigger('refresh-kassenzettel','Anreise, Modus: '+sMode);}},Vererbung:{arVererbungen:[{"anfParent":"F","iCorID":"38","arSubLeistungen":["AF","FK","FS"]},{"anfParent":"F","iCorID":"85","arSubLeistungen":["AF","FK","FS"]},],oVererbungenTNZ:{"P":{"iCorID":"69","arSubLeistungen":["L","AP","VP","H"],},},init:function(){$.each(Leistungen.Vererbung.arVererbungen,function(i,oData){var sAnforderung=oData.anfParent;$('[data-reise-leistung][data-anforderung="'+sAnforderung+'"] .coderubrik__select[data-corid="'+oData.iCorID+'"]').on('change',function(){$(document).attr('data-kassenzettel-blocked',true);Leistungen.Vererbung.updateSubs($(this),oData);$(document).attr('data-kassenzettel-blocked',false).trigger('kassenzettel-refresh');});});},updateSubs:function($masterSelect,oData){var sSelectedCode=$masterSelect.find("option:selected").attr("data-code");$.each(oData.arSubLeistungen,function(i,sAnforderung){var $select=$('[data-reise-leistung][data-anforderung="'+sAnforderung+'"] .coderubrik__select[data-corid="'+oData.iCorID+'"]'),sValue=$select.find('option[data-code="'+sSelectedCode+'"]').val();$select.val(sValue);$select.trigger('chosen:updated');if(sAnforderung=="FS"){var $LeistungFS=$('[data-reise-leistung][data-anforderung="FS"]') 2012if(sSelectedCode=="EC"&&$LeistungFS.data('anzeigen')==""&&$LeistungFS.is(':visible')){$LeistungFS.hide().find('[data-reise-leistung__toggle]').prop('checked',fal
2012se);}}});},initTNZ:function(){$.each(Leistungen.Vererbung.oVererbungenTNZ,function(sAnforderung,oData){$('[data-reise-leistung][data-anforderung="'+sAnforderung+'"] .coderubrik__select[data-corid="'+oData.iCorID+'"]').on('change',function(){Leistungen.Vererbung.updateTNZSubsSelects($(this),oData);});$('body').on('change','[data-reise-leistung][data-anforderung="'+sAnforderung+'"] [data-teilnehmerzuordnung-ckb]',function(){Leistungen.Vererbung.updateTNZCheckboxes($(this),oData)});});},updateTNZSubsSelects:function($masterSelect,oData){var sSuffix=$masterSelect.attr("id").slice($masterSelect.attr("id").length-1);var sSelectedCode=$masterSelect.find("option:selected").attr("data-code");$.each(oData.arSubLeistungen,function(i,sAnforderung){$('[data-reise-leistung][data-anforderung="'+sAnforderung+'"]').each(function(){const $leistung=$(this);var $msb=(!$.isNumeric(sSuffix))?$leistung.find('[data-msb][data-suffix="'+sSuffix+'"]'):$leistung.find('[data-msb][data-suffix=""]');const $select=$msb.find('.coderubrik__select[data-corid="'+oData.iCorID+'"]'),sValue=$select.find('option[data-code="'+sSelectedCode+'"]').val();$select.val(sValue);$select.trigger('chosen:updated');console.log("Selected Val",sSelectedCode,sValue,$select.val(),$select);});});},updateTNZCheckboxes:function($masterCkb,oData){var sTeiln=$masterCkb.val();var sSuffix=$masterCkb.attr("id").slice($masterCkb.attr("id").length-1);var bState=$masterCkb.prop('checked');$(document).attr('data-kassenzettel-blocked',true);$.each(oData.arSubLeistungen,function(i,sAnforderung){var $msb=(!$.isNumeric(sSuffix))?$('[data-reise-leistung][data-anforderung="'+sAnforderung+'"] [data-msb][data-suffix="'+sSuffix+'"]'):$('[data-reise-leistung][data-anforderung="'+sAnforderung+'"] [data-msb][data-suffix=""]');$msb.find('[data-teilnehmerzuordnung-ckb][value="'+sTeiln+'"]').prop('checked',bState);});$(document).attr('data-kassenzettel-blocked',false);$(document).trigger('refresh-kassenzettel','TNZ Zuordnungsvererbung');}},FreieTerminwahl:{iMinDays:1,iMaxDays:7,init:function(){var minDate,maxDate;$('[data-leistung-sort-target], [data-zusatzprogramm]').find('.freie-terminwahl').each(function(){var $this=$(this),reisebeginn=Reiserequest.Reisezeitraum.reisebeginn,reiseende=Reiserequest.Reisezeitraum.reiseende,reisebeginnMinSelectDate=reisebeginn.clone(),reiseendeMinSelectDate=reiseende.clone(),$input_von=$this.find('.freie-terminwahl__input--von'),$input_bis=$this.find('.freie-terminwahl__input--bis'),$input_range=$this.find('.freie-terminwahl__input--range'),$Leistung=$this.parents('[data-reise-leistung]'),iLeistungStartTag=parseInt($Leistung.data('leistung-tag-beginn')),iLeistungEndeTag=$Leistung.data('leistung-tag-ende');if($(this).parents('[data-zusatzprogramm]')){var $zusatzprogramm=$(this).parents('[data-zusatzprogramm]'),sZusatzProgrammTyp=$zusatzprogramm.data('zp-typ'),iZusatzProgrammDauer=parseInt($zusatzprogramm.data('zp-reidauer'));switch(sZusatzProgrammTyp){case"V":reiseendeMinSelectDate=reiseendeMinSelectDate.add(iLeistungStartTag+iZusatzProgrammDauer,'days');break;case"P":reisebeginnMinSelectDate=reisebeginnMinSelectDate.subtract((0-iLeistungStartTag+iZusatzProgrammDauer),'days');break;default:}} 2013switch($this.data('typ')){case"F":minDate=reisebeginn.clone().format('DD.MM.YYYY');maxDate=reiseende.clone().format('DD.MM.YYYY');$input_von.add($input_bis).flatpickr({dateFormat:'d.m.Y',minDate:minDate,maxDate:maxDate,onClose:function(){$(document).trigger('refresh-kassenzettel','FreieTerminwahl');}});break;case"V":maxDate=reisebeginn.clone().add(iLeistungStartTag,'days').format('DD.MM.YYYY');maxSelectDate=reisebeginnMinSelectDate.clone().format('DD.MM.YYYY');minDate=reisebeginnMinSelectDate.clone().subtract(Leistungen.FreieTerminwahl.iMaxDays+iLeistungStartTag,'days').format('DD.MM.YYYY');$input_bis.val(maxDate);$input_von.flatpickr({dateFormat:'d.m.Y',minDate:minDate,maxDate:maxSelectDate,defaultDate:maxSelectDate,onClose:function(){},onChange:function(){let $zusatzprogramm=$this.parents('[data-zusatzprogramm]');let neue_dauer=moment($input_bis.val(),'DD.MM.YYYY').diff(moment($input_von.val(),'DD.MM.YYYY'),'days');$zusatzprogramm.data('zusatzprogramm').dauer=neue_dauer;$zusatzprogramm.find('[data-zusatzprogramm-dauer]').text(neue_dauer);Leistungen.Zusatzprogramme.Zeitraum.set($this.parents('[data-zusatzprogramm]'));}});setTimeout(()=>{$input_von.trigger('change');},500);break;case"N":minDate=reiseende.clone().add(iLeistungStartTag,'days').format('DD.MM.YYYY');minSelectDate=reiseendeMinSelectDate.clone().format('DD.MM.YYYY');maxDate=reiseendeMinSelectDate.clone().add(Leistungen.FreieTerminwahl.iMaxDays+iLeistungStartTag,'days').format('DD.MM.YYYY');$input_von.val(minDate);$input_bis.flatpickr({dateFormat:'d.m.Y',minDate:minSelectDate,maxDate:maxDate,defaultDate:minSelectDate,onClose:function(){},onChange:function(){let $zusatzprogramm=$this.parents('[data-zusatzprogramm]');let neue_dauer=moment($input_bis.val(),'DD.MM.YYYY').diff(moment($input_von.val(),'DD.MM.YYYY'),'days');$zusatzprogramm.data('zusatzprogramm').dauer=neue_dauer;$zusatzprogramm.find('[data-zusatzprogramm-dauer]').text(neue_dauer);Leistungen.Zusatzprogramme.Zeitraum.set($this.parents('[data-zusatzprogramm]'));}});setTimeout(()=>{$input_bis.trigger('change');},500);break;default:breaK;}});$('[data-zusatzprogramm] [data-reise-leistung]:not([data-anforderung="VP"]):not([data-anforderung="NP"])').find('.freie-terminwahl').each(function(){Leistungen.FreieTerminwahl.initUpdateZPPauschalLeistung($(this));});},initUpdateZPPauschalLeistung:function($element){const $terminWahlLeistung=$element.parents('[data-reise-leistung]');const $zusatzProgrammContainer=$element.parents('[data-zusatzprogramm]') 2014const sTypPauschalleistung=($zusatzProgrammContainer.find('[data-reise-leistung][data-anforderung="VP"]').length)?"VP":"AP";const $pauschalLeistung=$zusatzProgrammContainer.find('[data-reise-leistung][data-anforderung="'+sTypPauschalleistung+'"]');const $terminWahlLeistung_von=$terminWahlLeistung.find(".freie-terminwahl__input--von");const $terminWahlLeistung_bis=$terminWahlLeistung.find(".freie-terminwahl__input--bis");const $pauschalLeistung_von=$pauschalLeistung.find(".freie-terminwahl__input--von");const $pauschalLeistung_bis=$pauschalLeistung.find(".freie-terminwahl__input--bis");Leistungen.FreieTerminwahl.updatePauschalDate($terminWahlLeistung_von,$pauschalLeistung_von,sTypPauschalleistung);$terminWahlLeistung_von.on('change',function(){Leistungen.FreieTerminwahl.updatePauschalDate($terminWahlLeistung_von,$pauschalLeistung_von,sTypPauschalleistung);});$terminWahlLeistung_bis.on('change',function(){Leistungen.FreieTerminwahl.updatePauschalDate($terminWahlLeistung_bis,$pauschalLeistung_bis,sTypPauschalleistung);});},updatePauschalDate($selectDate,$pauschalDate,sMode){switch(sMode){case"VP":pauschalDate=moment($pauschalDate.val(),'DD.MM.YYYY').toDate() 2015selectDate=moment($selectDate.val(),'DD.MM.YYYY').toDate() 2016if(!pauschalDate<selectDate){$pauschalDate.val(moment(selectDate).format('DD.MM.YYYY'));} 2017break;case"AP":pauschalDate=moment($pauschalDate.val(),'DD.MM.YYYY').toDate() 2018selectDate=moment($selectDate.val(),'DD.MM.YYYY').toDate() 2019if(!pauschalDate!=selectDate){$pauschalDate.val(moment(selectDate).format('DD.MM.YYYY'));}}
2020$(document).trigger('refresh-kassenzettel','FreieTerminwahl nach Pauschal Leistung Update');}},Flug:{Sitzplaetze:{'EC':['XL','LF','LG','LX','XF','XG','XX','SF','SG','SX','VF','VG','VX','NO'],'EX':['XL','LF','LG','LX','XF','XG','XX','SF','SG','SX','VF','VG','VX','NO'],'PE':['SF','SG','SX'],'PX':['SF','SG','SX'],'BC':['SF','SG','SX'],'BX':['SF','SG','SX'],},init:function(){$('[data-reise-leistung][data-anforderung="F"]').find('.coderubrik__select[data-corid="38"]').on('change',function(){let $this=$(this);let selected_code=$this.find('option:selected').data('code');Leistungen.Flug.check($this,selected_code);});setTimeout(function(){$('[data-reise-leistung][data-anforderung="F"]').find('.coderubrik__select[data-corid="38"]').trigger('change');},2000);},check:function($select,flugklasse){$('[data-reise-leistung][data-anforderung="FS"]').find('.coderubrik__select[data-corid="74"]').find('option').each(function(){let $this=$(this);let code=$this.data('code');if($.inArray(code,Leistungen.Flug.Sitzplaetze[flugklasse])>-1){$this.prop('disabled',false).show();} 2021else{$this.prop('disabled',true).hide();} 2022$this.parents('.coderubrik__select').trigger('chosen:updated');});}},Zusatzprogramme:{sortierGruppen:{'nachprogramme':['V'],'vorprogramme':['P'],},init:function(){this.sort();$('[data-zusatzprogramm]').each(function(){let $this=$(this);Leistungen.Zusatzprogramme.Zeitraum.set($this);});$(document).trigger('zusatzprogramme-zeitraum-set');},sort:function(callback){$.each(Leistungen.Zusatzprogramme.sortierGruppen,function(key,typen){$.each(typen,function(i,v){$('[data-zusatzprogramme] [data-zusatzprogramm][data-zp-typ="'+v+'"]').appendTo('[data-zp-sort-target="'+key+'"]');});});if($('[data-booking-box="vorprogramme"]').find('[data-zusatzprogramm]').length<1){$('[data-booking-box="vorprogramme"]').remove();} 2023if($('[data-booking-box="nachprogramme"]').find('[data-zusatzprogramm]').length<1){$('[data-booking-box="nachprogramme"]').remove();}},Zimmerauswahl:{hide:function(){setTimeout(()=>{$('[data-zusatzprogramm]').find('[data-reise-leistung][data-anforderung="VP"] [data-reise-leistung-leistungsblock]').hide();$('[data-zusatzprogramm]').find('[data-reise-leistung][data-anforderung="AP"] [data-reise-leistung-leistungsblock]').hide();},500);}},Zeitraum:{set:function($zusatzprogramm){let $this=$zusatzprogramm;let options=$this.data('zusatzprogramm');let reisebeginn=moment($('#REISEBEGINN').val(),'DD.MM.YYYY');let reiseende=moment($('#REISEENDE').val(),'DD.MM.YYYY');let zp_beginn,zp_ende;let $zeitraum=$zusatzprogramm.find('[data-zusatzprogramm-zeitraum]');if(options.typ=='')return;switch(options.typ){case"P":zp_beginn=moment(reisebeginn).subtract(options.dauer,'days');zp_ende=reisebeginn;break;case"V":zp_beginn=reiseende;zp_ende=moment(reiseende).add(options.dauer,'days');break;} 2024$this.attr('data-buchung-tag-beginn',zp_beginn.format('DD.MM.YYYY'));$this.attr('data-buchung-tag-ende',zp_ende.format('DD.MM.YYYY'));}}}} 2025$(document).on('zusatzprogramme-zeitraum-set',function(){if(typeof(Verlaengerung)=='undefined'){return;} 2026let Zusatzprogramme={...Verlaengerung.Vorprogramme,...Verlaengerung.Nachprogramme};});var Wahlpflicht={init:function(){$('[data-wahlpflicht]').each(function(i,v){var $container=$(this);var sRang=$container.data('rang');var sAnforderung=$container.data('anforderung');var radio_buttons=$container.find('input[type="radio"]');$container.siblings('[data-reise-leistung][data-rang="'+sRang+'"]').find('.leistung__header').hide();$container.siblings('[data-reise-leistung][data-rang="'+sRang+'"]').hide();radio_buttons.on('change',function(){var $that=$(this);var leistung_gewaehlt=$that.val();Wahlpflicht.switchTo(leistung_gewaehlt,sRang);}).trigger('change');});},switchTo:function(leistungs_id,rang){var the_leistung=$('[data-reise-leistung][data-leistung-id="'+leistungs_id+'"]');var all_the_leistungen=the_leistung.siblings('[data-reise-leistung][data-rang="'+rang+'"]');var the_switch=the_leistung.find('[data-reise-leistung__toggle]');var all_the_switches=the_leistung.siblings('[data-reise-leistung][data-rang="'+rang+'"]').find('[data-reise-leistung__toggle]');all_the_leistungen.hide();
2026all_the_switches.prop('checked',false);all_the_leistungen.each(function(){sessionStorage.removeItem($(this).attr('id'));});all_the_switches.each(function(){sessionStorage.removeItem($(this).attr('id'));});the_switch.prop('checked',true).trigger('change');the_leistung.slideDown(400,function(){UIkit.update(element=document.body,type='update');});}} 2027var Leistungskombinator={valideKombinationen:"",getZimmerTypKombinationen:function(arAnforderungen,mode,oZugelasseneKombinationen,callback){Leistungskombinator.valideKombinationen=oZugelasseneKombinationen;$('body').addClass('zimmertyp-kombination') 2028var arLeistungen=[];$.each(arAnforderungen,function(i,anforderung){$('[data-reise-leistung][data-anforderung="'+anforderung+'"]').each(function(){if($(this).data('setze-anzahl')==""){arLeistungen.push($(this));}});});var iLeistungsCount=arLeistungen.length;$.each(arLeistungen,function(i,leistung){var $this=$(leistung);var container_id=$this.attr('id');var leistung_id=$this.data('leistung-id');var select_id=$this.find('select[id^="COR"]').attr('id');$this.addClass('has--zimmertyp-kombination').attr('data-zimmertyp-kombination',1);var args={cmd:'RoomType.List',ANZAHL_ERWACHSENE:$('#ANZAHL_ERWACHSENE').val(),ANZAHL_KINDER:Number(0),ANZAHL_ZIMMER:'flexibel',RLEID:leistung_id};$.ajax({url:$.document_path+'/src/cube/jx_leistungcodekombination.php',data:args,type:'get',}).done(function(data){Leistungskombinator.setZimmerTypKombinationen(data,select_id,container_id,mode);if(!--iLeistungsCount){if(callback&&typeof(callback)==="function"){callback();}}}).fail(function(){console.log("Zimmertypkombination Abfrage Fehler...");});});},setZimmerTypKombinationen:function(kombinationen,select_id,container_id,mode){var the_element=$('#'+select_id);var the_container=$('#'+container_id);if($.array_count(kombinationen)==0){$('.error--invalid-room-types').show();return false;}else{$('.error--invalid-room-types').hide();} 2029if(mode=="select"){var the_options='<option value=""></option>';$.each(kombinationen,function(i,v){var sBez=v.bez.replace(/<br\/>/g,' + ');sBez=sBez.replace(/x /g,'');var codes=v.cod;if(Leistungskombinator.checkKombinationValide!=""){if(Leistungskombinator.checkKombinationValide(codes)){the_options+='<option data-label="'+sBez+'" data-code="'+v.cod+'" value="'+i+'">'+sBez+'</option>';}}else{the_options+='<option data-label="'+sBez+'" data-code="'+v.cod+'" value="'+i+'">'+sBez+'</option>';}});the_element.html(the_options);if(the_element.children('option').length==2){the_element.children('option:last').attr('selected','selected');}else{the_element.children('option:nth-child(2)').attr('selected','selected');} 2030the_element.trigger('chosen:updated');} 2031else if(mode=="radio"){$('.zimmertyp-kombinationen').remove();$.each(kombinationen,function(i,v){var the_input=$('<input/>',{'type':'radio','id':the_element.attr('id')+'_'+v.index,'name':the_element.attr('name'),'value':i}).insertAfter(the_element).wrap('<div class="zimmertyp-kombination"></div>');var the_label=$('<label/>',{'for':the_element.attr('id')+'_'+v.index,'class':'zimmertyp-kombination__label','html':v.bez}).insertAfter($('#'+the_element.attr('id')+'_'+v.index));});the_element.remove();the_container.find('.zimmertyp-kombination').wrapAll('<div class="zimmertyp-kombinationen"></div>');setTimeout(function(){the_container.find('.zimmertyp-kombination').eq(0).find('input[type="radio"]').prop('checked','checked');$(document).trigger('refresh-kassenzettel',['Leistungskombinator geladen',false]);},1000);} 2032the_container.find('[id^="ROW_MSB_'+the_container.data('leistung-id')+'_"]').remove();$('.teilnehmerzuordnung__storage[data-leistung-id="'+the_container.data('leistung-id')+'"]').remove();},checkKombinationValide(sCodes){iCntTeilnehmer=$('#ANZAHL_ERWACHSENE').val();iCntRooms=$('#ANZAHL_ZIMMER').val();aOptions=Leistungskombinator.valideKombinationen[iCntTeilnehmer][iCntRooms];if(aOptions.indexOf(sCodes)!==-1){return true;}else{return false;}}} 2033var Versicherung={selected:false,xhrRequests:[],init:function(){$('#VERSICHERUNGEN').on('change','[tos-versicherung]',function(){var $this=$(this);var sVersicherungsID=$this.attr('id');var iTeiln=$this.data('teilnehmer');$('#VERSICHERUNGEN').find('[tos-versicherung][data-teilnehmer="'+iTeiln+'"]').removeClass('error');if(this.checked){Versicherung.selectRules(iTeiln,$(this));} 2034Versicherung.requestVersicherung();});},removeRequest:function(request){const index=Versicherung.xhrRequests.indexOf(request);if(index>-1){Versicherung.xhrRequests.splice(index,1);}}
2034,abortAllRequests:function(){this.xhrRequests.forEach(request=>{if(request.readyState<4){request.abort();}});this.xhrRequests=[];},getVersicherungen:function(callback){var data={};data.cmd='load.versicherung';data.t1=$('#t1').val();data.t4=$('#t4').val();data.teilnehmer=JSON.stringify(Versicherung.getTeilnehmerDaten());if(sessionStorage.getItem('versicherung_request')==data.teilnehmer){console.log("versicherungsanfrage mit gleichen daten > keine neue anfrage") 2035return false} 2036sessionStorage.setItem('versicherung_request',data.teilnehmer);let versicherungen_abrufen=true 2037const reisende=parseInt($('[data-book]').data('book').teilnehmer) 2038for(i=1;i<=reisende;i++){if(sessionStorage.getItem('teilnehmerland_'+i)!=null){if(Versicherung.getTeilnehmerDaten()[i].land==sessionStorage.getItem('teilnehmerland_'+i)){}}} 2039const xhrRequest=$.ajax({type:'post',url:$.document_path+'/start/jx_ajax.php?cube=jx_versicherung',data:data,beforeSend:function(){$('#VERSICHERUNGEN').html('<div class="uk-text-center"><i class="fa-solid fa-spinner fa-spin-pulse fa-2x"></i><p>Die für dich passenden Versicherungen werden gesucht...</p></div>');$(document).trigger('refresh-kassenzettel','Versicherungen abrufen ')}}).done(function(oResponseData){var oResp=JSON.parse(oResponseData);Versicherung.removeRequest(xhrRequest);if(oResp.ERROR==0){Versicherung.displayVersicherungen(oResp.RESPONSE);} 2040else{console.warn("Versicherung laden Fehler");} 2041if(callback&&typeof(callback)==="function"){callback();Versicherung.init();}});Versicherung.xhrRequests.push(xhrRequest);},getTeilnehmerDaten:function(){let teilnehmerData={};$('[data-booking-box="teilnehmer"]').each(function(){const $teilnehmer=$(this);const teilnNr=$teilnehmer.data('teiln_nr');teilnehmerData[teilnNr]={};teilnehmerData[teilnNr].vorname=$teilnehmer.find('input[tos-field-type="vorname"]').val();teilnehmerData[teilnNr].name=$teilnehmer.find('input[tos-field-type="nachname"]').val();teilnehmerData[teilnNr].geburtsdatum=$teilnehmer.find('input[tos-field-type="dob"]').val();teilnehmerData[teilnNr].staatsangehoerigkeit=$teilnehmer.find('[tos-field-type="nationalitaet"]').val();teilnehmerData[teilnNr].land=$teilnehmer.find('[tos-field-type="land"]').val();});return teilnehmerData;},hasAllNecessaryData:function(){return!Object.values(Versicherung.getTeilnehmerDaten()).some(person=>Object.values(person).some(wert=>wert==''||wert==undefined))},selectRules:function(iTeiln,$selected_chkb){var selected_code=$selected_chkb.attr('data-rlecode');$('[tos-versicherung][data-teilnehmer="'+iTeiln+'"]').each(function(){if($(this).data('rlecode')!=selected_code){$(this).prop('checked',false);}});},displayVersicherungen:function(arData){$('#VERSICHERUNGEN').html('');$.each(arData,function(ind,val){let hmr_info="";let recommendation_flag="";let versicherung_title_clean=val.Title.replace("Reisen","");if(val.RLELEISTUNG=='HMRPS'){recommendation_flag="<img src='/html/img/empfehlung.svg'/>";} 2042var $Versicherung=$('<div/>',{"class":'versicherung buchung_boxSection versicherung--'+val.RLELEISTUNG,"id":'VERSICHERUNG_'+val.RLEID,"html":'<div>'+'<div class="buchung__boxSectionHeading versicherung__titel">'+recommendation_flag+' '+versicherung_title_clean+'</div>'+'<div uk-grid class="uk-grid-small uk-margin-bottom">'+'<div class="uk-width-1-4@s tos-bold">Für Reisegäste</div>'+'<div class="uk-width-3-4@s versicherung__teilnehmer"></div>'+'</div>'+'</div>'});let $versicherung_coverage=$('<ul></ul>',{class:'versicherung__coverage'}).appendTo($Versicherung);$.each(val.COVERAGE,function(i,vers){if(i==''){return;} 2043$versicherung_coverage_item=$('<li>',{class:'versicherung__coverageItem',html:'<li>'+'<div class="coverageItem__title">'+vers.Title+'</div>'+'<div class="coverageItem__description">'+vers.Description+'</div>'+'</li>'}).appendTo($versicherung_coverage);});if('PIB'in val){$Versicherung.find('.versicherung__coverage').after('<br /><a class="uk-margin-top tos-inline-block versicherung__pib" target="_blank" href="'+val.PIB+'">Produktinformationsblatt</a>');} 2044if('AVB'in val){$Versicherung.find('.versicherung__coverage').after('<a class="tos-inline-block uk-margin-small-top versicherung__avb" target="_blank" href="'+val.AVB+'">Allgemeine Versicherungsbedingungen</a>');} 2045if(val.RLELEISTUNG=='HMRBA'){hmr_info=`<div class="hmr-info"><div><img src="/html/img/hmr.jpg"alt="Hanse Merkur"class="hmr-info__image"></div><div><div class="hmr-info__text">Für jede Versicherung spendet die HanseMerkur 1 Euro für Projekte zur medizinischen Versorgung von Kindern in Afrika.</div></div></div>`;$Versicherung.append(hmr_info);} 2046var $checkboxes=Versicherung.createCheckboxes(val);$Versicherung.find('.versicherung__teilnehmer').append($checkboxes);$Versicherung.appendTo('#VERSICHERUNGEN');});},createCheckboxes:function(versicherungsleistung){var anzahl_teiln=$('[data-book]').data('book').teilnehmer;var $checkboxes=$('<div/>',{"class":'teilnehmerzuordnung teilnehmerzuordnung__checkboxContainer'});for(var i=1;i<=anzahl_teiln;i++){var tarif_code="";let teilnehmer_allowed='';$.each(versicherungsleistung.TARIF,function(tarif_ind,tarif){teilnehmer_allowed=tarif.TRAVELER.some((teilnehmer)=>teilnehmer==i)?true:false 2047if(tarif.TRAVELER.indexOf(i.toString())!=-1){tarif_code=tarif.TARIFFCODE 2048return false}});if(versicherungsleistung.RELANF=='KV'){let checkbox_checked=teilnehmer_allowed?'':'checked';$checkboxes.append('<span data-teilnehmer="'+i+'" class="teilnehmerzuordnung__teiln">'+'<input type="checkbox" tos-versicherung id="tnz_'+versicherungsleistung.RLEID+'_'+i+'" data-rleid="'+versicherungsleistung.RLEID+'" data-teilnehmer="'+i+'" data-tarif="'+tarif_code+'" data-rlecode="'+versicherungsleistung.RLELEISTUNG+'" '+checkbox_checked+'>'+'<label class="uk-flex uk-flex-middle" for="tnz_'+versicherungsleistung.RLEID+'_'+i+'">Gast '+i+'</label>'+'</span>');} 2049else if(versicherungsleistung.RELANF=='KVM'){let checkbox_checked='checked';$checkboxes.append('<span data-teilnehmer="'+i+'" class="teilnehmerzuordnung__teiln">'+'<input type="checkbox" tos-versicherung id="tnz_'+versicherungsleistung.RLEID+'_'+i+'" data-rleid="'+versicherungsleistung.RLEID+'" data-teilnehmer="'+i+'" data-tarif="'+tarif_code+'" data-rlecode="'+versicherungsleistung.RLELEISTUNG+'" '+checkbox_checked+'>'+'<label class="uk-flex uk-flex-middle" for="tnz_'+versicherungsleistung.RLEID+'_'+i+'">Gast '+i+'</label>'+'</span>');} 2050else{let checkbox_disabled=teilnehmer_allowed?'':'disabled';$checkboxes.append('<span data-teilnehmer="'+i+'" class="teilnehmerzuordnung__teiln">'+'<input type="checkbox" tos-versicherung id="tnz_'+versicherungsleistung.RLEID+'_'+i+'" data-rleid="'+versicherungsleistung.RLEID+'" data-teilnehmer="'+i+'" data-tarif="'+tarif_code+'" data-rlecode="'+versicherungsleistung.RLELEISTUNG+'" '+checkbox_disabled+'>'+'<label class="uk-flex uk-flex-middle" for="tnz_'+versicherungsleistung.RLEID+'_'+i+'">Gast '+i+'</label>'+'</span>');} 2051setTimeout(function(){$checkboxes.find('[tos-versicherung]:checked').trigger('change')},1000);} 2052return $checkboxes;},requestVersicherung:function(){var oParams={cmd:'Insurance.Add',cube:'jx_service',VRRID:$('#t4').val()};var oRLEIDs={};$('#VERSICHERUNGSLEISTUNGEN').empty();$('#VERSICHERUNGEN').find('input[type="checkbox"]:checked').each(function(){var sRLEI
2052D=$(this).data('rleid'),sTarifcode=$(this).data('tarif'),iTeiln=$(this).data('teilnehmer');oRLEIDs=Versicherung.serializeVersicherungen(oRLEIDs,sRLEID,sTarifcode,iTeiln);}) 2053var sRLEIDs=JSON.stringify(oRLEIDs);$('<input></input>',{'class':'rle_versicherung','type':'hidden','name':'sRLEIDS','value':sRLEIDs}).appendTo('#VERSICHERUNGSLEISTUNGEN');oParams.RLEIDs=sRLEIDs;$.get($.document_path+'/start/jx_ajax.php',oParams,function(data){Versicherung.updateKassenzettel(data);});},serializeVersicherungen:function(oVersicherungen,sID,sTarif,iTeiln){if(!(sID in oVersicherungen)){oVersicherungen[sID]={}} 2054if(!(sTarif in oVersicherungen[sID])){oVersicherungen[sID][sTarif]=[]} 2055oVersicherungen[sID][sTarif].push(iTeiln);return oVersicherungen;},updateKassenzettel:function(oData){var $Kassenzettel=$('#KASSENZETTEL');$Kassenzettel.find(".kassenzettelLeistung.versicherung").remove();var sGesamtPreis=parseFloat($(oData).find('GesamtPreis').attr('GesamtPreis').replace(".","").replace(",","."));sGesamtPreis=sGesamtPreis.toLocaleString('de-DE');$Kassenzettel.find('#KASSENZETTEL_SUMME').data('gesamt',sGesamtPreis).html(sGesamtPreis+" "+$.currency_str);window.dataLayer=window.dataLayer.filter(x=>!x.ReisePreis) 2056window.dataLayer.push({'ReisePreis':parseFloat($('#KASSENZETTEL_SUMME').text())});var oAnf={};$(oData).find('Leistung').each(function(){var $LeistungData=$(this);var sLeist=$LeistungData.attr('RLELEISTUNG');var sLeistID=$LeistungData.attr('RLEID');var sPreis=$LeistungData.attr('LeistungsPreis').toLocaleString('de-DE');var sTitel=$('#VERSICHERUNG_'+sLeistID).find('.versicherung__titel').text();var sTeiln=$LeistungData.attr('Teilnehmer');var sDates=moment($LeistungData.attr('Von'),'DDMMYY').format('DD.MM')+' - '+moment($LeistungData.attr('Bis'),'DDMMYY').format('DD.MM.YYYY');var sHrefAVB=$('#VERSICHERUNG_'+sLeistID).find('.versicherung__avb').attr("href");if(!($LeistungData.attr('RLEANF')in oAnf)){oAnf[$LeistungData.attr('RLEANF')]={}} 2057oAnf[$LeistungData.attr('RLEANF')][sLeistID]={"titel":sTitel,"avb":sHrefAVB};var $Leistung=$('<div/>',{"class":"kassenzettelLeistung versicherung uk-margin-top clearfix","html":'<div class="uk-clearfix">'+'<div class="uk-float-left uk-width-3-4"><span class="count">1x</span><span class="kassenzettelLeistung__title"> '+sTitel+'</span></div>'+'<strong class="uk-float-right uk-text-right price">'+sPreis.split(',')[0]+' '+$.currency_str+'</strong>'+'</div>' 2058+'<div class="uk-clearfix tos-font-body2">'+'<div class="kassenzettelLeistung__datum uk-float-left uk-margin-small-right"><i class="far fa-calendar-check" aria-hidden="true"></i> '+sDates+'</div>'+'<div class="kassenzettelLeistung__tnz uk-float-left"><i class="far fa-user" aria-hidden="true"></i> '+sTeiln+'</div>'+'</div>'});$Kassenzettel.find('.kassenzettel__leistungen .leistungen__wrap').filter(function(){return $(this).data('leistungen-wrap').anforderung=='P';}).eq(0).append($Leistung);});if(oAnf.hasOwnProperty("V")){$('[tos-versicherung-zustimmung]').show();$('[tos-versicherung-zustimmung] input').removeAttr('disabled');$('[tos-versicherung-avb]').empty();$.each(oAnf["V"],function(i,val){$('[tos-versicherung-avb]').append('<a href="'+val.avb+'" class="arrowRight block" target="_blank">AVB '+val.titel+'</a><br>');});} 2059else{$('[tos-versicherung-zustimmung] input').attr('disabled',true);$('[tos-versicherung-zustimmung]').hide();}}} 2060var Payment={init:function(){this.BookSelection.init();this.Subselect.init();this.Betrag.check();},BookSelection:{init:function(){if(!$('[data-booking-box="zahlung"]').length){return;} 2061$('[data-payment-method]').on('change',function(){var $this=$(this);if($this.is(':checked')){$('[name="PAYMENT_SUBSELECT"]').val($this.data('payment-method').method);var zahlungsart_ibe;switch($this.data('payment-method').provider){case"PAYONE":zahlungsart_ibe='KK';break;case"RECHNUNG":zahlungsart_ibe='UB';break;} 2062$('[name="VRRZAHLUNGART"]').val(zahlungsart_ibe);}});}},Subselect:{init:function(){$('[data-payment-type]').off('click').on('click',function(e){e.preventDefault();var $this=$(this);var $reisepay=$('[data-pay]');var payment_type=$this.data('payment-type');var t1=$reisepay.data('pay').t1;var t4=$reisepay.data('pay').t4;var t7=$reisepay.data('pay').t7;var betrag=$('select[name="PAYBETRAG_MODIFIED"]').val();$this.siblings().removeClass('is--active').end().addClass('is--active');Payment.iFrame.setUrl(t1,t4,t7,payment_type,betrag);});Payment.Subselect.preselect();},preselect:function(){$('[data-payment-types]').each(function(){var $this=$(this);var preselect=$this.data('payment-types').preselect;if(preselect!=''){var preselect_code=preselect.toLowerCase();$('[data-payment-type="'+preselect_code+'"]').trigger('click');} 2063else{$('[data-payment-type="cc"]').trigger('click');}});}},iFrame:{setUrl:function(t1,t4,t7,sClearingType,betrag){var $reisepay=$('[data-pay]');$.post($.document_path+'/start/jx_ajax.php?cube=jx_payment',{cmd:'payonev2.geturl',t1:t1,t4:t4,t7:t7,PAYBETRAG_MODIFIED:betrag,CLEARINGTYPE:sClearingType},function(sPaymentLink){$('#PAYMENT_FRAME').attr("src",sPaymentLink);});}},Betrag:{Offen:{},check:function(){if(!$('[data-pay]').length){return;} 2064var options=$('[data-pay]').data('pay');if(parseFloat(options.bezahlt)>=parseFloat(options.anzahlung)){$('.reisepay__betraege').find('.betrag--anzahlung').addClass('is--paid');} 2065if(parseFloat(options.restanzahlung)>0){Payment.Betrag.Offen.Anzahlung=parseFloat(options.restanzahlung).toFixed(2);} 2066else if(parseFloat(options.restanzahlung)==0){$('.reisepay__betraege').find('.betrag--restanzahlung').addClass('is--paid');} 2067if(parseFloat(options.restbetrag)>0){Payment.Betrag.Offen.Schlusszahlung=parseFloat(options.restbetrag).toFixed(2);} 2068if(Object.keys(Payment.Betrag.Offen).length){Payment.Betrag.createSelect();} 2069$('[data-payment-freier-betrag-input]').on('change',function(){let payment_type=$('[data-payment-type].is--active').data('payment-type');let $reisepay=$('[data-pay]');let t1=$reisepay.data('pay').t1;let t4=$reisepay.data('pay').t4;let t7=$reisepay.data('pay').t7;var betrag=$(this).val().substr(-3,1)=='.'?$(this).val():parseFloat($(this).val().replace('.','').replace(',','.'));console.log("manueller betrag",betrag);Payment.iFrame.setUrl(t1,t4,t7,payment_type,betrag);});},createSelect:function(){var zahlbetrag_select=$('<select></select>',{class:'uk-select auswahl--zahlbetrag',name:'PAYBETRAG_MODIFIED'}).appendTo('.auswahl--zahlbetrag__container').on('change',function(){var payment_type=$('[data-payment-type].is--active').data('payment-type');var $reisepay=$('[data-pay]');var t1=$reisepay.data('pay').t1;var t4=$reisepay.data('pay').t4;var t7=$reisepay.data('pay').t7;let betrag=$(this).val();Payment.iFrame.setUrl(t1,t4,t7,payment_type,betrag);});$.each(Payment.Betrag.Offen,function(i,v){let betrag=parseFloat(v).toFixed(2).toLocaleStr
2069ing('de');let label=i.replace("_"," ");let mark_selected=(i=="Restanzahlung")?'selected="selected"':'';zahlbetrag_select.append('<option value="'+v+'" '+mark_selected+'>'+label+' - '+betrag+' €</option>');});Payment.Subselect.init();}},};var Passolution={init:function(){$('[data-passolution-trigger]').on('change',function(){let oOptions=$('[data-book]').data('book') 2070let sT1=oOptions.t1 2071let sT4=oOptions.t4 2072let sSprache=$('html').attr('lang') 2073let sLaendercodes=oOptions.laendercodes!=''?oOptions.laendercodes:oOptions.laendercode 2074sLaendercodes=sLaendercodes.toLowerCase() 2075if(Passolution.checkAllSet()){let teilnehmerData=Passolution.collectTeilnehmerData() 2076Passolution.get(sSprache,teilnehmerData['nationalitaeten'].join(),sT1,sT4,sLaendercodes,teilnehmerData['teilnehmer'].join())}}) 2077Passolution.View.init()},checkAllSet:function(){let unset_inputs=$('[data-passolution-trigger]').filter(function(){return $(this).val()==''}) 2078if(unset_inputs.length){return false}else{return true}},collectTeilnehmerData:function(){let teilnehmerData={teilnehmer:[],nationalitaeten:[],} 2079$('[data-passolution-trigger]').each(function(){let $this=$(this) 2080let teilnehmer_nr=$this.parents('[data-booking-box="teilnehmer"]').data('teiln_nr') 2081let teilnehmer_nat=$this.val().toLowerCase() 2082teilnehmerData.teilnehmer.push(teilnehmer_nr) 2083teilnehmerData.nationalitaeten.push(teilnehmer_nat)}) 2084return teilnehmerData},Overview:{init(){$('[data-passolution-info]').each(function(){const $this=$(this) 2085const options=$this.data('passolution-info') 2086if(options.travelDetails==''){console.error('keine Trip-URL zur Abfrage vorhanden') 2087$this.parent().html('<div class="uk-text-center">Für diese Reise sind noch keine Einreiseinformationen verfügbar. Schaue bitte in Kürze nochmal vorbei.</div>') 2088return} 2089Passolution.Overview.load($this,options.travelDetails)})},load($container,travelId){$.ajax({type:'GET',url:'/src/cube/jx_passolution.php',data:{cmd:'get.travel.details',travelId:travelId,},}).then((resp)=>{const passolution_info=JSON.parse(resp) 2090let overview_content='' 2091$.each(passolution_info.requirements,(i,r)=>{overview_content+=`<div class="passolution__overview"><div class="tos-h4 uk-text-center">${r.title}</div>${r.overview.content}<p class="uk-margin-medium-top uk-text-center uk-margin-remove-bottom">Bitte beachte auch die Details zu den Einreisebestimmungen bei unserem Partner Passolution.<br/><a href="${travelId}"target="_blank"class="uk-button uk-button-primary uk-margin-top">Details ansehen</a></p></div>`}) 2092$container.html(overview_content)})},},get:function(sprache,staatsangehoerigkeit,t1,t4,laendercodes,teilnehmer){if($.testsystem!=undefined&&$.testsystem=='1'){console.log('Abfrage verhindert wegen Testsystem. Zum Übersteuern ausführen:','$.testsystem = 0') 2093return false} 2094$.ajax({type:'post',url:$.document_path+'/start/jx_ajax.php?cube=jx_passolution',data:{cmd:'search',lang:sprache,t1:t1,t4:t4,nat:staatsangehoerigkeit,destco:laendercodes,teilnehmer:teilnehmer,herkunft:'frontend buchung #'+ 2095$('[data-book]').data('book').t4+', TN: '+ 2096teilnehmer+', System: '+ 2097location.host,},beforeSend:function(){},}).done(function(resp){var $target=$('[data-passolution-target]') 2098$target.html('') 2099$('[data-buchung-item="prrl"]').addClass('has--loaded').slideDown() 2100$.each(resp,function(i,data){if(i!='trip_url'){let landname=data.response.additionalContent.split('/')[0].replace('Reiseziel','').trim() 2101var info_visa=data.response.visa 2102var passolution_output='' 2103if(data.response.entry.status!='noResult'){passolution_output='<h6 class="passolution__section-title">'+ 2104data.response.entry.headline+'</h6>'+ 2105data.response.entry.content} 2106if(data.response.inoculation){passolution_output+='<h6 class="passolution__section-title">'+ 2107data.response.inoculation.headline+'</h6>'+ 2108data.response.inoculation.content} 2109if(data.response.transitvisa){passolution_output+='<h6 class="passolution__section-title">'+ 2110data.response.transitvisa.headline+'</h6>'+ 2111data.response.transitvisa.content} 2112if(data.response.visa){passolution_output+='<h6 class="passolution__section-title">'+ 2113data.response.visa.headline+'</h6>'+ 2114data.response.visa.content} 2115$target.append('<div class="passolution__item" data-passolution-item="'+ 2116i+'"><div class="item__title">'+ 2117landname+'</div><div class="item__content" data-passolution-item-content>'+ 2118passolution_output+'<div></div>')}})})},View:{init:function(){$('[data-booking-box="einreisebestimmungen"]').append('<a class="view__readmore" data-view-readmore></a>') 2119$(document).on('click','[data-view-readmore]',function(e){e.preventDefault() 2120$(this).parents('[data-booking-box="einreisebestimmungen"]').toggleClass('is--active')})},},Covid:{init:function(){$('[data-trigger-passolution-select]').on('click',function(e){e.preventDefault() 2121let $this=$(this) 2122let nationalitaet=$this.data('trigger-passolution-select') 2123$('[data-pci-staatsangehoerigkeit]').val(nationalitaet).trigger('change')}) 2124$('[data-pci-staatsangehoerigkeit]').on('change',function(){let $this=$(this) 2125let data=$(this).parents('[data-passolution-covid-info]').data('passolution-covid-info') 2126let laender=data.laendercodes.replaceAll(' ','').toLowerCase() 2127let staatsangehoerigkeit=$this.val() 2128if($.testsystem!=undefined&&$.testsystem=='1'){console.log('Abfrage verhindert wegen Testsystem.','Abfrage Land',laender,'Nationalit.',staatsangehoerigkeit) 2129return false} 2130Passolution.Covid.get(laender,staatsangehoerigkeit)})},get:function(laender,staatsangehoerigkeit){$.ajax({type:'post',url:$.document_path+'/start/jx_ajax.php?cube=jx_passolution',data:{cmd:'einreise.get.html',lang:'de',nationalities:staatsangehoerigkeit,destinations:laender,parcheck:'disabled',herkunft:'abfrage laenderinfos, System: '+location.host,},beforeSend:function(){$('[data-pci-output]').html('<div class="uk-text-center"><i class="fas fa-circle-notch fa-spin"></i></div>')},}).done(function(resp){$('[data-pci-output]').html('') 2131$.each(resp.records,function(i,data){if(data==null){return} 2132$pci_item=$('<div></div>',{class:'passolution__item',html:'<h3>'+data.title+'</h3>',}).appendTo('[data-pci-output]') 2133$pci_item_accordion=$('<ul></ul>',{class:'uk-accordion','uk-accordion':'',}).appendTo($pci_item) 2134$pci_item_accordion.append('<li><h4 class="item__title uk-accordion-title">'+ 2135data.entry.title+'</h4><div class="item__content uk-accordion-content">'+ 2136data.entry.content+'</div></li></ul>') 2137$pci_item_accordion.append('<li><h4 class="item__title uk-accordion-title">'+ 2138data.visa.title+'</h4><div class="item__content uk-accordion-content">'+ 2139data.visa.content+'</div></li>') 2140$pci_item_accordion.append('<li><h4 class="item__title uk-accordion-title">'+ 2141data.transit_visa.title+'</h4><div class="item__content uk-accordion-content">'+ 2142data.transit_visa.content+'</div></li>') 2143$pci_item_accordion.append('<li><h4 class="item__title uk-accordion-title">'+ 2144data.health.title+'</h4><div class="item__content uk-accordion-content">'+ 2145data.health.content+'</div></li>') 2146$pci_item_accordion.append('<li><h4 class="item__title uk-accordion-title">'+ 2147data.final_provisions.title+'</h4><div class="item__content uk-accordion-content">'+ 2148data.final_provisions.content+'</div></li>')})})},},print:function(section_title,xml_node){},} 2149var Gutschein={DOMElement:null,init:function(container){this.DOMElement=$(container) 2150$('#GUTCODE').bind({keyup:function(e){e.preventDefault() 2151if(e.keyCode==13){if($('#GUTCODE').val().length>
2151=5){const gutschein_code=$('#GUTCODE').val() 2152Gutschein.getType(gutschein_code)}}},change:function(){const gutschein_code=$('#GUTCODE').val()},blur:function(){const gutschein_code=$('#GUTCODE').val() 2153Gutschein.getType(gutschein_code)},}) 2154Gutschein.deleteGutcode()},printMessage:function(message){$('[data-gutschein-meldung]').html(message).show()},getType:function(gutschein_code){$.ajax({url:$.document_path+'/start/jx_extern.php',type:'GET',contentType:'application/json',data:{cmd:'gutschein.gettype',GUTCODE:gutschein_code,},}).done(function(data){if(data.GUTGUELTIG=='0'){Gutschein.printMessage('Dieser Gutscheincode ist leider ungültig.') 2155return} 2156if(data.GUTISPERSONALISIERT=='1'){Gutschein.check(gutschein_code,'individual')}else{Gutschein.check(gutschein_code,'general')}})},check:function(gutschein_code,type){$('.gutschein__error').html('').hide() 2157if(type=='individual'){if(Kunde.LoggedIn){const gutschein_vorname=oKundenData?.vorname??'' 2158const gutschein_nachname=oKundenData?.name??'' 2159$.get($.document_path+'/start/jx_extern.php',{cmd:'kungutschein.check',GUTCODE:gutschein_code,GUTVORNAME:gutschein_vorname,GUTNACHNAME:gutschein_nachname,},function(data){const status=$(data).find('Status').text() 2160switch(status){case'0':break 2161case'151':Gutschein.printMessage('Dieser Gutscheincode ist ungültig.') 2162break 2163case'150':Gutschein.printMessage('Dieser Gutscheincode ist ungültig.') 2164break 2165default:Gutschein.printMessage('Dieser Gutschein ist leider für einen anderen Namen als deinen ausgestellt. Wenn du ihn dennoch einlösen willst, kontaktiere uns bitte unter +49 30 347996-0') 2166break} 2167$(document).trigger('refresh-kassenzettel','Gutschein Abfrage (individuell) Mein CHAM')})}else if(Base.getKundenModus()=='Agentur'){const gutschein_vorname=$('[data-booking-box="gutschein"]').find('[name="gutschein-vorname"]').length?$('[data-booking-box="gutschein"]').find('[name="gutschein-vorname"]').val():''
2168const gutschein_nachname=$('[data-booking-box="gutschein"]').find('[name="gutschein-nachname"]').length?$('[data-booking-box="gutschein"]').find('[name="gutschein-nachname"]').val():'' 2169$.get($.document_path+'/start/jx_extern.php',{cmd:'agtgutschein.check',GUTCODE:gutschein_code,GUTVORNAME:gutschein_vorname,GUTNACHNAME:gutschein_nachname,},function(data){const status=$(data).find('Status').text() 2170if(status=='188'){if(!Gutschein.DOMElement.find('.gutschein__extend').length){$('<section/>',{class:'buchung__boxSection gutschein__extend',html:`<p>Dieser Gutschein ist an einen Kunden gebunden. Bitte gib den vollen Vor-und Nachnamen des Kunden ein.</p><div uk-grid class="uk-child-width-1-2@m"><div><label for="gutschein-input-vorname">Vorname</label><input id="gutschein-input-vorname"type="text"name="gutschein-vorname"class="uk-input"placeholder="Vorname des Kunden"title="Der Vorname des Kunden"/></div><div><label for="gutschein-input-nachname">Nachname</label><input id="gutschein-input-nachname"type="text"name="gutschein-nachname"class="uk-input"placeholder="Nachname des Kunden"title="Der Nachname des Kunden"/></div></div>`,}).appendTo('[data-booking-box="gutschein"]')} 2171Gutschein.DOMElement.on('change','[name="gutschein-vorname"]',function(){Gutschein.check(gutschein_code,'individual')}) 2172Gutschein.DOMElement.on('change','[name="gutschein-nachname"]',function(){Gutschein.check(gutschein_code,'individual')}) 2173$('.request__form').validate() 2174$('[name="gutschein-vorname"]').rules('add',{required:true,messages:{required:'Dieser Name stimmt nicht mit dem Namen überein, auf den der Gutschein ausgestellt ist. Bitte überprüfe die Eingabe.',},}) 2175$('[name="gutschein-nachname"]').rules('add',{required:true,messages:{required:'Dieser Name stimmt nicht mit dem Namen überein, auf den der Gutschein ausgestellt ist. Bitte überprüfe die Eingabe.',},})}else if(status=='181'){Gutschein.printMessage('Der angegebene Kunde ist leider nicht korrekt. Bitte prüfe die Eingabe nochmal.')}else if(status=='150'){Gutschein.printMessage('Dieser Gutscheincode ist ungültig.')} 2176$(document).trigger('refresh-kassenzettel','Gutschein Abfrage (individuell) Agentur')})}else if(Base.getKundenModus()=='Direktkunde'){Gutschein.printMessage('Dieser Gutschein kann nur eingelöst werden, wenn du eingeloggt bist.')}}else{$('[data-booking-box="gutschein"]').find('.gutschein__extend').remove() 2177const kundennr=typeof oKundenData!=='undefined'?oKundenData.nr:'' 2178$.get($.document_path+'/start/jx_extern.php',{cmd:'gutschein.check',REICODE:$('.content').data('reicode'),GUTCODE:gutschein_code,REISEBEGINN:$('#REISEBEGINN').val(),REISEENDE:$('#REISEENDE').val(),KUNDENNR:kundennr,},function(data){const gutschein_status=$(data).find('Status').text() 2179if(gutschein_status=='0'){$('#GUTCODE').removeClass('error').attr('readonly','readonly') 2180$('[data-gutschein-meldung]').slideUp() 2181$('.errordetails').remove() 2182$('#GUTCODE_DELETE').show() 2183$(document).trigger('refresh-kassenzettel','Gutschein Abfrage (allgemein)') 2184return true}else{$('[data-gutschein-meldung]').slideDown() 2185$('#GUTCODE').addClass('error') 2186switch(gutschein_status){case'150':Gutschein.printMessage('Dieser Gutscheincode ist ungültig.') 2187break 2188case'151':Gutschein.printMessage('Dieser Gutscheincode ist ungültig.') 2189break 2190case'300':Gutschein.printMessage('Dieser Gutschein ist für diesen Reisezeitraum nicht einlösbar.') 2191break} 2192$(document).trigger('refresh-kassenzettel','Gutschein Abfrage (allgemein)') 2193return false}})}},deleteGutcode:function(){$('#GUTCODE_DELETE').click(function(e){e.preventDefault() 2194$('#GUTCODE').val('').removeAttr('readonly') 2195$(document).trigger('refresh-kassenzettel','Gutscheincode entfernt') 2196$('#GUTCODE_DELETE').hide()})},} 2197var oDomains={de:['chamtest.tourone.de','chamdev.tourone.de','chamaeleon-reisen.de'],b2c:['dashboard.chamtest.tourone.de','dashboard.chamdev.tourone.de','dashboard.chamaeleon-reisen.de','b2c.chamtest.tourone.de','b2c.chamdev.tourone.de','b2c.chamaeleon-reisen.de','b2c.php7.tourone.de',],agt:['agt.chamtest.tourone.de','agt.chamdev.tourone.de','agt.chamaeleon-reisen.de','agt.chamaeleon-reisen.ch','agt.chamaeleon-reisen.at','agt.php7.tourone.de',],} 2198function initAppOnReady(){Base.init()
2199Form.init() 2200Kunde.init() 2201Navigation.init() 2202if($('body').hasClass('page-layout')){Layout.init()} 2203ISOLandSelect.init() 2204NationalitaetSelect.init() 2205if($('body').hasClass('page-layout--CHA-Start-01')){Base.showHinweis()} 2206Base.showPopup() 2207if($('body').hasClass('page-reisenliste')){Reisenliste.init()} 2208if($('body').hasClass('page-reisedisplay')){Reisedisplay.init()} 2209if($('body').hasClass('page-reiserequest')||$('body').hasClass('page-reisebook')||$('body').hasClass('page-reisepay')||$('body').hasClass('page-reiseprint')){Buchungsstrecke.init() 2210Payment.init() 2211$('.modal-passolution-trigger').on('click',function(e){e.preventDefault() 2212UIkit.modal('#modal--buchung-einreisebestimmungen').show()})}else{sessionStorage.removeItem('buchung')} 2213if($('body').hasClass('page-reisenliste-tpl--merkzettel')){$('[data-reise-href-switch]').each(function(){let $this=$(this) 2214let options=$this.data('reise-href-switch') 2215if(options.master!==''){$this.attr('href',options.master)}})} 2216Saisontabelle.init() 2217Merkzettel.init() 2218Suche.init() 2219Offcanvas.init() 2220if(Base.isDomain('agt')||Base.isDomain('b2c')||$('html').hasClass('page--iframe')){if(Base.isDomain('b2c')){$('[data-chatbot]').remove()} 2221Agentur.init()} 2222if($('body').hasClass('page-reiserequest')||$('body').hasClass('page-reisebook')||$('body').hasClass('page-reiseprint')){$('[data-chatbot]').remove()} 2223if(!Base.isDomain('agt')&&!Base.isDomain('b2c')&&$(document).data('isAffiliate')){Affiliate.init()} 2224if($('main').data('affiliate-modus')=='paxconnect'){Paxconnect.init()}else if($('main').data('affiliate-modus')=='bosys'){Bosys.init()} 2225if($('body').hasClass('page-layout-tpl--keywordSuche')){} 2226if(Base.getKundenModus()=='Agentur'||Base.getKundenModus()=='Affiliate'){$('[remove-on-mode*="agentur"]').remove()}else if(Kunde.LoggedIn){$('[remove-on-mode*="kundenlogin"]').remove()}else{$('[remove-on-mode*="direktkunde"]').remove()} 2227$('.trigger--cookiebot-dialog').on('click',function(e){e.preventDefault() 2228Cookiebot.show()}) 2229$(document).on('click','[data-trigger-function]',function(e){e.preventDefault() 2230const $this=$(this) 2231const function_name=$this.data('trigger-function') 2232if(typeof window[function_name]==='function'){window[function_name]() 2233UIkit.notification('Platzhalter Bilder werden geladen...',{pos:'bottom-right',timeout:2000,})}else{console.error('Funktion '+function_name+' ist nicht definiert.')}}) 2234$(document).on('click','[data-zusatzprogramm]:not(.is--active) .zusatzprogramm__title',function(e){e.preventDefault() 2235const $this=$(this) 2236const $zusatzprogramm=$this.parents('[data-zusatzprogramm]') 2237const $toggle=$zusatzprogramm.find('[data-toggle-zp]') 2238$toggle.trigger('click')}) 2239$(document).on('click','[data-zusatzprogramm].is--active .zusatzprogramm__title',function(e){e.preventDefault() 2240const $this=$(this) 2241const $zusatzprogramm=$this.parents('[data-zusatzprogramm]') 2242const $toggle=$zusatzprogramm.find('[data-toggle-zp]') 2243$toggle.trigger('click') 2244$zusatzprogramm.removeClass('is--active')}) 2245$('[data-toggle-zp]').on('click',function(e){e.preventDefault() 2246let $this=$(this) 2247let options=$this.data('toggle-zp') 2248let $target=$(options.target) 2249let $zp=$target.parents('[data-zusatzprogramm]') 2250$this.addClass('is--active') 2251$zp.addClass('is--active') 2252$target.trigger('click')}) 2253$('[data-copy-content]').on('click',function(e){e.preventDefault() 2254const $this=$(this) 2255const mode=$this.data('copy-content') 2256if(mode=='gutschein'){navigator.clipboard.writeText($.trim($(this).html())).then(()=>
2256UIkit.notification('Der Gutschein-Code wurde kopiert.',{status:'success',timeout:5000,}))}else if(mode=='unterlage'){navigator.clipboard.writeText($.trim($(this).html())).then(()=>UIkit.notification('Der Unterlagen-Link wurde kopiert.',{status:'success',timeout:5000,}))}}) 2257window.setTimeout(function(){$('[data-expand-section]').each(function(){let $this=$(this) 2258let options=$this.data('expand-section') 2259options.fullHeight=$this.height()+75}) 2260$('[data-expand-section]').each(function(){let $this=$(this) 2261let $content=$this.find('[data-expand-content]') 2262let options=$this.data('expand-section') 2263let closedHeight=options.closedHeight 2264let $linkedSection,$linkedContent,linkedOptions 2265if(options.linkedForm!==undefined){$linkedSection=$('[data-form-wrap="'+options.linkedForm+'"]').find('[data-expand-section]') 2266$linkedContent=$('[data-form-wrap="'+options.linkedForm+'"]').find('[data-expand-content]') 2267linkedOptions=$linkedSection.data('expand-section')} 2268$content.css('height',closedHeight) 2269$expand_toggle=$('<a></a>',{class:'expand__toggle','data-expand-toggle':'',html:'<i class="fa-solid fa-angle-down"></i>',}).on('click',function(e){e.preventDefault() 2270if($this.hasClass('is--active')){$this.removeClass('is--active') 2271$content.css('height',closedHeight) 2272if(options.linkedForm!==undefined){$linkedSection.addClass('is--active') 2273$linkedContent.css('height',parseInt(linkedOptions.fullHeight)+parseInt(linkedOptions.fullHeightExtend))}}else{$this.addClass('is--active') 2274$content.css('height',parseInt(options.fullHeight)+parseInt(options.fullHeightExtend)) 2275if(options.linkedForm!==undefined){$linkedSection.removeClass('is--active') 2276$linkedContent.css('height',linkedOptions.closedHeight)}}}).appendTo($this) 2277if(options.status=='open'){$expand_toggle.trigger('click')}})},1000)} 2278function initAppOnLoaded(){$('body').addClass('page--loaded') 2279setTimeout(function(){if(location.hash!=''&&$(location.hash).offset()!==undefined){window.scrollTo(0,$(location.hash).offset().top)}},500) 2280setTimeout(function(){Base.Reveal.init()},500)} 2281if(!(typeof Cookiebot==='object'&&'consent'in Cookiebot)){document.addEventListener('DOMContentLoaded',function(){setTimeout(()=>{initAppOnReady()},1000)},{capture:true,passive:true,})}else{window.addEventListener('CookiebotOnAccept',function(e){initAppOnReady()},false) 2282window.addEventListener('CookiebotOnDecline',function(e){initAppOnReady()},false)} 2283window.onload=function(){initAppOnLoaded()} 2284$(document).on('ajax-reisenliste-loaded',function(){Base.Reveal.init()}) 2285$(document).on('buchung-buttons-created',function(){Base.Readonly.init()}) 2286$(window).on('popstate',function(){$(window).trigger('hashchange')}) 2287$(window).on('hashchange',function(){Reisedisplay.Tabs.Hash.onChange()}) 2288function GO(){var default_values={RT_ADRANREDE_1:'Herr',ANREDE:'Herr',ADRTITEL:'Dr.',RT_ADRTITEL_1:'Dr.',RT_ADRNAME1_1:'Max',VORNAME:'Max',RT_ADRNAME_1:'Muster',NAME:'Muster',ADRPLZ:'91217',PLZ:'91217',ADRORT:'Hersbruck',ORT:'Hersbruck',ADRSTRASSE:'Schlossplatz 4a',STRASSE:'Schlossplatz 4a',HAUSNR:'4a',ADRSTRASSEOHNENR:'Schlossplatz',ADRHAUSNUMMER:'4a',ADRLAND:'DE',LAND:'DE',RT_ADRNATIONALITY_1:'DE',RT_ADREXPIREDATE_1:'01.01.2050',RT_ADRAUTHORITYDATE_1:'01.01.1980',RT_ADRPERSOAUTHORITYDATE_1:'01.01.1980',RT_ADRPERSOEXPIREDATE_1:'01.01.2050',ADREMAIL:'[email protected]',EMAIL:'[email protected]',ADRTEL:'09151 321654',TELEFON:'09151 321654',ADRHANDY:'0123 4567890',ADRHANDY_temp:'0123 4567890',HANDY:'0123 4567890',RT_GEBDATUM_1:'01.01.1980',BOOK_NOTIZ:'TEST von TOURONE, '+moment().format('DD.MM.YYYY HH:mm'),MITTEILUNG:'TEST von TOURONE, '+moment().format('DD.MM.YYYY HH:mm'),NACHRICHT:'TEST von TOURONE, '+moment().format('DD.MM.YYYY HH:mm'),RT_ADRANREDE_2:'Frau',RT_ADRTITEL_2:'Dr.',RT_ADRVORNAME_2:'Lisa',RT_ADRNACHNAME_2:'Lustig',RT_ADREMAIL_2:'[email protected]',RT_GEBDATUM_2:'02.02.1985',RT_ADRNATIONALITY_2:'DE',RT_ADREXPIREDATE_2:'01.01.2050',RT_ADRAUTHORITYDATE_2:'01.01.1980',RT_ADRPERSOAUTHORITYDATE_2:'01.01.1980',RT_ADRPERSOEXPIREDATE_2:'01.01.2050',RT_HANDY_2:'0123 0321654987',RT_HANDY_2_temp:'0123 0321654987',RT_ADRANREDE_3:'Frau',RT_ADRTITEL_3:'Dr.',RT_ADRVORNAME_3:'Tina',RT_ADRNACHNAME_3:'Test',RT_GEBDATUM_3:'03.03.1983',RT_ADREMAIL_3:'[email protected]',RT_ADRNATIONALITY_3:'DE',RT_ADREXPIREDATE_3:'01.01.2050',RT_ADRAUTHORITYDATE_3:'01.01.1980',RT_ADRPERSOAUTHORITYDATE_3:'01.01.1980',RT_ADRPERSOEXPIREDATE_3:'01.01.2050',RT_ADRANREDE_4:'Frau',RT_ADRTITEL_4:'Dr.',RT_ADRVORNAME_4:'Beate',RT_ADRNACHNAME_4:'Beispiel',RT_ADREMAIL_4:'[email protected]',RT_GEBDATUM_4:'04.04.1984',RT_ADRNATIONALITY_4:'DE',RT_ADREXPIREDATE_4:'01.01.2050',RT_ADRAUTHORITYDATE_4:'01.01.1980',RT_ADRPERSOAUTHORITYDATE_4:'01.01.1980',RT_ADRPERSOEXPIREDATE_4:'01.01.2050',NOT_MAIL:'[email protected]',} 2289$.each(default_values,function(fieldname,value){$('[name="'+fieldname+'"]').val(value).trigger('change').trigger('chosen:updated')}) 2290$('.consent').find('input[type="checkbox"]').prop('checked','checked')} 2291function DummyPics(){function checkImage(src,callback){const img=new Image() 2292img.onload=function(){callback(true)} 2293img.onerror=function(){callback(false)} 2294img.src=src} 2295const mediaElements=document.querySelectorAll('source, img')
2296mediaElements.forEach((element)=>{const originalSrc=element.srcset||element.src 2297if(!originalSrc.startsWith('//')){checkImage(originalSrc,(exists)=>{if(!exists){const fallbackSrc1=originalSrc.replace('https://chamdev.tourone.de','https://www.chamaeleon-reisen.de') 2298checkImage(fallbackSrc1,(fallbackExists)=>{if(!fallbackExists){const fallbackSrc2='https://picsum.photos/800/600' 2299if(element.tagName==='SOURCE'){element.srcset=fallbackSrc2}else{element.src=fallbackSrc2}}else{if(element.tagName==='SOURCE'){element.srcset=fallbackSrc1}else{element.src=fallbackSrc1}}})}})}}) 2300$('source[srcset*="nopic"]').attr('srcset','https://picsum.photos/800/600') 2301$('img[src=""], img[src*="nopic"]').attr('src','https://picsum.photos/800/600')} 2302var Notifications={send:function(title,options={}){if(!('Notification'in window)){console.log('Dieser Browser unterstützt keine Benachrichtigungen') 2303return} 2304if(Notification.permission==='granted'){const notification=new Notification(title,options) 2305return notification} 2306else if(Notification.permission!=='denied'){return Notification.requestPermission().then((permission)=>{if(permission==='granted'){const notification=new Notification(title,options) 2307return notification}})}},}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.