var goodtbaseUrl="https://timer.good-apps.co/";var goodtApiUrl="https://timer.good-apps.co/";var goodtShop="the5ivebrand-2.myshopify.com";var goodtTriggerEvents={};var goodtPageIds=[];var goodtCertainBtns=[];var goodtCurrencyCode="USD";var goodtCurrencySymbol="$";var goodtVersion="27";var goodtartWidget={"widget_name":"Widget name","widget_type":"1","widget_themes":"style_1","design_type":{"position":"full","animation":"animate__slideInDown","cart_icon":"cart_right_center"},"top":{"top_show":true,"background_top":"#fff","close_show":true,"close_bg_color":"#F8F5F5","close_bg_color_hover":"#F8F5F5CC","close_color":"#191919","close_color_hover":"#191919","close_border_radius":"10"},"main":{"background_main":"transparent","background_heading":"transparent","texts_show":true,"timer_show":false,"upsell_show":false,"timer_template":"1","timer_min":"11","timer_sec":"45","timer_hour":"2","timer_days":"1","timer_bg":"#222831","display_bg":"transparent","title_bg":"transparent","title_border_radius":"0","title_padding":"3","timer_border_radius":0,"timer_font_size":"15","timer_color":"#c0deed","timer_title_color":"#c0deed","timer_number_color":"#7fffd4","timer_number_text_color":"#7fffd4","timer_number_text_fs":"10","timer_number_background":"transparent","timer_number_border":"0","timer_number_border_color":"transparent","timer_number_fs":"25","timer_font_weight":"400","timer_font_style":"normal","timer_line_height":"19","wallpaper":"wallpaper_0","title_show":true,"title_font_size":"20","title_color":"#7200A0","title_font_weight":"700","title_font_style":"normal","title_line_height":21,"border_width":"0","border_color":"#fff","border_radius":"0","cart_icon_show":true,"cart_icon_bg":"#191919","cart_icon_color":"#ffffff","cart_icon_number_c":"#000000","cart_icon_number_bg":"#F7F3F3","timer_number_text_lh":"18","timer_number_width":"55","timer_padding_l":"30","timer_padding_r":"30","timer_padding_t":"15","timer_padding_b":"15","schedule_show":false,"timer_actions":"close","timer_border_color":"#000","timer_border_width":0},"discount_code":{"discount_code_show":false,"code_background":"#fcfafa","code_background_input":"#fff","code_border_in_width":"1","code_border_in_color":"#EEEEEE","code_in_color":"#191919","code_border_in_radius":"5","code_border_width":"2","code_border_color":"#EEEEEE","code_text_color":"#191919","code_text_font_size":"18","code_text_font_weight":"700","code_text_font_style":"normal","code_text_line_height":"20","code_btn_bg":"#191919","code_btn_bg_h":"#191919cc","code_btn_color":"#fff","code_btn_color_h":"#fff","code_btn_font_size":"18","code_btn_font_weight":"700","code_btn_font_style":"normal","code_btn_line_height":"20"},"rewards":{"rewards_show":true,"rewards_background":"#222831","rewards_background_pro":"#E9E9E9","rewards_background_pro_f":"#13cad2","rewards_border_width":"2","rewards_border_color":"#222831","rewards_text_color":"#c0deed","rewards_text_font_size":"18","rewards_text_font_weight":"700","rewards_text_font_style":"normal","rewards_text_line_height":"20","rewards_cart_total_show":true,"rewards_item_count_show":false,"rewards_cart_total":"70","rewards_item_count":"5"},"bottom":{"background_bottom":"#FBF3FE","reject_btn_show":true,"reject_btn_bg":"transparent","reject_btn_bg_hover":"transparent","reject_btn_font_color":"#5C5B5B","reject_btn_font_color_hover":"#5C5B5B","reject_btn_border_radius":"0","reject_btn_font_size":"18","reject_btn_font_weight":"700","reject_btn_font_style":"normal","reject_btn_line_height":"19","reject_btn_padding_t_b":"0","reject_btn_padding_l_r":"0","checkout_btn_show":true,"checkout_btn_bg":"#c0deed","checkout_btn_bg_hover":"#c0deedcc","checkout_btn_font_color":"#222831","checkout_btn_font_color_hover":"#222831","checkout_btn_border_radius":"5","checkout_btn_font_size":"20","checkout_btn_font_weight":"700","checkout_btn_font_style":"normal","checkout_btn_line_height":"22","checkout_btn_padding_t_b":5,"checkout_btn_padding_l_r":"20","total_show":true,"total_color":"#191919","total_font_size":"24","total_font_weight":"500","total_font_style":"normal","total_line_height":"26","total_price_color":"#000000","total_price_font_size":"24","total_price_font_weight":"700","total_price_font_style":"normal","total_price_line_height":"28","discounts_color":"#191919","discounts_font_size":"18","discounts_font_weight":"500","discounts_font_style":"normal","discounts_line_height":"20","discounts_price_color":"#777777","discounts_price_font_size":"18","discounts_price_font_weight":"700","discounts_price_font_style":"normal","discounts_price_line_height":"21","discounts_show":false},"product":{"background_img":"#fff","background":"#fff","cart_btn_bg":"#c0deed","cart_btn_bg_hover":"#c0deedcc","cart_btn_font_color":"#222831","cart_btn_font_color_hover":"#222831","cart_btn_border_radius":"5","cart_btn_font_size":"18","cart_btn_font_weight":"700","cart_btn_font_style":"normal","cart_btn_line_height":"19","remove_btn_bg":"transparent","remove_btn_bg_hover":"transparent","delete_btn_font_color":"#F1CAFF","delete_btn_font_color_hover":"#F1CAFFaa","remove_btn_border_radius":"3","remove_btn_font_size":"15","remove_btn_font_weight":"700","remove_btn_font_style":"normal","remove_btn_line_height":"15","remove_btn_padding_t_b":"10","remove_btn_padding_l_r":"16","prod_border_width":"0","prod_border_color":"#E6E6E6","prod_border_radius":"0","prod_title_show":true,"prod_title_color":"#28313a","prod_title_font_size":"14","prod_title_font_weight":"700","prod_title_font_style":"normal","prod_title_line_height":"21","prod_desc_show":true,"prod_desc_show_full":true,"prod_desc_color":"#444F65","prod_desc_font_size":"16","prod_desc_font_weight":"400","prod_desc_font_style":"normal","prod_desc_line_height":"18","price_show":true,"price_color":"#7400A3","price_font_size":"15","price_font_weight":"700","price_font_style":"normal","price_line_height":"22","compare_price_show":true,"compare_price_color":"#777777","compare_price_font_size":"18","compare_price_font_weight":"700","compare_price_font_style":"normal","compare_price_line_height":"20","save_show":true,"save_bg":"#A74FCB","save_border_radius":"3","save_color":"#fff","save_font_size":"12","save_font_weight":"700","save_font_style":"normal","save_line_height":"13","save_padding":"5","qty_show":true,"qty_background":"transparent","qty_font_color":"#999999","qty_btn_bg":"#999999","qty_btn_bg_hover":"#999999","qty_btn_color":"#000000","qty_btn_color_hover":"#999999","qty_border_radius":"5","variations_show":true,"variations_background":"#fff","variations_font_color":"#444F65","variations_border_width":"1","variations_border_color":"#EEEEEE","variations_border_radius":"0"},"offer_product":{"background_o":"#fff","background_img_o":"#fff","prod_border_width_o":"1","prod_border_color_o":"#E6E6E6","prod_border_radius_o":"0","offer_title_show":true,"offer_font_size":"20","offer_color":"#7200A0","offer_font_weight":"700","offer_font_style":"normal","offer_line_height":"22","prod_title_show_o":true,"prod_title_color_o":"#28313a","prod_title_font_size_o":"18","prod_title_font_weight_o":"700","prod_title_font_style_o":"normal","prod_title_line_height_o":"21","prod_desc_show_o":true,"prod_desc_show_full_o":true,"prod_desc_color_o":"#444F65","prod_desc_font_size_o":"16","prod_desc_font_weight_o":"400","prod_desc_font_style_o":"normal","prod_desc_line_height_o":"18","price_show_o":true,"price_color_o":"#7400A3","price_font_size_o":"20","price_font_weight_o":"700","price_font_style_o":"normal","price_line_height_o":"22","compare_price_show_o":true,"compare_price_color_o":"#777777","compare_price_font_size_o":"18","compare_price_font_weight_o":"700","compare_price_font_style_o":"normal","compare_price_line_height_o":"20","qty_show_o":true,"qty_background_o":"transparent","qty_font_color_o":"#999999","qty_btn_bg_o":"#999999","qty_btn_bg_hover_o":"transparent","qty_btn_color_o":"#000000","qty_btn_color_hover_o":"#fff","qty_border_radius_o":"5"},"translation":{"title":"Your Cart","description":"My description","add_to_cart_btn":"add","remove_btn":"Remove","reject_btn":"Or continue shopping","checkout_btn":"Button","save_text":"Save","total_btn":"Total:","shipping_btn":"Shipping","discounts_btn":"Discounts","timer_msg":"Sales end in:","timer_title":"Hurry up!","discount_code":"Discount Code","discount_apply_btn":"Apply","discount_applied":"Your Discount Code Applied","discount_not_exist":"No Such Discount Code","rewards_preunlock":"Spend {{amount}} more and receive free shipping!","rewards_postunlock":"Free shipping available!","empty_cart":"Your cart is currently empty","button_title":"Button","timer_title_days":"Days","timer_title_hours":"Hours","timer_title_min":"Minutes","timer_title_sec":"Seconds"},"custom_css":"","widget_active_img":"https:\/\/timer.good-apps.co\/assets\\\/images\\\/widgets\\\/preview\\\/cart\\\/style_1.png"};var goodtActiveApp=1;var goodtartAppName="Salescountdowntimer";var goodtOffersHash=[null];var goodtartProductPage="";var goodtartCartPage="";var goodtartAllPages="";if(!goodtApp){var goodtApp=function(){const params=new URLSearchParams(window.location.search)
if(!(goodtActiveApp||sessionStorage.getItem('goodtPreviewMode')))return;if(sessionStorage.getItem('goodtPreviewMode')){showPreviewMessage()};function showPreviewMessage(){let html=`
Preview Mode
`;document.body.insertAdjacentHTML('afterbegin',html)}
let cartBuilded=false;let cartIsOpen=false;let cartToAnimate=null;const url=location.href;const storeUrl=new URL(url).origin;const previewMode=location.href.includes('offerId');function setCookieData(){let url=location.href;const oneWeek=new Date(Date.now()+3600000*24*7);let currentDate=new Date(Date.now());currentDate=currentDate.toUTCString();if(url.includes('#')){url=url.split('#');if(url[url.length-1]){let parameter='#'+url[url.length-1];setCookie('goodtUrl',parameter,{expires:oneWeek});}}}
setCookieData();function setCookie(name,value,options={}){options={path:'/',...options};if(options.expires instanceof Date){options.expires=options.expires.toUTCString();}
let updatedCookie=encodeURIComponent(name)+"="+encodeURIComponent(value);for(let optionKey in options){updatedCookie+="; "+optionKey;let optionValue=options[optionKey];if(optionValue!==true){updatedCookie+="="+optionValue;}}
document.cookie=updatedCookie;}
function getCookie(name){let matches=document.cookie.match(new RegExp("(?:^|; )"+name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,'\\$1')+"=([^;]*)"));return matches?decodeURIComponent(matches[1]):undefined;}
styleLoader();if(Shopify.designMode){buildPreviewContainer();}
if(location.href.includes('offerId')&&location.href.includes(goodtartAppName)){setCrisp();buildPreviewMessage();addPreviewMessageStyles();setTimeout(()=>{openPopup();},0)
popupEvents();}
function buildPreviewMessage(){const html=`
`;const element=document.createElement("div");element.classList.add('goodt_minipopup','goodt_minipopup_hide');element.innerHTML=html;const rootDiv=document.body;rootDiv.append(element);}
function addPreviewMessageStyles(){const styles=`
.goodt_minipopup {
position: fixed;
left: 30px;
bottom: 10%;
width: 300px;
height: 350px;
padding: 30px;
background: #fff;
box-shadow: 0px 3px 16px 0px rgba(0,0,0,0.08);
border: 1px solid #f1f1f2;
border-radius: 8px;
z-index: 999;
transition: 0.7s;
}
@media (max-width: 480px){
.goodt_minipopup {
width: 80%;
}
}
@media (max-width: 380px){
.goodt_minipopup {
padding: 15px;
}
}
.goodt_minipopup_hide {
transform: translateY(120%);
opacity: 0;
}
.goodt_minipopup_content {
position: relative;
display: flex;
height: 100%;
flex-direction: column;
justify-content: space-between;
align-items: center;
}
.goodt_minipopup__close {
position: absolute;
width: 10px;
top: -25px;
right: -17px;
transition: 0.3s;
cursor: pointer;
}
@media (max-width: 380px){
.goodt_minipopup__close {
width: 8px;
top: -16px;
right: -7px;
}
}
.goodt_minipopup__close:hover {
transform: scale(1.2);
}
.goodt_minipopup__message {
text-align: center;
margin: 0px;
font-size: 16px;
font-weight: 400;
text-transform: none;
color: #000;
}
@media (max-width: 380px){
.goodt_minipopup__message {
font-size: 14px;
}
}
.goodt_minipopup__btns {
display: flex;
justify-content: center;
gap: 10px;
}
@media (max-width: 480px){
.goodt_minipopup__btns {
flex-direction: column;
}
}
.goodt_minipopup__btn {
padding: 10px 25px;
border-radius: 6px;
font-size: 12px;
transition: 0.5s;
cursor: pointer;
border: none;
color: white;
}
.goodt_minipopup__btn--yellow {
background: #FFB73E;
}
.goodt_minipopup__btn--yellow:hover {
background: #b09059;
}
.goodt_minipopup__btn--gray {
background: #f9f9f9;
color: #78829d
}
.goodt_minipopup__btn--gray:hover {
background: #f1f1f2;
}
`;const element=document.createElement("style");element.innerHTML=styles;const rootDiv=document.head;rootDiv.append(element);};function openPopup(){const popup=document.querySelector('.goodt_minipopup');popup.classList.remove('goodt_minipopup_hide');};function closePopup(){const popup=document.querySelector('.goodt_minipopup');popup.classList.add('goodt_minipopup_hide');};function popupEvents(){const closeBtn=document.querySelector('.goodt_minipopup__btn--gray');const closeIcon=document.querySelector('.goodt_minipopup__close');closeBtn.addEventListener('click',()=>{closePopup();})
closeIcon.addEventListener('click',()=>{closePopup();})
const opener=document.querySelector('.goodt_minipopup__btn--yellow');opener.addEventListener('click',(e)=>{e.preventDefault();$crisp.push(["do","chat:open"])
$crisp.push(["do","message:send",["text","Hi, I’m using GA Timer and can’t see the widget. Please assist."]]);})}
function setCrisp(){const scriptTag=document.createElement('script');scriptTag.setAttribute('type','text/javascript');scriptTag.innerHTML=`
window.$crisp=[];
window.CRISP_WEBSITE_ID="4e50b386-fde3-4da7-97f2-80e38503c5ab";
$crisp.push(["set", "user:email", "{{ $userEmail }}"]);
$crisp.push(["set", "user:name", "{{ $storeOwnerName }}"]);
$crisp.push(["set", "session:segments", [["Timer"]]]);
$crisp.push(["set", "session:event", ["user:welcome"]]);
$crisp.push(["set", "session:data", [
[
["myshopifyurl", "${goodtShop}"],
["totalsales", "{{ $allAmount }}"],
["totalOffers", "{{ $countOffers }}"]
]
]]);
(function(){
d=document;
s=d.createElement("script");
s.src="https://client.crisp.chat/l.js";
s.async=1;
d.getElementsByTagName("head")[0].appendChild(s);
})();`;const rootDiv=document.head;rootDiv.append(scriptTag);$crisp.push(["do","chat:close"])}
if((location.href.includes('/products/')&&goodtTriggerEvents.includes(15))||(location.href.includes('/themes/')&&goodtTriggerEvents.includes(15))){triggerType=15;if(Object.keys(goodtTriggerEvents).length&&goodtTriggerEvents.includes(+triggerType)){let url=location.href.split('?')[0].split('/');let productsIndex=url.indexOf('products');url=url[productsIndex+1];fetchPage(location.href).then(function(dataPage){const variantsId=[];const productId=dataPage.product.id;const variants_arr=dataPage.product.variants;variants_arr.forEach((variant)=>{variantsId.push(variant.id)})
if(dataPage.product.variants[0].compare_at_price!==''||previewMode||Shopify.designMode){fetchCart().then(function(dataCart){let cart='0';if(dataCart.items.length){cart=dataCart.items.map(item=>item.product_id);cart=cart.join();}
const offerParams={triggerType,productId,variantsId,cart,cartValue:dataCart.total_price}
offerFetch(offerParams).then(function(dataOffer){const object=dataOffer.design;for(var prop in object){if(object[prop].design_type.position!=="cart_page"){goodtartWidgetObj=object[prop]
offerId=prop
mainOfferId=dataOffer.offers[prop].main_offer_id;}
buildWidget(goodtartWidgetObj,offerId,mainOfferId);}});});}});}}
if((location.href.includes('/products/')&&goodtTriggerEvents.includes(6))||(location.href.includes('/themes/')&&goodtTriggerEvents.includes(6))){triggerType=6;if(Object.keys(goodtTriggerEvents).length&&goodtTriggerEvents.includes(+triggerType)){let url=location.href.split('?')[0].split('/');let productsIndex=url.indexOf('products');url=url[productsIndex+1];fetchPage(location.href).then(function(dataPage){const variantsId=[];const productId=dataPage.product.id;const variants_arr=dataPage.product.variants;variants_arr.forEach((variant)=>{variantsId.push(variant.id)})
fetchCart().then(function(dataCart){let cart='0';if(dataCart.items.length){cart=dataCart.items.map(item=>item.product_id);cart=cart.join();}
const offerParams={triggerType,productId,variantsId,cart,cartValue:dataCart.total_price}
offerFetch(offerParams).then(function(dataOffer){const object=dataOffer.design;for(var prop in object){if(object[prop].design_type.position!=="cart_page"){goodtartWidgetObj=object[prop]
offerId=prop
mainOfferId=dataOffer.offers[prop].main_offer_id;}
buildWidget(goodtartWidgetObj,offerId,mainOfferId);}});});});}}
if(("/cart"===location.href.slice(-5)&&goodtTriggerEvents.includes(2))||(location.href.includes('/cart')&&goodtTriggerEvents.includes(2))){const triggerType=2;if(Object.keys(goodtTriggerEvents).length&&goodtTriggerEvents.includes(+triggerType)){fetchCart().then(function(dataCart){let variantsId='0',cart='0';if(dataCart.items.length){const targetProducts=dataCart.items.filter(item=>!!!item.properties||(item.properties&&!item.properties.offer));if(targetProducts.length){variantsId=targetProducts.map(item=>item.id);variantsId=variantsId.join();}
cart=dataCart.items.map(item=>item.product_id);cart=cart.join();}
const offerParams={triggerType,variantsId,cart,cartValue:dataCart.total_price}
offerFetch(offerParams).then(function(dataOffer){const object=dataOffer.design;for(var prop in object){if(object[prop].design_type.position!=="product_page"){goodtartWidgetObj=object[prop];offerId=prop;mainOfferId=dataOffer.offers[prop].main_offer_id;}
buildWidget(goodtartWidgetObj,offerId,mainOfferId);}})})}}
if(location.href.includes('/products/')&&goodtTriggerEvents.includes(14)&&!goodtTriggerEvents.includes(6)&&!goodtTriggerEvents.includes(15)){allPagesRequest();}else if(location.href.includes('/cart')&&goodtTriggerEvents.includes(14)&&!goodtTriggerEvents.includes(2)){allPagesRequest();}else if(!location.href.includes('/products/')&&!location.href.includes('/cart')&&goodtTriggerEvents.includes(14)){allPagesRequest();}
function allPagesRequest(){if(Shopify.checkout){return;}
const triggerType=14;fetchCart().then(function(dataCart){let variantsId='0',cart='0';if(dataCart.items.length){const targetProducts=dataCart.items.filter(item=>!!!item.properties||(item.properties&&!item.properties.offer));if(targetProducts.length){variantsId=targetProducts.map(item=>item.id);variantsId=variantsId.join();}
cart=dataCart.items.map(item=>item.product_id);cart=cart.join();}
const offerParams={triggerType,variantsId,cart,cartValue:dataCart.total_price}
offerFetch(offerParams).then(function(dataOffer){const object=dataOffer.design;for(var prop in object){if(object[prop].design_type.position=="full"||object[prop].design_type.position=="full_bottom"){goodtartWidgetObj=object[prop];offerId=prop;}}
buildWidget(goodtartWidgetObj,offerId);})})}
function buildPreviewContainer(){const rootDiv=document.querySelector('.goodt-app-container');if(!rootDiv)return;const html='The Good APP will be displayed here! ';const element=document.createElement("div");element.classList.add('goodt-app-preview');element.style.padding='20px';element.style.border='1px solid #e4e4e4';element.style.borderRadius='8px';element.style.textAlign='center';element.innerHTML=html;rootDiv.append(element);}
function clearPreviewContainer(){const previewContainer=document.querySelector('.goodt-app-container');if(previewContainer){previewContainer.innerHTML='';}}
function buildWidget(goodtartWidgetObj,offerId,mainOfferId){const create_time=goodtartWidgetObj.design_type.create_widget_time;const actual_time=checkActualTime(goodtartWidgetObj);const timeOff=checkTime(offerId,create_time);if(!previewMode&&!Shopify.designMode){if(!goodtartWidgetObj||timeOff||!actual_time){return;}}
if(Shopify.designMode){clearPreviewContainer();}
buildIframe(goodtartWidgetObj,offerId,mainOfferId);if(document.querySelector('#goodt-app')){build(goodtartWidgetObj,offerId);}}
function checkActualTime(goodtartWidgetObj){const schedule_show=goodtartWidgetObj.main.schedule_show;if(schedule_show===false){return true;}
const startDate=goodtartWidgetObj.main.calculate_start_date;const startHour=goodtartWidgetObj.main.calculate_start_hour;const startMin=goodtartWidgetObj.main.calculate_start_min;const startTime=startDate+'-'+startHour+'-'+startMin;const currentDate=new Date();const month=currentDate.getMonth()+1;const day=currentDate.getDate();const year=currentDate.getFullYear();const hours=currentDate.getHours();const minutes=currentDate.getMinutes();const actualTime=year+'-'+month+'-'+day+'-'+hours+'-'+minutes;const endDate=goodtartWidgetObj.main.calculate_end_date;const endHour=goodtartWidgetObj.main.calculate_end_hour;const endMin=goodtartWidgetObj.main.calculate_end_min;const endTime=endDate+'-'+endHour+'-'+endMin;const checkStartTime=isActualTimeFaster(startTime,actualTime);const checkEndTime=isActualTimeEarlier(endTime,actualTime);function isActualTimeFaster(startTimeStr,actualTimeStr){const startTimeParts=startTimeStr.split('-').map(Number);const actualTimeParts=actualTimeStr.split('-').map(Number);const startTime=new Date(startTimeParts[0],startTimeParts[1]-1,startTimeParts[2],startTimeParts[3],startTimeParts[4]);const actualTime=new Date(actualTimeParts[0],actualTimeParts[1]-1,actualTimeParts[2],actualTimeParts[3],actualTimeParts[4]);return actualTime.getTime()>=startTime.getTime();}
function isActualTimeEarlier(endTimeStr,actualTimeStr){const endTimeParts=endTimeStr.split('-').map(Number);const actualTimeParts=actualTimeStr.split('-').map(Number);const endTime=new Date(endTimeParts[0],endTimeParts[1]-1,endTimeParts[2],endTimeParts[3],endTimeParts[4]);const actualTime=new Date(actualTimeParts[0],actualTimeParts[1]-1,actualTimeParts[2],actualTimeParts[3],actualTimeParts[4]);return actualTime.getTime()<=endTime.getTime();}
if(!checkStartTime||!checkEndTime){return false;}else{return true;}}
function checkTime(offerId,create_time){const dateLocal=localStorage.getItem(`timer_date-${offerId}_create-${create_time}`);const date=JSON.parse(dateLocal);if(!date){return false;}
const TimeOff=date.every(function(element){return element===0;});return TimeOff;}
function build(goodtartWidgetObj,offerId){let position=goodtartWidgetObj.design_type.position;const create_time=goodtartWidgetObj.design_type.create_widget_time;if(position=="product_page"){iframe=document.getElementById('goodt-widget-product');}else if(position=="cart_page"){iframe=document.getElementById('goodt-widget-cart');}else{iframe=document.getElementById('goodt-widget');}
buildCart(goodtartWidgetObj);addStyling(goodtartWidgetObj);let rootEl
if(position=='full'||position=="full_bottom"){rootEl=document.getElementById('goodt-root');}if(position=='product_page'){rootEl=document.getElementById('goodt-root-product');}if(position=='cart_page'){rootEl=document.getElementById('goodt-root-cart');}
const timerWrap=rootEl.querySelector('.goodt-cart__timer');if(goodtartWidgetObj.main.schedule_show==false){if(localStorage.getItem(`timer_date-${offerId}_create-${create_time}`)){const dateLocal=localStorage.getItem(`timer_date-${offerId}_create-${create_time}`);const date=JSON.parse(dateLocal)
buildTimer(goodtartWidgetObj,date[0],date[1],date[2],date[3],timerWrap);startTimer(goodtartWidgetObj,date[0],date[1],date[2],date[3],timerWrap,offerId);localStorage.removeItem('timer_date-undefined');}else{buildTimer(goodtartWidgetObj,goodtartWidgetObj.main.timer_days,goodtartWidgetObj.main.timer_hour,goodtartWidgetObj.main.timer_min,goodtartWidgetObj.main.timer_sec,timerWrap);startTimer(goodtartWidgetObj,goodtartWidgetObj.main.timer_days,goodtartWidgetObj.main.timer_hour,goodtartWidgetObj.main.timer_min,goodtartWidgetObj.main.timer_sec,timerWrap,offerId);}}else{buildActualDateTimer(goodtartWidgetObj,timerWrap)}
if(!cartBuilded)return;cartToAnimate=getAppSelector('.goodt-cart__body');productsWrapper=getAppSelector('.goodt-cart__products');setOpenCartEvent(goodtartWidgetObj);setCloseCartEvent(goodtartWidgetObj);openCart(goodtartWidgetObj);}
function buildActualDateTimer(goodtartWidgetObj,timerWrap){const years=new Date().getFullYear();const month=new Date().getMonth()+1;const days=new Date().getDate();const hours_actual=new Date().getHours();const mins_actual=new Date().getMinutes();const actualDate=month+'/'+days+'/'+years;const date1=new Date(actualDate)
const end_date=goodtartWidgetObj.main.calculate_end_date;const end_hour=goodtartWidgetObj.main.calculate_end_hour;const end_min=goodtartWidgetObj.main.calculate_end_min;const end=end_date.split('-');const end_format=`${end[1]}/${end[2]}/${end[0]}`;const date2=new Date(end_format);const diffTime=Math.abs(date2-date1);let totalDays=Math.ceil(diffTime /(1000*60*60*24));let totalHours=0;let totalMins=0;let totalSec=0;if(+hours_actual>+end_hour){totalHours=24-(hours_actual-end_hour)
totalDays--}else if(+hours_actual<+end_hour){totalHours=end_hour-hours_actual;}
if(+mins_actual>+end_min){totalMins=60-(mins_actual-end_min);totalHours--;}else if(+mins_actual<+end_min){totalMins=end_min-mins_actual;}
if(totalHours<0){totalDays--;totalHours=23;}
buildTimer(goodtartWidgetObj,totalDays,totalHours,totalMins,totalSec,timerWrap);startTimer(goodtartWidgetObj,totalDays,totalHours,totalMins,totalSec,timerWrap);}
function buildIframe(goodtartWidgetObj,offerId,mainOfferId){let position=goodtartWidgetObj.design_type.position;let html;if(position=="product_page"){html=``;}else if(position=="cart_page"){html=``;}else{html=``;}
const element=document.createElement("div");element.setAttribute("id","goodt-app");element.innerHTML=html;element.style.width='100%';element.style.marginBottom="10px";if(position=="full_bottom"){element.style.bottom='0'
element.style.left='0';element.style.zIndex='1000';element.style.marginBottom="0px";if(typeof goodtartAllPages!=='undefined'&&goodtartAllPages!==""&&document.querySelector(`${goodtartAllPages}`)){document.querySelector(`${goodtartAllPages}`).append(element);}else{document.querySelector('body').append(element);}}if(position=="full"){element.style.zIndex='1000';element.style.top='0';element.style.marginBottom="0px";if(typeof goodtartAllPages!=='undefined'&&goodtartAllPages!==""&&document.querySelector(`${goodtartAllPages}`)){document.querySelector(`${goodtartAllPages}`).prepend(element);}else{document.querySelector('body').prepend(element);}}if(position=="product_page"){if(mainOfferId&&document.querySelector(`#timerGA-${mainOfferId}`)){document.querySelector(`#timerGA-${mainOfferId}`).append(element);}else if(document.querySelector('.goodt-app-container')&&!Shopify.designMode){document.querySelector('.goodt-app-container').append(element);}else{if(typeof goodtartProductPage!=='undefined'&&goodtartProductPage!==""&&!Shopify.designMode){document.querySelector(`${goodtartProductPage}`).prepend(element);}else{if(!Shopify.designMode){document.querySelector('.product-form').prepend(element);}}}}if(position=="cart_page"){if(mainOfferId&&document.querySelector(`#timerGA-${mainOfferId}`)){document.querySelector(`#timerGA-${mainOfferId}`).append(element);}else if(document.querySelector('.goodt-app-container')&&!Shopify.designMode){document.querySelector('.goodt-app-container').append(element);}else{if(typeof goodtartCartPage!=='undefined'&&goodtartCartPage!==""&&!Shopify.designMode){document.querySelector(`${goodtartCartPage}`).after(element);}else{if(!Shopify.designMode){document.querySelector('.header-wrapper').after(element);}}}
element.style.height='inherit';element.style.display='flex';element.style.width='90%';element.style.margin='auto';}
if(position=="full"||position=="full_bottom"){let fixed_position=goodtartWidgetObj.design_type.fixed_position;if(fixed_position){element.style.position='fixed'
element.style.zIndex='99999999999999999';}
let embeded=goodtartWidgetObj.design_type.embeded;if(embeded){element.style.position='inherit'}
if(embeded&&fixed_position){element.style.position='sticky';}}}
function styleLoader(){const headID=document.getElementsByTagName('head')[0];const link=document.createElement('link');link.type='text/css';link.id='goodhlundlesCss'
link.rel='stylesheet';headID.appendChild(link);link.href=goodtbaseUrl+`css/goodt-timer.css?v=${goodtVersion}`;};function openCart(goodtartWidgetObj){let design_type=Object.values(goodtartWidgetObj)[5];let position=Object.values(design_type)[0];let cartEl;if(position=='full'||position=="full_bottom"){cartEl=document.querySelector('#goodt-widget');}if(position=='product_page'){cartEl=document.querySelector('#goodt-widget-product');}if(position=='cart_page'){cartEl=document.querySelector('#goodt-widget-cart');}
cartWrapper=cartEl.closest('div')
if(!cartWrapper)return;cartWrapper.style.display="block";cartToAnimate.classList.add('spinner');cartToAnimate.setAttribute('class','goodt-cart__body');cartToAnimate.classList.add('animate__animated',`${goodtartWidgetObj.design_type ? goodtartWidgetObj.design_type.animation : 'slideInRight'}`);cartIsOpen=true;}
function setOpenCartEvent(goodtartWidgetObj){if(!cartIsOpen){openCart(goodtartWidgetObj);}}
function setCloseCartEvent(goodtartWidgetObj){let position=goodtartWidgetObj.design_type.position;let rootEl;if(position=='full'||position=="full_bottom"){rootEl=document.querySelector('#goodt-root');}if(position=='product_page'){rootEl=document.querySelector('#goodt-root-product');}if(position=='cart_page'){rootEl=document.querySelector('#goodt-root-cart');}
const cartInWrapper=rootEl.querySelector('.goodt-cart__close');cartInWrapper.addEventListener('click',function(e){closeCart(goodtartWidgetObj,cartInWrapper);})}
function closeCart(goodtartWidgetObj,cartInWrapper){const cartToAnimate=cartInWrapper.closest(".goodt-cart__body");let animationClass=goodtartWidgetObj.design_type?goodtartWidgetObj.design_type.animation:'animate__slideOutRight';switch(animationClass){case'animate__slideInLeft':cartToAnimate.classList.add('animate__animated','animate__slideOutLeft');break;case'animate__slideInRight':cartToAnimate.classList.add('animate__animated','animate__slideOutRight');break;case'animate__fadeIn':cartToAnimate.classList.add('animate__animated','animate__fadeOut');break;case'animate__slideInUp':cartToAnimate.classList.add('animate__animated','animate__slideOutDown');break;case'animate__slideInDown':cartToAnimate.classList.add('animate__animated','animate__slideOutUp');break;case'animate__zoomIn':cartToAnimate.classList.add('animate__animated','animate__zoomOut');break;case'animate__fadeInTopLeft':cartToAnimate.classList.add('animate__animated','animate__fadeOutTopLeft');break;case'animate__fadeInTopRight':cartToAnimate.classList.add('animate__animated','animate__fadeOutTopRight');break;default:break;}
setTimeout(()=>{let cartWrapper=cartInWrapper.closest("#goodt-app");cartWrapper.style.display="none";const OfferProducts=getAppSelector('.goodt-cart__offer-products-wrap');if(OfferProducts){if(OfferProducts.querySelector('.goodt-cart__offer-products')){OfferProducts.querySelector('.goodt-cart__offer-products').remove();}
if(OfferProducts.querySelector('h2')){OfferProducts.querySelector('h2').remove();}}},1000)}
async function fetchCart(){const options={method:'GET',headers:{"Content-Type":"application/json","Accept":"application/json"}};const resp=await fetch("/cart.json",options);return await resp.json();}
async function fetchPage(url){const options={method:'GET',headers:{"Content-Type":"application/json","Accept":"application/json"}};const resp=await fetch(`${url}.json`,options);return await resp.json();}
async function offerFetch(offerParams){const options={headers:{'Content-Type':'application/json',"Accept":"application/json"}};const domain=goodtShop;const product_id=offerParams.productId?`&product_id=${offerParams.productId}`:'';const variants_id=offerParams.variantsId?`&variants_id=${offerParams.variantsId}`:'';const trigger_event=offerParams.triggerType;const display_on_device=window.innerWidth>991?'3':'2';const cart_value=offerParams.cartValue?offerParams.cartValue:0;let logged_user;if(Shopify.designMode){logged_user='1';}else{logged_user=ShopifyAnalytics.meta.page.customerId?'1':'0';}
const cart=offerParams.cart?offerParams.cart:0;let goodtUrl=getCookie('goodtUrl');let parameter='';if(goodtUrl&&goodtOffersHash.includes(goodtUrl)){parameter=goodtUrl;}
const url_parameter=parameter?`&url_parameter=${encodeURIComponent(parameter)}`:'';let url=goodtApiUrl+`api/front/offers?domain=${domain}${product_id}${variants_id}&cart=${cart}&display_on_device=${display_on_device}&cart_value=${cart_value}&logged_user=${logged_user}&trigger_event=${trigger_event}${url_parameter}`;const resp=await fetch(url,options);if(!resp.ok){throw new Error(`HTTP error, status = ${resp.status}`);}
return await resp.json();}
async function offerPreviewFetch(offerParams){const options={headers:{'Content-Type':'application/json',"Accept":"application/json"}};const domain=goodtShop;const product_id=offerParams.productId?offerParams.productId:0;const params=new URLSearchParams(window.location.search)
const main_offer_id=params.get('offerId');let url=goodtApiUrl+`api/front/offers/popup-data?domain=${domain}&product_id=${product_id}&main_offer_id=${main_offer_id}`;const resp=await fetch(url,options);if(!resp.ok){throw new Error(`HTTP error, status = ${resp.status}`);}
return await resp.json();}
const s_ajaxListener=new Object();s_ajaxListener.tempOpen=XMLHttpRequest.prototype.open;s_ajaxListener.tempSend=XMLHttpRequest.prototype.send;s_ajaxListener.callback=function(){let thisUrl=this.url.replace(/\?(.+)/ig,"");if(thisUrl.includes('/cart/add')){setTimeout(()=>{if(!cartIsOpen){}},1100);}}
XMLHttpRequest.prototype.open=function(a,b){if(!a)var a='';if(!b)var b='';s_ajaxListener.tempOpen.apply(this,arguments);s_ajaxListener.method=a;s_ajaxListener.url=b;if(a.toLowerCase()=='get'){s_ajaxListener.data=b.split('?');s_ajaxListener.data=s_ajaxListener.data[1];}}
XMLHttpRequest.prototype.send=function(a,b){if(!a)var a='';if(!b)var b='';s_ajaxListener.tempSend.apply(this,arguments);if(s_ajaxListener.method.toLowerCase()=='post')s_ajaxListener.data=a;s_ajaxListener.callback();}
function getAppSelector(element){return document.querySelector(element);}
function addStyling(goodtartWidgetObj){let position=goodtartWidgetObj.design_type.position;let rootEl;if(position=='full'||position=="full_bottom"){rootEl='goodt-root';}if(position=='product_page'){rootEl='goodt-root-product';}if(position=='cart_page'){rootEl='goodt-root-cart';}
let head=getAppSelector('head');let goodtartEl=getAppSelector('.goodt-cart');goodtartEl.classList.add(`goodt-popup__position--${goodtartWidgetObj.design_type ? goodtartWidgetObj.design_type.position : 'sidebar_right'}`);if(!goodtartWidgetObj.offer_product)return;let style=`
`;head.insertAdjacentHTML('beforeend',style);}
function buildCart(goodtartWidgetObj){let position=goodtartWidgetObj.design_type.position;let template=goodtartWidgetObj.main.timer_template;let timer_title=goodtartWidgetObj.translation.timer_title;let text_days=goodtartWidgetObj.translation.timer_title_days;let text_hours=goodtartWidgetObj.translation.timer_title_hours;let text_min=goodtartWidgetObj.translation.timer_title_min;let text_seconds=goodtartWidgetObj.translation.timer_title_sec;let link_redirect=goodtartWidgetObj.translation.button_url;let texts_show=goodtartWidgetObj.main.texts_show;let appWrapper;const redirect=link_redirect===null?window.location.href:link_redirect;const hide_title=!timer_title?'hide':'';const text_hide=texts_show===false?'hide':'';if(position=="product_page"){appWrapper=getAppSelector('#goodt-root-product');}else if(position=="cart_page"){appWrapper=getAppSelector('#goodt-root-cart');}else{appWrapper=getAppSelector('#goodt-root');}
if(!appWrapper)return;let timerTxt=goodtartWidgetObj.translation.timer_msg;let closeBtnShow=goodtartWidgetObj.top.close_show===true?'':'hide';let titleType=goodtartWidgetObj.main.title_type===false?'':'goodt-cart__title--inline';let layoutWrapperTimerClass=goodtartWidgetObj.design_type.position==="product_page"?'':'goodt-cart__timer-wrap-position';let goodtWrapPosition=goodtartWidgetObj.design_type.position==="product_page"?'':'goodt-cart-wrap-position';let daysTtranslation=text_days?text_days:"";let hoursTtranslation=text_hours?text_hours:"";let minTtranslation=text_min?text_min:"";let secTtranslation=text_seconds?text_seconds:"";let title_button=goodtartWidgetObj.translation.button_title?goodtartWidgetObj.translation.button_title:'Default Title';const previewNotification=buildPreviewNotification();const cartHtml=`
${previewNotification}
${timer_title}
${timerTxt}
${daysTtranslation}
:
${hoursTtranslation}
:
${minTtranslation}
:
${secTtranslation}
${title_button}
`;appWrapper.insertAdjacentHTML('beforeend',cartHtml);cartBuilded=true;}
function buildPreviewNotification(){if(!previewMode){return'';}
const previewHtml=`
Kindly be informed that this is a preview of the widget
`;return previewHtml;}
function buildTimer(goodtartWidgetObj,days,hour,minutes,seconds,display){days=parseInt(days);hours=parseInt(hour);minutes=parseInt(minutes);seconds=parseInt(seconds);seconds=seconds<10?"0"+seconds:seconds;minutes=minutes<10?"0"+minutes:minutes;hours=hours<10?"0"+hours:hours;days=days<10?"0"+days:days;display.querySelector('.goodt-cart__days').innerText=days;display.querySelector('.goodt-cart__hours').innerText=hours;display.querySelector('.goodt-cart__minutes').innerText=minutes;display.querySelector('.goodt-cart__seconds').innerText=seconds;if(goodtartWidgetObj.main.show_days=="1"){display.querySelector('.goodt-cart__timer__item--days').classList.add('goodt-cart-remove');display.querySelector('.timer--span_first').remove();}
if(goodtartWidgetObj.main.show_hour=="1"){display.querySelector('.goodt-cart__timer__item--hours').classList.add('goodt-cart-remove');display.querySelector('.timer--span_second').remove();}
if(goodtartWidgetObj.main.show_min=="1"){display.querySelector('.goodt-cart__timer__item--minutes').classList.add('goodt-cart-remove');display.querySelector('.timer--span_third').remove();}
if(goodtartWidgetObj.main.show_sec=="1"){display.querySelector('.goodt-cart__timer__item--seconds').classList.add('goodt-cart-remove');}}
function startTimer(goodtartWidgetObj,days,hours,minutes,seconds,display,offerId){const flag=goodtartWidgetObj.main.timer_show;const schedule_show=goodtartWidgetObj.main.schedule_show;const timer_actions=goodtartWidgetObj.main.timer_actions;const create_time=goodtartWidgetObj.design_type.create_widget_time;let countDown;if(flag)
countDown=setInterval(function(){days=parseInt(days);hours=parseInt(hours);minutes=parseInt(minutes);seconds=parseInt(seconds);findLocalKey(offerId,create_time)
if(schedule_show==false){setLocalData(goodtartWidgetObj,days,hours,minutes,seconds,offerId);}
if(+seconds===0){if(+minutes===0){if(+hours===0){if(+days===0){clearInterval(countDown);if(timer_actions=='restart'&&schedule_show==false){localStorage.removeItem(`timer_date-${offerId}_create-${create_time}`);startTimer(goodtartWidgetObj,goodtartWidgetObj.main.timer_days,goodtartWidgetObj.main.timer_hour,goodtartWidgetObj.main.timer_min,goodtartWidgetObj.main.timer_sec,display,offerId)}else{display.closest('.goodt-cart').remove();}}else{days--;hours=23;minutes=59;seconds=59;}}else{hours--;minutes=59;seconds=59;}}else{minutes--;seconds=59;}}
seconds=seconds<10?"0"+seconds:seconds;minutes=minutes<10?"0"+minutes:minutes;hours=hours<10?"0"+hours:hours;days=days<10?"0"+days:days;display.querySelector('.goodt-cart__days').innerText=days;display.querySelector('.goodt-cart__hours').innerText=hours;display.querySelector('.goodt-cart__minutes').innerText=minutes;display.querySelector('.goodt-cart__seconds').innerText=seconds;seconds--;},1000);else
clearInterval(countDown);}
function setLocalData(goodtartWidgetObj,days,hours,minutes,seconds,offerId){const create_time=goodtartWidgetObj.design_type.create_widget_time;const dateArr=[days,hours,minutes,seconds];localStorage.setItem(`timer_date-${offerId}_create-${create_time}`,JSON.stringify(dateArr));}
function findLocalKey(offerId,create_time){const keys=Object.keys(localStorage);const filteredKeys=keys.filter(key=>key.startsWith("timer_date-"));filteredKeys.forEach(key=>{if(key.includes(`-${offerId}_`)){if(!key.includes(`create-${create_time}`)){localStorage.removeItem(key)}}});}};goodtApp();}