/*! iFrame Resizer (iframeSizer.min.js ) - v4.3.11 - 2024-04-22
 *  Desc: Force cross domain iframes to size to content.
 *  Requires: iframeResizer.contentWindow.min.js to be loaded into the target frame.
 *  Copyright: (c) 2024 David J. Bradshaw - dave@bradshaw.net
 *  License: MIT
 */
!function(n){function rt(){return window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver}function o(n,t,i){n.addEventListener(t,i,!1)}function bt(n,t,i){n.removeEventListener(t,i,!1)}function kt(n){return c+"["+(t="Host page: "+(n=n),t=window.top!==window.self?window.parentIFrame&&window.parentIFrame.getId?window.parentIFrame.getId()+": "+n:"Nested host page: "+n:t)+"]";var t}function ut(n){return t[n]?t[n].log:p}function i(n,t){b("log",n,t,ut(n))}function ft(n,t){b("info",n,t,ut(n))}function u(n,t){b("warn",n,t,!0)}function b(n,t,i,r){!0===r&&"object"==typeof console&&console[n](kt(t),i)}function dt(n){function g(){nt("Height");nt("Width");at(function(){lt(s);st(e);a("onResized",s)},s,"init")}function pt(){var n=h.slice(l).split(":"),u=n[1]?parseInt(n[1],10):0,i=t[n[0]]&&t[n[0]].iframe,r=getComputedStyle(i);return{iframe:i,id:n[0],height:u+function(n){if("border-box"!==n.boxSizing)return 0;var t=n.paddingTop?parseInt(n.paddingTop,10):0,n=n.paddingBottom?parseInt(n.paddingBottom,10):0;return t+n}(r)+function(n){if("border-box"!==n.boxSizing)return 0;var t=n.borderTopWidth?parseInt(n.borderTopWidth,10):0,n=n.borderBottomWidth?parseInt(n.borderBottomWidth,10):0;return t+n}(r),width:n[2],type:n[3]}}function nt(n){var u=Number(t[e]["max"+n]),f=Number(t[e]["min"+n]),n=n.toLowerCase(),r=Number(s[n]);i(e,"Checking "+n+" is in range "+f+"-"+u);r<f&&(r=f,i(e,"Set "+n+" to min value"));u<r&&(r=u,i(e,"Set "+n+" to max value"));s[n]=""+r}function wt(){var u=n.origin,r=t[e]&&t[e].checkOrigin;if(r&&""+u!="null"&&!function(){if(r.constructor!==Array)return n=t[e]&&t[e].remoteHost,i(e,"Checking connection is from: "+n),u===n;var n,f=0,o=!1;for(i(e,"Checking connection is from allowed list of origins: "+r);f<r.length;f++)if(r[f]===u){o=!0;break}return o}())throw new Error("Unexpected message received from: "+u+" for "+s.iframe.id+". Message was: "+n.data+". This error can be disabled by setting the checkOrigin: false option or by providing of array of trusted domains.");return 1}function w(n){return h.slice(h.indexOf(":")+tt+n)}function it(n,t){var r,u,i;r=function(){var r,i;f("Send Page Info","pageInfo:"+(r=document.body.getBoundingClientRect(),i=s.iframe.getBoundingClientRect(),JSON.stringify({iframeHeight:i.height,iframeWidth:i.width,clientHeight:Math.max(document.documentElement.clientHeight,window.innerHeight||0),clientWidth:Math.max(document.documentElement.clientWidth,window.innerWidth||0),offsetTop:parseInt(i.top-r.top,10),offsetLeft:parseInt(i.left-r.left,10),scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,documentHeight:document.documentElement.clientHeight,documentWidth:document.documentElement.clientWidth,windowHeight:window.innerHeight,windowWidth:window.innerWidth})),n,t)};u=32;v[i=t]||(v[i]=setTimeout(function(){v[i]=null;r()},u))}function rt(n){return n=n.getBoundingClientRect(),ot(e),{x:Math.floor(Number(n.left)+Number(r.x)),y:Math.floor(Number(n.top)+Number(r.y))}}function ut(n){var t=n?rt(s.iframe):{x:0,y:0},f={x:Number(s.width)+t.x,y:Number(s.height)+t.y};i(e,"Reposition requested from iFrame (offset x:"+t.x+" y:"+t.y+")");window.top===window.self?(r=f,et(),i(e,"--")):window.parentIFrame?window.parentIFrame["scrollTo"+(n?"Offset":"")](f.x,f.y):u(e,"Unable to scroll to requested position, window.parentIFrame not found")}function et(){!1===a("onScroll",r)?ht():st(e)}function kt(n){var n=n.split("#")[1]||"",t=decodeURIComponent(n),t=document.getElementById(t)||document.getElementsByName(t)[0];t?(t=rt(t),i(e,"Moving to in page link (#"+n+") at x: "+t.x+" y: "+t.y),r={x:t.x,y:t.y},et(),i(e,"--")):window.top===window.self?i(e,"In page link #"+n+" not found"):window.parentIFrame?window.parentIFrame.moveToAnchor(n):i(e,"In page link #"+n+" not found and window.parentIFrame not found")}function yt(n){var i,t={};t=0===Number(s.width)&&0===Number(s.height)?{x:(i=w(9).split(":"))[1],y:i[0]}:{x:s.width,y:s.height};a(n,{iframe:s.iframe,screenX:Number(t.x),screenY:Number(t.y),type:s.type})}function a(n,t){return k(e,n,t)}function dt(){function f(r,u){function f(){t[n]?it(t[n].iframe,n):h()}["scroll","resize"].forEach(function(t){i(n,r+t+" listener for sendPageInfo");u(window,t,f)})}function h(){f("Remove ",bt)}switch(t[e]&&t[e].firstRun&&t[e]&&(t[e].firstRun=!1),s.type){case"close":d(s.iframe);break;case"message":r=w(6);i(e,"onMessage passed: {iframe: "+s.iframe.id+", message: "+r+"}");a("onMessage",{iframe:s.iframe,message:JSON.parse(r)});i(e,"--");break;case"mouseenter":yt("onMouseEnter");break;case"mouseleave":yt("onMouseLeave");break;case"autoResize":t[e].autoResize=JSON.parse(w(9));break;case"scrollTo":ut(!1);break;case"scrollToOffset":ut(!0);break;case"pageInfo":it(t[e]&&t[e].iframe,e);n=e;f("Add ",o);t[n]&&(t[n].stopPageInfo=h);break;case"pageInfoStop":t[e]&&t[e].stopPageInfo&&(t[e].stopPageInfo(),delete t[e].stopPageInfo);break;case"inPageLink":kt(w(9));break;case"reset":ct(s);break;case"init":g();a("onInit",s.iframe);break;default:0===Number(s.width)&&0===Number(s.height)?u("Unsupported message received ("+s.type+"), this is likely due to the iframe containing a later version of iframe-resizer than the parent page"):g()}var n,r}var y,p,h=n.data,s={},e=null,b;if("[iFrameResizerChild]Ready"===h)for(b in t)f("iFrame requested init",vt(b),t[b].iframe,b);else c===(""+h).slice(0,l)&&h.slice(l).split(":")[0]in t?(s=pt(),e=s.id,t[e]&&(t[e].loaded=!0),(p=s.type in{"true":1,"false":1,undefined:1})&&i(e,"Ignoring init message from meta parent page"),!p&&(p=!0,t[y=e]||(p=!1,u(s.type+" No settings for "+y+". Message was: "+h)),p)&&(i(e,"Received: "+h),y=!0,null===s.iframe&&(u(e,"IFrame ("+s.id+") not found"),y=!1),y&&wt()&&dt())):ft(e,"Ignored: "+h)}function k(n,i,r){var u=null,f=null;if(t[n]){if("function"!=typeof(u=t[n][i]))throw new TypeError(i+" on iFrame["+n+"] is not a function");f=u(r)}return f}function et(n){n=n.id;delete t[n]}function d(n){var t=n.id;if(!1===k(t,"onClose",t))i(t,"Close iframe cancelled by onClose event");else{i(t,"Removing iFrame: "+t);try{n.parentNode&&n.parentNode.removeChild(n)}catch(n){u(n)}k(t,"onClosed",t);i(t,"--");et(n);h&&(h.disconnect(),h=null)}}function ot(t){null===r&&i(t,"Get page position: "+(r={x:window.pageXOffset===n?document.documentElement.scrollLeft:window.pageXOffset,y:window.pageYOffset===n?document.documentElement.scrollTop:window.pageYOffset}).x+","+r.y)}function st(n){null!==r&&(window.scrollTo(r.x,r.y),i(n,"Set page position: "+r.x+","+r.y),ht())}function ht(){r=null}function ct(n){i(n.id,"Size reset requested by "+("init"===n.type?"host page":"iFrame"));ot(n.id);at(function(){lt(n);f("reset","reset",n.iframe,n.id)},n,"reset")}function lt(n){function e(u){function o(){Object.keys(t).forEach(function(n){function r(n){return"0px"===(t[i]&&t[i].iframe.style[n])}var i;t[i=n]&&null!==t[i].iframe.offsetParent&&(r("height")||r("width"))&&f("Visibility change","resize",t[i].iframe,i)})}function s(n){i("window","Mutation observed: "+n[0].target+" "+n[0].type);g(o,16)}var e;!w&&"0"===n[u]&&(w=!0,i(r,"Hidden iFrame detected, creating visibility listener"),u=rt())&&(e=document.querySelector("body"),new u(s).observe(e,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0}))}function u(t){var u;u=t;n.id?(n.iframe.style[u]=n[u]+"px",i(n.id,"IFrame ("+r+") "+u+" set to "+n[u]+"px")):i("undefined","messageData id not set");e(t)}var r=n.iframe.id;t[r]&&(t[r].sizeHeight&&u("height"),t[r].sizeWidth)&&u("width")}function at(n,t,r){r!==t.type&&e&&!window.jasmine?(i(t.id,"Requesting animation frame"),e(n)):n()}function f(n,r,f,e,o){function h(){var o;f&&"contentWindow"in f&&null!==f.contentWindow?(o=t[e]&&t[e].targetOrigin,i(e,"["+n+"] Sending msg to iframe["+e+"] ("+r+") targetOrigin: "+o),f.contentWindow.postMessage(c+r,o)):u(e,"["+n+"] IFrame("+e+") not found")}function l(){o&&t[e]&&t[e].warningTimeout&&(t[e].msgTimeout=setTimeout(function(){!t[e]||t[e].loaded||s||(s=!0,u(e,"IFrame has not responded within "+t[e].warningTimeout/1e3+" seconds. Check iFrameResizer.contentWindow.js has been loaded in iFrame. This message can be ignored if everything is working, or you can set the warningTimeout option to a higher value or zero to suppress this warning."))},t[e].warningTimeout))}var s=!1;e=e||f.id;t[e]&&(h(),l())}function vt(n){return n+":"+t[n].bodyMarginV1+":"+t[n].sizeWidth+":"+t[n].log+":"+t[n].interval+":"+t[n].enablePublicMethods+":"+t[n].autoResize+":"+t[n].bodyMargin+":"+t[n].heightCalculationMethod+":"+t[n].bodyBackground+":"+t[n].bodyPadding+":"+t[n].tolerance+":"+t[n].inPageLinks+":"+t[n].resizeFrom+":"+t[n].widthCalculationMethod+":"+t[n].mouseEvents}function yt(r,e){function v(i){var u=rt();u&&(u=u,h=r.parentNode?((u=new u(function(n){n.forEach(function(n){Array.prototype.slice.call(n.removedNodes).forEach(function(n){n===r&&d(r)})})})).observe(r.parentNode,{childList:!0}),u):null);o(r,"load",function(){var u,e;f("iFrame.onload",i,r,n,!0);u=t[c]&&t[c].firstRun;e=t[c]&&t[c].heightCalculationMethod in it;!u&&e&&ct({iframe:r,height:0,width:0,type:"init"})});f("init",i,r,n,!0)}function w(n){var t=n.split("Callback");2===t.length&&(this[t="on"+t[0].charAt(0).toUpperCase()+t[0].slice(1)]=this[n],delete this[n],u(c,"Deprecated: '"+n+"' has been renamed '"+t+"'. The old method will be removed in the next major version."))}function b(n){if(n=n||{},t[c]=Object.create(null),t[c].iframe=r,t[c].firstRun=!0,t[c].remoteHost=r.src&&r.src.split("/").slice(0,3).join("/"),"object"!=typeof n)throw new TypeError("Options is not an object");Object.keys(n).forEach(w,n);var i,u=n;for(i in s)Object.prototype.hasOwnProperty.call(s,i)&&(t[c][i]=(Object.prototype.hasOwnProperty.call(u,i)?u:s)[i]);t[c]&&(t[c].targetOrigin=!0!==t[c].checkOrigin||""===(n=t[c].remoteHost)||null!==n.match(/^(about:blank|javascript:|file:\/\/)/)?"*":n)}function l(n){var u=t[c][n];1/0!==u&&0!==u&&(r.style[n]="number"==typeof u?u+"px":u,i(c,"Set "+n+" = "+r.style[n]))}function a(n){if(t[c]["min"+n]>t[c]["max"+n])throw new Error("Value for min"+n+" can not be greater than max"+n);}var c=function(n){if("string"!=typeof n)throw new TypeError("Invaild id for iFrame. Expected String");var t;return""===n&&(r.id=(t=e&&e.id||s.id+y++,null!==document.getElementById(t)&&(t+=y++),n=t),p=(e||{}).log,i(n,"Added missing iframe ID: "+n+" ("+r.src+")")),n}(r.id);if(c in t&&"iFrameResizer"in r)u(c,"Ignored iFrame, already setup.");else{switch(b(e),i(c,"IFrame scrolling "+(t[c]&&t[c].scrolling?"enabled":"disabled")+" for "+c),r.style.overflow=!1===(t[c]&&t[c].scrolling)?"hidden":"auto",t[c]&&t[c].scrolling){case"omit":break;case!0:r.scrolling="yes";break;case!1:r.scrolling="no";break;default:r.scrolling=t[c]?t[c].scrolling:"no"}a("Height");a("Width");l("maxHeight");l("minHeight");l("maxWidth");l("minWidth");"number"!=typeof(t[c]&&t[c].bodyMargin)&&"0"!==(t[c]&&t[c].bodyMargin)||(t[c].bodyMarginV1=t[c].bodyMargin,t[c].bodyMargin=t[c].bodyMargin+"px");v(vt(c));t[c]&&(t[c].iframe.iFrameResizer={close:d.bind(null,t[c].iframe),removeListeners:et.bind(null,t[c].iframe),resize:f.bind(null,"Window resize","resize",t[c].iframe),moveToAnchor:function(n){f("Move to anchor","moveToAnchor:"+n,t[c].iframe,c)},sendMessage:function(n){f("Send Message","message:"+(n=JSON.stringify(n)),t[c].iframe,c)}})}}function g(n,t){null===a&&(a=setTimeout(function(){a=null;n()},t))}function pt(){"hidden"!==document.visibilityState&&(i("document","Trigger event: Visibility change"),g(function(){wt("Tab Visible","resize")},16))}function wt(n,i){Object.keys(t).forEach(function(r){var u;t[u=r]&&"parent"===t[u].resizeFrom&&t[u].autoResize&&!t[u].firstRun&&f(n,i,t[r].iframe,r)})}function gt(){o(window,"message",dt);o(window,"resize",function(){var n;i("window","Trigger event: "+(n="resize"));g(function(){wt("Window "+n,"resize")},16)});o(document,"visibilitychange",pt);o(document,"-webkit-visibilitychange",pt)}function nt(){function f(n,i){if(i){if(!i.tagName)throw new TypeError("Object is not a valid DOM element");if("IFRAME"!==i.tagName.toUpperCase())throw new TypeError("Expected <IFRAME> tag, found <"+i.tagName+">");yt(i,n);t.push(i)}}for(var t,o=["moz","webkit","o","ms"],r=0;r<o.length&&!e;r+=1)e=window[o[r]+"RequestAnimationFrame"];return e?e=e.bind(window):i("setup","RequestAnimationFrame not supported"),gt(),function(i,r){var e;switch(t=[],(e=i)&&e.enablePublicMethods&&u("enablePublicMethods option has been removed, public methods are now always available in the iFrame"),typeof r){case"undefined":case"string":Array.prototype.forEach.call(document.querySelectorAll(r||"iframe"),f.bind(n,i));break;case"object":f(i,r);break;default:throw new TypeError("Unexpected data type ("+typeof r+")");}return t}}function ni(n){n.fn?n.fn.iFrameResize||(n.fn.iFrameResize=function(n){return this.filter("iframe").each(function(t,i){yt(i,n)}).end()}):ft("","Unable to bind to jQuery, it is not fully loaded.")}var y,h,p,w,tt,c,l,r,e,it,t,a,s,v;"undefined"!=typeof window&&(y=0,w=p=!1,tt=7,l=(c="[iFrameSizer]").length,r=null,e=window.requestAnimationFrame,it=Object.freeze({max:1,scroll:1,bodyScroll:1,documentElementScroll:1}),t={},a=null,s=Object.freeze({autoResize:!0,bodyBackground:null,bodyMargin:null,bodyMarginV1:8,bodyPadding:null,checkOrigin:!0,inPageLinks:!1,enablePublicMethods:!0,heightCalculationMethod:"bodyOffset",id:"iFrameResizer",interval:32,license:"1jqr0si6pnt",log:!1,maxHeight:1/0,maxWidth:1/0,minHeight:0,minWidth:0,mouseEvents:!0,resizeFrom:"parent",scrolling:!1,sizeHeight:!0,sizeWidth:!1,warningTimeout:5e3,tolerance:0,widthCalculationMethod:"scroll",onClose:function(){return!0},onClosed:function(){},onInit:function(){},onMessage:function(){u("onMessage function not defined")},onMouseEnter:function(){},onMouseLeave:function(){},onResized:function(){},onScroll:function(){return!0}}),v={},window.jQuery!==n&&ni(window.jQuery),"function"==typeof define&&define.amd?define([],nt):"object"==typeof module&&"object"==typeof module.exports&&(module.exports=nt()),window.iFrameResize=window.iFrameResize||nt())}();
/*!
 * tixforgigs_template:
 * 
 * usage
 * add div to page: 
 *      <div id="tixforgigs-template"></div>
 * add script with onload-handler calling init: 
 *      <script async src=".../tixforgigs_template" onload="tixforgigs.init(this, 'tixforgigs-template','the-templateId[list oder detail]',eventId-for-details, culture)">
 *      </script>
 * 
 */
var tixforgigs=tixforgigs||function(){function f(i,u){var e,o,f;if(typeof r=="function"&&typeof i.data=="object"&&t.indexOf(i.origin)!==-1&&i.data.eventName==="tixforgigs.iframePostMessage"&&(e=n[u],e&&(f=e.iframe,(f.contentWindow||f.documentWindow)==i.source&&r({messageType:i.data.messageType,messageData:i.data.messageData}))),t.indexOf(i.origin)!==-1&&i.data.eventName==="tixforgigs.resize"&&(o=n[i.data.wrapperId],o&&(f=o.iframe,(f.contentWindow||f.documentWindow)==i.source))){f.style.height=i.data.data+"px";return}}var r,t=null,u="",e=["de","de-de","en","en-gb","es","es-co"],n={},o=function(i,r,o,s,h){var y,c=null,b=0,k=document.getElementById(r),l=document.createElement("iframe"),v=document.createElement("div"),d,w;y=i.src.split("/");y.splice(-3,3);t=y.join("/");b=e.indexOf(""+h);switch(b){case 0:case 1:u="/de-de";break;case 2:case 3:u="/en-gb";break;case 4:case 5:u="/es-co"}var a=null,p="tixforgigs.template."+o+".sessionId",g=function(n,t){for(t=n="";n++<36;t+=n*51&52?(n^15?8^Math.random()*(n^20?16:4):4).toString(16):"-");return t};try{a=sessionStorage.getItem(p);!!a==!1&&(d=g(),sessionStorage.setItem(p,d));a=sessionStorage.getItem(p)}catch(nt){}c=t+u+"/Template/Index?id="+encodeURIComponent(o)+"&wrapperId="+encodeURIComponent(r);s&&(c=c+"&eventId="+s);a&&(c=c+"&sid="+a);w=r+"-iframe";l.setAttribute("id",w);l.setAttribute("style","border: 0px solid transparent; min-width: 100%; width:100%; height:100%; min-height:200px;");v.setAttribute("style","height:100%; width:100%;");l.setAttribute("src",c);v.appendChild(l);k.appendChild(v);n[r]={iframe:l,iframeWrapper:v,wrapper:k,frameLoaded:!1};n[r].iframe.addEventListener("load",function(){n[r].frameLoaded=!0});typeof iFrameResize!="undefined"?iFrameResize({checkOrigin:!1,resizeFrom:"child"},"#"+w):window.addEventListener("message",f,!0)},i,s=function(u,e){function s(n){f(n,u)}function o(){var f=n[u].iframe;try{e&&typeof e=="function"?(i&&window.removeEventListener("message",i,!0),r=e,i=s,window.addEventListener("message",i,!0),f.contentWindow.postMessage({eventName:"registerPostMessage"},t)):(r=null,window.removeEventListener("message",i,!0),f.contentWindow.postMessage({eventName:"unregisterPostMessage"},t))}catch{}}n[u].frameLoaded&&o();n[u].iframe.addEventListener("load",o)};return{init:o,registerMessageHandler:s}}()