//tealium universal tag - utag.439 ut4.0.202505290754, Copyright 2025 Tealium.com Inc. All Rights Reserved. try{(function(id,loader){var u={"id":id};utag.o[loader].sender[id]=u;u.ev={"view":1,"link":1};u.map={"dom.url":"config.page_location","page_name":"config.page_path","ga4_debug_mode":"config.debug_mode","ga4_traffic_type":"all_events.traffic_type","ga4_ignore_referral":"config.ignore_referrer","ga4_event_name:view_hotel_page":"view_hotel_page","ga4_event_name:search_product":"search_product","ga4_event_name:campaign_register_button":"campaign_register_button","ga4_event_name:campaign_optin_button":"campaign_optin_button","hotelcode":"view_hotel_page.hotel_id","hotelname":"view_hotel_page.hotel_name","brandname":"view_hotel_page.hotel_brand","country_code":"view_hotel_page.hotel_category2","city_name":"view_hotel_page.hotel_category3","checkindate":"search_product.start_date","checkoutdate":"search_product.end_date","nights":"search_product.number_of_nights","roomcount":"search_product.number_of_rooms","adults":"search_product.adults","children":"search_product.children","infants":"search_product.babies","search_city":"search_product.search_city","search_country":"search_product.search_country","search_term":"search_product.search_term","search_type":"search_product.search_type","ga4_campaign_name":"campaign_optin_button.campaign_name,campaign_register_button.campaign_name"};u.extend=[function(a,b){try{if(1){if(a=="view"){var page_type=b['page_type'];var page_name=b['page_name'];if(typeof page_type!=="undefined"){if(page_type==="Hotel Page"){b["ga4_event_name"]="view_hotel_page";}}else if(typeof page_name!=="undefined"){if(page_name=="res-availability-room"||page_name=="res-availability-offer"){b["ga4_event_name"]="search";}else if(page_name.search(/^form_(.*)_confirmation$/gi)!==-1){b["ga4_event_name"]="submit_form";b["form_name"]=page_name.replace(/^form_(.*)_confirmation$/gi,"$1");}}}}}catch(e){utag.DB(e)}},function(a,b){try{if(1){if(a=="view"){b["ga4_debug_mode"]=true;if(b["dom.domain"].search(/^www\./gi)!=-1){b["ga4_debug_mode"]=false;}}}}catch(e){utag.DB(e)}},function(a,b,c,d,e,f,g){if(1){d=b['dom.domain'];if(typeof d=='undefined')return;c=[{'^uat\.':'uat_traffic'},{'^staging\.':'staging_traffic'}];var m=false;for(e=0;e0){mapFunc(arr,obj[i],item);}else{obj[i]=item;}} function toBoolean(val){val=val||"";return val===true||val.toLowerCase()==="true"||val.toLowerCase()==="on";} function hasgtagjs(){window.gtagRename=window.gtagRename||""||"gtag";if(utag.ut.gtagScriptRequested){return true;} var i,s=document.getElementsByTagName("script");for(i=0;i=0&&(s[i].id&&s[i].id.indexOf("utag")>-1)){return true;}} var data_layer_name=""||"dataLayer";window[data_layer_name]=window[data_layer_name]||[];if(typeof window[window.gtagRename]!=="function"){window[window.gtagRename]=function(){window[data_layer_name].push(arguments);};var cross_track=toBoolean(""),cross_track_domains="";if(cross_track&&cross_track_domains!==""){window[window.gtagRename]("set","linker",{domains:cross_track_domains.split(","),accept_incoming:true});} window[window.gtagRename]("js",new Date());} return false;} u.scriptrequested=hasgtagjs();u.initialized=false;u.o=window[window.gtagRename];function setGlobalProperties(data,reset,custom_property){var map={"user_id":{"name":"user_id","type":"exists","reset":true},"page_path":{"name":"page_path","type":"exists","reset":true},"page_title":{"name":"page_title","type":"exists","reset":true},"page_location":{"name":"page_location","type":"exists","reset":false},"developer_id.dYmQxMT":{"name":"developer_id.dYmQxMT","type":"exists","reset":false},"user_properties":{"name":"user_properties","type":"object","reset":true}},prop,subProp,g={};if(custom_property&&reset){g[custom_property]="";} for(prop in utag.loader.GV(map)){if(reset&&map[prop].reset){if(map[prop].name==="user_properties"){for(subProp in data[prop]){if(!g[map[prop].name]){g[map[prop].name]={};} g[map[prop].name][subProp]="";}}else{g[map[prop].name]="";}}else{if(map[prop].type==="bool"){if(data[prop]==true||data[prop]==="true"){g[map[prop].name]=true;}} else if(map[prop].type==="exists"||map[prop].type==="object"){if(data[prop]){g[map[prop].name]=data[prop];}}}} if(!utag.ut.isEmptyObject(g)){u.o("set",g);}} function getItems(length){var g={},i,items=[];length=length||u.data.product_id.length||u.data.product_name.length;for(i=0;i