PageSourceSearch

https://joconde.ca/cart

html joconde.ca collected 2026-10-04 19:47:42 UTC 199,668 bytes, 1,633 lines download raw bytes

1<!doctype html>
2<html class="no-js" lang="en">
3<head>
4  <meta charset="utf-8">
5  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
6  <meta name="viewport" content="width=device-width,initial-scale=1">
7  <meta name="theme-color" content="#3a3a3a">
8  <link rel="canonical" href="https://joconde.ca/cart"><link rel="shortcut icon" href="//joconde.ca/cdn/shop/files/JocondeLogo2_32x32.jpg?v=1613536396" type="image/png"><title>Your Shopping Cart
9&ndash; Joconde Cakes &amp; Sweets</title><!-- /snippets/social-meta-tags.liquid -->
10
11
12
13
14<meta property="og:site_name" content="Joconde Cakes &amp; Sweets">
15<meta property="og:url" content="https://joconde.ca/cart">
16<meta property="og:title" content="Your Shopping Cart">
17<meta property="og:type" content="website">
18<meta property="og:description" content="Joconde Cakes &amp; Sweets">
19
20
21
22
23
24<meta name="twitter:card" content="summary_large_image">
25<meta name="twitter:title" content="Your Shopping Cart">
26<meta name="twitter:description" content="Joconde Cakes &amp; Sweets">
27
28
29  <link href="//joconde.ca/cdn/shop/t/1/assets/theme.scss.css?v=26111335447950682891759259994" rel="stylesheet" type="text/css" media="all" />
30
31  
31<script>
32    var theme = {
33      breakpoints: {
34        medium: 750,
35        large: 990,
36        widescreen: 1400
37      },
38      strings: {
39        addToCart: "Add to cart",
40        soldOut: "Sold out",
41        unavailable: "Unavailable",
42        regularPrice: "Regular price",
43        salePrice: "Sale price",
44        sale: "Sale",
45        fromLowestPrice: "from [price]",
46        vendor: "Vendor",
47        showMore: "Show More",
48        showLess: "Show Less",
49        searchFor: "Search for",
50        addressError: "Error looking up that address",
51        addressNoResults: "No results for that address",
52        addressQueryLimit: "You have exceeded the Google API usage limit. Consider upgrading to a \u003ca href=\"https:\/\/developers.google.com\/maps\/premium\/usage-limits\"\u003ePremium Plan\u003c\/a\u003e.",
53        authError: "There was a problem authenticating your Google Maps account.",
54        newWindow: "Opens in a new window.",
55        external: "Opens external website.",
56        newWindowExternal: "Opens external website in a new window.",
57        removeLabel: "Remove [product]",
58        update: "Update",
59        quantity: "Quantity",
60        discountedTotal: "Discounted total",
61        regularTotal: "Regular total",
62        priceColumn: "See Price column for discount details.",
63        quantityMinimumMessage: "Quantity must be 1 or more",
64        cartError: "There was an error while updating your cart. Please try again.",
65        removedItemMessage: "Removed \u003cspan class=\"cart__removed-product-details\"\u003e([quantity]) [link]\u003c\/span\u003e from your cart.",
66        unitPrice: "Unit price",
67        unitPriceSeparator: "per",
68        oneCartCount: "1 item",
69        otherCartCount: "[count] items",
70        quantityLabel: "Quantity: [count]",
71        products: "Products",
72        loading: "Loading",
73        number_of_results: "[result_number] of [results_count]",
74        number_of_results_found: "[results_count] results found",
75        one_result_found: "1 result found"
76      },
77      moneyFormat: "${{amount}}",
78      moneyFormatWithCurrency: "${{amount}} CAD",
79      settings: {
80        predictiveSearchEnabled: true,
81        predictiveSearchShowPrice: false,
82        predictiveSearchShowVendor: false
83      }
84    }
85
86    document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
87  </script>
87<script src="//joconde.ca/cdn/shop/t/1/assets/lazysizes.js?v=94224023136283657951584938874" async="async"></script>
87
88  
88<script src="//joconde.ca/cdn/shop/t/1/assets/vendor.js?v=85833464202832145531584938876" defer="defer"></script>
88
89  
89<script src="//joconde.ca/cdn/shop/t/1/assets/theme.js?v=89031576585505892971584938875" defer="defer"></script>
89
90
91
92<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
92<meta name="facebook-domain-verification" content="nn3utty5ewyur6g9yhe2n3qlme0sqh">
93<meta name="google-site-verification" content="IoOElVOo05ipCMnGHGszHq84DQvVdZfxiS2RL9pFP0A">
94<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/36760813707/digital_wallets/dialog">
95<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
95<script async="async" src="/checkouts/internal/preloads.js?locale=en-CA"></script>
95
96<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
97<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-CA&shop_id=36760813707" crossorigin="anonymous"></script>
vendor: 1 bytes, line 97
97
98<script id="shopify-features" type="application/json">{"accessToken":"06eee76285a056418290b47380288f4d","betas":["rich-media-storefront-analytics"],"domain":"joconde.ca","predictiveSearch":true,"shopId":36760813707,"locale":"en"}</script>
vendor: 1 bytes, line 98
98
99<script>var Shopify = Shopify || {};
100Shopify.shop = "joconde-vancouver.myshopify.com";
101Shopify.locale = "en";
102Shopify.currency = {"active":"CAD","rate":"1.0"};
103Shopify.country = "CA";
104Shopify.theme = {"name":"Debut","id":93087694987,"schema_name":"Debut","schema_version":"16.5.1","theme_store_id":796,"role":"main"};
105Shopify.theme.handle = "null";
106Shopify.theme.style = {"id":null,"handle":null};
107Shopify.cdnHost = "joconde.ca/cdn";
108Shopify.routes = Shopify.routes || {};
109Shopify.routes.root = "/";
110Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
111Shopify.SignInWithShop = Shopify.SignInWithShop || {};
112Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
113Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 113
113
114<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 114
114
115<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 115
115
116<script>
117  window.ShopifyPay = window.ShopifyPay || {};
118  window.ShopifyPay.apiHost = "shop.app\/pay";
119  window.ShopifyPay.redirectState = null;
120</script>
vendor: 1 bytes, line 120
120
121<script>
122  window.Shopify = window.Shopify || {};
123  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
124  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
125  window.Shopify.SignInWithShop.eligible = true;
126</script>
vendor: 1 bytes, line 126
126
127<script id="shop-js-analytics" type="application/json">{"pageType":"cart"}</script>
vendor: 1 bytes, line 127
127
128<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 128
128
129<script type="module">
130  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
131
132  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
133
134</script>
vendor: 1 bytes, line 134
134
135<script>
136  window.Shopify = window.Shopify || {};
137  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
138  window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]};
139</script>
vendor: 1 bytes, line 139
139
140<script>(function() {
141  var isLoaded = false;
142  function asyncLoad() {
143    if (isLoaded) return;
144    isLoaded = true;
145    var urls = ["https:\/\/ld-legacy-files.roseperl.com\/deliverydate\/source.js?mw_deliverydate_t=1585179240\u0026shop=joconde-vancouver.myshopify.com","https:\/\/a.mailmunch.co\/widgets\/site-757467-7f7d6c6188f8504282bf14dc72e59e559e9ca8f7.js?shop=joconde-vancouver.myshopify.com","https:\/\/cdn.shopify.com\/s\/files\/1\/0184\/4255\/1360\/files\/legal.v3.min.js?v=1634513809\u0026shop=joconde-vancouver.myshopify.com","https:\/\/beeapp.me\/jstag\/px-product-option.js?shop=joconde-vancouver.myshopify.com","https:\/\/cdn-spurit.com\/all-apps\/checker-p.js?app_id=11\u0026shop=joconde-vancouver.myshopify.com"];
146    for (var i = 0; i < urls.length; i++) {
147      var s = document.createElement('script');
148      s.type = 'text/javascript';
149      s.async = true;
150      s.src = urls[i];
151      var x = document.getElementsByTagName('script')[0];
152      x.parentNode.insertBefore(s, x);
153    }
154  };
155  if(window.attachEvent) {
156    window.attachEvent('onload', asyncLoad);
157  } else {
158    window.addEventListener('load', asyncLoad, false);
159  }
160})();</script>
vendor: 1 bytes, line 160
160
161<script id="__st">var __st={"a":36760813707,"offset":-25200,"reqid":"a4d5e3c1-98a9-48e5-8c08-59e4ccb28f7a-1791143261","pageurl":"joconde.ca\/cart","u":"0f58eccf6e6e","p":"cart"};</script>
vendor: 1 bytes, line 161
161
162<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 162
162
163<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 163
163
164<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//joconde.ca/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 164
164
165<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//joconde.ca/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
165<script crossorigin="anonymous" defer="defer" src="//joconde.ca/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 165
165
166<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 166
166
167<script>
168  window.Shopify = window.Shopify || {};
169  window.Shopify.MCP = window.Shopify.MCP || {};
170  window.Shopify.MCP.enabled = true;
171  window.Shopify.MCP.shop = "joconde-vancouver.myshopify.com";
172  window.Shopify.MCP.mcpEndpoint = "https:\/\/joconde.ca\/api\/mcp";
173  window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n  - What is your return policy?\n  - What is your shipping policy?\n  - What is your phone number?\n  - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}];
174</script>
vendor: 1 bytes, line 174
174
175<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/joconde.ca\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
176</script>
vendor: 1 bytes, line 176
176
177<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://joconde.ca/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
178</script>
vendor: 1 bytes, line 178
178
179<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
180  function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent);
181</script>
vendor: 1 bytes, line 181
181
182<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}}));
183</script>
183
184<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://joconde.ca/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
185<style id="shopify-accelerated-checkout-cart">
186        #shopify-buyer-consent {
187  margin-top: 1em;
188  display: inline-block;
189  width: 100%;
190}
191
192#shopify-buyer-consent.hidden {
193  display: none;
194}
195
196#shopify-subscription-policy-button {
197  background: none;
198  border: none;
199  padding: 0;
200  text-decoration: underline;
201  font-size: inherit;
202  cursor: pointer;
203}
204
205#shopify-subscription-policy-button::before {
206  box-shadow: none;
207}
208
209      </style>
210
211<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
211
212  
212<script src="https://shopoe.net/app.js"></script>
vendor: 1 bytes, line 212
212
213<script>
214setTimeout(function(){
215    var customVariantId = '37535261491358';
216    $.ajax({
217        type: 'GET',
218        url: '/cart.js',
219        dataType: 'json',
220        success: function (data) {
221            var allCount = 0;
222            var customCount = 0;
223
224            var items = data['items'];
225            for (i = 0; i < items.length; i++) {
226                var itemQuantity = items[i]['quantity'];
227                allCount += itemQuantity;
228                if (items[i]['variant_id'] == customVariantId) {
229                    customCount += itemQuantity;
230                }
231            }
232
233            if (customCount > 0) {
234                var realCount = allCount - customCount;
235                $('#CartCount > span').html(realCount);
236                $('.total_count_ajax').html(realCount);
237                $('.desk_count').html(realCount);
238                $('.cart-count').html(realCount);
239                $('.header__cart-count-bubble span').html(realCount);
240                $('.site-header__cart #CartCount').html(realCount);
241                $('.cart-count-js').html(realCount);
242                $('#CartToggleItemCount').html(realCount);
243                $('.tt-cart .tt-badge-cart').html(realCount);
244                $('.mini-cart-wrap .item-count').html(realCount);
245            }
246        }
247    });
248}, 1500);
249</script>
249
250<!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 -->
251
252
253
254
255
256
257
258
259
260
261
262
263  
263<script async src="https://static.klaviyo.com/onsite/js/SvqsSc/klaviyo.js?company_id=SvqsSc"></script>
263
264  
264<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
264
265
266  
267
268
269
270
271  
271<script>
272    window.klaviyoReviewsProductDesignMode = false
273  </script>
273
274
275
276
277
278
279
280
281
282
283<!-- END app block --><meta property="og:image" content="https://cdn.shopify.com/s/files/1/0367/6081/3707/files/3.png?height=628&pad_color=ffffff&v=1739685337&width=1200" />
284<meta property="og:image:secure_url" content="https://cdn.shopify.com/s/files/1/0367/6081/3707/files/3.png?height=628&pad_color=ffffff&v=1739685337&width=1200" />
285<meta property="og:image:width" content="1200" />
286<meta property="og:image:height" content="628" />
287<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
288<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 36760813707,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "cart"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 288
288
289<script>
290  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
291</script>
vendor: 1 bytes, line 291
291
292<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
292).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 36760813707,storefrontBaseUrl: "https://joconde.ca",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://joconde.ca/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"1002602654","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-7N0D408VBH\\\",\\\"AW-11435060040\\\"],\\\"target_country\\\":\\\"CA\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"G-7N0D408VBH\\\",\\\"AW-11435060040\\\"]},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"G-7N0D408VBH\\\",\\\"AW-11435060040\\\"]},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-7N0D408VBH\\\",\\\"AW-11435060040\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-7N0D408VBH\\\",\\\"AW-11435060040\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-7N0D408VBH\\\",\\\"AW-11435060040\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"G-7N0D408VBH\\\",\\\"AW-11435060040\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"G-7N0D408VBH\\\",\\\"AW-11435060040\\\"]}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Joconde Cakes \u0026 Sweets","paymentSettings":{"currencyCode":"CAD"},"myshopifyDomain":"joconde-vancouver.myshopify.com","countryCode":"CA","storefrontUrl":"https:\/\/joconde.ca"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://joconde.ca/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"93087694987","themeStoreId":"796","themePublished":"true","eventMetadataId":"0612953b-bad2-45b3-91fa-eec9ba194970","pageType":"cart","shopId":"36760813707","storefrontBaseUrl":"https:\/\/joconde.ca","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
292<script>
293  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
294  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
295  window.ShopifyAnalytics.meta.currency = 'CAD';
296  var meta = {"page":{"pageType":"cart","requestId":"a4d5e3c1-98a9-48e5-8c08-59e4ccb28f7a-1791143261"}};
297  for (var attr in meta) {
298    window.ShopifyAnalytics.meta[attr] = meta[attr];
299  }
300</script>
vendor: 1 bytes, line 300
300
301<script class="analytics">
302  (function () {
303    var customDocumentWrite = function(content) {
304      var jquery = null;
305
306      if (window.jQuery) {
307        jquery = window.jQuery;
308      } else if (window.Checkout && window.Checkout.$) {
309        jquery = window.Checkout.$;
310      }
311
312      if (jquery) {
313        jquery('body').append(content);
314      }
315    };
316
317    var hasLoggedConversion = function(token) {
318      if (token) {
319        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
320      }
321      return false;
322    }
323
324    var setCookieIfConversion = function(token) {
325      if (token) {
326        var twoMonthsFromNow = new Date(Date.now());
327        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
328
329        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
330      }
331    }
332
333    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
334    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
335    if (trekkie.integrations) {
336      return;
337    }
338    trekkie.methods = [
339      'identify',
340      'page',
341      'ready',
342      'track',
343      'trackForm',
344      'trackLink'
345    ];
346    trekkie.factory = function(method) {
347      return function() {
348        var args = Array.prototype.slice.call(arguments);
349        args.unshift(method);
350        trekkie.push(args);
351        if (method == 'track' || method == 'page') {
352          var pageUrl;
353          try {
354            pageUrl = window.location.href;
355          } catch (e) {}
356          var pageReferrer;
357          try {
358            pageReferrer = document.referrer;
359          } catch (e) {}
360          try {
361            if (window.__TREKKIE_SHIM_QUEUE == null) {
362              window.__TREKKIE_SHIM_QUEUE = [];
363            }
364            window.__TREKKIE_SHIM_QUEUE.push({
365              from: 'trekkie-stub',
366              method: method,
367              args: args.slice(1),
368              pageContext: {
369                url: pageUrl,
370                referrer: pageReferrer
371              }
372            });
373          } catch (e) {
374            // no-op
375          }
376        }
377        return trekkie;
378      };
379    };
380    for (var i = 0; i < trekkie.methods.length; i++) {
381      var key = trekkie.methods[i];
382      trekkie[key] = trekkie.factory(key);
383    }
384    trekkie.load = function(config) {
385      trekkie.config = config || {};
386      trekkie.config.initialDocumentCookie = document.cookie;
387      var first = document.getElementsByTagName('script')[0];
388var script = document.createElement('script');
389script.type = 'text/javascript';
390script.onerror = function(e) {
391  var scriptFallback = document.createElement('script');
392  scriptFallback.type = 'text/javascript';
393  scriptFallback.onerror = function(error) {
394          var Monorail = {
395      produce: function produce(monorailDomain, schemaId, payload) {
396        var currentMs = new Date().getTime();
397        var event = {
398          schema_id: schemaId,
399          payload: payload,
400          metadata: {
401            event_created_at_ms: currentMs,
402            event_sent_at_ms: currentMs
403          }
404        };
405        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
406      },
407      sendRequest: function sendRequest(endpointUrl, payload) {
408        // Try the sendBeacon API
409        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
410          var blobData = new window.Blob([payload], {
411            type: 'text/plain'
412          });
413
414          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
415            return true;
416          } // sendBeacon was not successful
417
418        } // XHR beacon
419
420        var xhr = new XMLHttpRequest();
421
422        try {
423          xhr.open('POST', endpointUrl);
424          xhr.setRequestHeader('Content-Type', 'text/plain');
425          xhr.send(payload);
426        } catch (e) {
427          console.log(e);
428        }
429
430        return false;
431      },
432      isIos12: function isIos12() {
433        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
434      }
435    };
436    Monorail.produce('monorail-edge.shopifysvc.com',
437      'trekkie_storefront_load_errors/1.1',
438      {shop_id: 36760813707,
439      theme_id: 93087694987,
440      app_name: "storefront",
441      context_url: window.location.href,
442      source_url: "//joconde.ca/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
443
444  };
445  scriptFallback.async = true;
446  scriptFallback.src = '//joconde.ca/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
447  first.parentNode.insertBefore(scriptFallback, first);
448};
449script.async = true;
450script.src = '//joconde.ca/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
451first.parentNode.insertBefore(script, first);
452
453    };
454    trekkie.load(
455      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":36760813707,"isMerchantRequest":null,"themeId":93087694987,"themeCityHash":"16690174803522374945","contentLanguage":"en","currency":"CAD","eventMetadataId":"0612953b-bad2-45b3-91fa-eec9ba194970"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
456    );
457
458    var loaded = false;
459    trekkie.ready(function() {
460      if (loaded) return;
461      loaded = true;
462
463      window.ShopifyAnalytics.lib = window.trekkie;
464
465      var originalDocumentWrite = document.write;
466      document.write = customDocumentWrite;
467      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
468      document.write = originalDocumentWrite;
469
470      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
471      var token = match? match[1]: undefined;
472      if (!hasLoggedConversion(token)) {
473        setCookieIfConversion(token);
474        
475      }
476    });
477
478    window.ShopifyAnalytics.lib.page(null,{"pageType":"cart","requestId":"a4d5e3c1-98a9-48e5-8c08-59e4ccb28f7a-1791143261","shopifyEmitted":true});
479
480    var eventsListenerScript = document.createElement('script');
481    eventsListenerScript.async = true;
482    eventsListenerScript.src = "//joconde.ca/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
483    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
484})();</script>
vendor: 1 bytes, line 484
484
485<script
486  defer
487  src="https://joconde.ca/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
488  data-application="storefront-renderer"
489  data-shop-id="36760813707"
490  data-render-region="gcp-us-central1"
491  data-page-type="cart"
492  data-theme-instance-id="93087694987"
493  data-theme-name="Debut"
494  data-theme-version="16.5.1"
495  data-monorail-region="shop_domain"
496  data-resource-timing-sampling-rate="10"
497  data-shs="true"
498  data-shs-beacon="true"
499  data-shs-export-with-fetch="true"
500  data-shs-logs-sample-rate="1"
501  data-shs-beacon-endpoint="https://joconde.ca/api/collect"
502></script>
502
503<meta name="shopify-y" content="f8be7cb2-98fb-42b1-a703-1bbe0ee7903a" data-expiration="1822700861000"><meta name="shopify-s" content="cbf8c847-ef42-4af9-873c-21eb836a565f" data-expiration="1791145061000"><meta name="new-cookie-storage-activated" content="t">
504</head>
505
506<body class="template-cart">
507
508  <a class="in-page-link visually-hidden skip-link" href="#MainContent">Skip to content</a><div id="shopify-section-header" class="shopify-section">
509  <style>
510    
511      .site-header__logo-image {
512        max-width: 250px;
513      }
514    
515
516    
517  </style>
518
519
520<div id="SearchDrawer" class="search-bar drawer drawer--top" role="dialog" aria-modal="true" aria-label="Search" data-predictive-search-drawer>
521  <div class="search-bar__interior">
522    <div class="search-form__container" data-search-form-container>
523      <form class="search-form search-bar__form" action="/search" method="get" role="search">
524        <div class="search-form__input-wrapper">
525          <input
526            type="text"
527            name="q"
528            placeholder="Search"
529            role="combobox"
530            aria-autocomplete="list"
531            aria-owns="predictive-search-results"
532            aria-expanded="false"
533            aria-label="Search"
534            aria-haspopup="listbox"
535            class="search-form__input search-bar__input"
536            data-predictive-search-drawer-input
537          />
538          <input type="hidden" name="options[prefix]" value="last" aria-hidden="true" />
539          <div class="predictive-search-wrapper predictive-search-wrapper--drawer" data-predictive-search-mount="drawer"></div>
540        </div>
541
542        <button class="search-bar__submit search-form__submit"
543          type="submit"
544          data-search-form-submit>
545          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 37 40"><path d="M35.6 36l-9.8-9.8c4.1-5.4 3.6-13.2-1.3-18.1-5.4-5.4-14.2-5.4-19.7 0-5.4 5.4-5.4 14.2 0 19.7 2.6 2.6 6.1 4.1 9.8 4.1 3 0 5.9-1 8.3-2.8l9.8 9.8c.4.4.9.6 1.4.6s1-.2 1.4-.6c.9-.9.9-2.1.1-2.9zm-20.9-8.2c-2.6 0-5.1-1-7-2.9-3.9-3.9-3.9-10.1 0-14C9.6 9 12.2 8 14.7 8s5.1 1 7 2.9c3.9 3.9 3.9 10.1 0 14-1.9 1.9-4.4 2.9-7 2.9z"/></svg>
546          <span class="icon__fallback-text">Submit</span>
547        </button>
548      </form>
549
550      <div class="search-bar__actions">
551        <button type="button" class="btn--link search-bar__close js-drawer-close">
552          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 40 40"><path d="M23.868 20.015L39.117 4.78c1.11-1.108 1.11-2.77 0-3.877-1.109-1.108-2.773-1.108-3.882 0L19.986 16.137 4.737.904C3.628-.204 1.965-.204.856.904c-1.11 1.108-1.11 2.77 0 3.877l15.249 15.234L.855 35.248c-1.108 1.108-1.108 2.77 0 3.877.555.554 1.248.831 1.942.831s1.386-.277 1.94-.83l15.25-15.234 15.248 15.233c.555.554 1.248.831 1.941.831s1.387-.277 1.941-.83c1.11-1.109 1.11-2.77 0-3.878L23.868 20.015z" class="layer"/></svg>
553          <span class="icon__fallback-text">Close search</span>
554        </button>
555      </div>
556    </div>
557  </div>
558</div>
559
560
561<div data-section-id="header" data-section-type="header-section" data-header-section>
562  
563    
564  
565
566  <header class="site-header logo--center" role="banner">
567    <div class="grid grid--no-gutters grid--table site-header__mobile-nav">
568      
569
570      <div class="grid__item medium-up--one-third medium-up--push-one-third logo-align--center">
571        
572        
573          <div class="h2 site-header__logo">
574        
575          
576<a href="/" class="site-header__logo-image site-header__logo-image--centered">
577              
578              <img class="lazyload js"
579                   src="//joconde.ca/cdn/shop/files/3_300x300.png?v=1739685337"
580                   data-src="//joconde.ca/cdn/shop/files/3_{width}x.png?v=1739685337"
581                   data-widths="[180, 360, 540, 720, 900, 1080, 1296, 1512, 1728, 2048]"
582                   data-aspectratio="1.0"
583                   data-sizes="auto"
584                   alt="Joconde Cakes &amp;amp; Sweets"
585                   style="max-width: 250px">
586              <noscript>
587                
588                <img src="//joconde.ca/cdn/shop/files/3_250x.png?v=1739685337"
589                     srcset="//joconde.ca/cdn/shop/files/3_250x.png?v=1739685337 1x, //joconde.ca/cdn/shop/files/[email protected]?v=1739685337 2x"
590                     alt="Joconde Cakes &amp; Sweets"
591                     style="max-width: 250px;">
592              </noscript>
593            </a>
594          
595        
596          </div>
597        
598      </div>
599
600      
601
602      <div class="grid__item medium-up--one-third medium-up--push-one-third text-right site-header__icons site-header__icons--plus">
603        <div class="site-header__icons-wrapper">
604
605          <button type="button" class="btn--link site-header__icon site-header__search-toggle js-drawer-open-top">
606            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 37 40"><path d="M35.6 36l-9.8-9.8c4.1-5.4 3.6-13.2-1.3-18.1-5.4-5.4-14.2-5.4-19.7 0-5.4 5.4-5.4 14.2 0 19.7 2.6 2.6 6.1 4.1 9.8 4.1 3 0 5.9-1 8.3-2.8l9.8 9.8c.4.4.9.6 1.4.6s1-.2 1.4-.6c.9-.9.9-2.1.1-2.9zm-20.9-8.2c-2.6 0-5.1-1-7-2.9-3.9-3.9-3.9-10.1 0-14C9.6 9 12.2 8 14.7 8s5.1 1 7 2.9c3.9 3.9 3.9 10.1 0 14-1.9 1.9-4.4 2.9-7 2.9z"/></svg>
607            <span class="icon__fallback-text">Search</span>
608          </button>
609
610          
611            
612              <a href="https://joconde.ca/customer_authentication/redirect?locale=en&region_country=CA" class="site-header__icon site-header__account">
613                <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-login" viewBox="0 0 28.33 37.68"><path d="M14.17 14.9a7.45 7.45 0 1 0-7.5-7.45 7.46 7.46 0 0 0 7.5 7.45zm0-10.91a3.45 3.45 0 1 1-3.5 3.46A3.46 3.46 0 0 1 14.17 4zM14.17 16.47A14.18 14.18 0 0 0 0 30.68c0 1.41.66 4 5.11 5.66a27.17 27.17 0 0 0 9.06 1.34c6.54 0 14.17-1.84 14.17-7a14.18 14.18 0 0 0-14.17-14.21zm0 17.21c-6.3 0-10.17-1.77-10.17-3a10.17 10.17 0 1 1 20.33 0c.01 1.23-3.86 3-10.16 3z"/></svg>
614                <span class="icon__fallback-text">Log in</span>
615              </a>
616            
617          
618
619          <a href="/cart" class="site-header__icon site-header__cart">
620            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-cart" viewBox="0 0 37 40"><path d="M36.5 34.8L33.3 8h-5.9C26.7 3.9 23 .8 18.5.8S10.3 3.9 9.6 8H3.7L.5 34.8c-.2 1.5.4 2.4.9 3 .5.5 1.4 1.2 3.1 1.2h28c1.3 0 2.4-.4 3.1-1.3.7-.7 1-1.8.9-2.9zm-18-30c2.2 0 4.1 1.4 4.7 3.2h-9.5c.7-1.9 2.6-3.2 4.8-3.2zM4.5 35l2.8-23h2.2v3c0 1.1.9 2 2 2s2-.9 2-2v-3h10v3c0 1.1.9 2 2 2s2-.9 2-2v-3h2.2l2.8 23h-28z"/></svg>
621            <span class="icon__fallback-text">Cart</span>
622            <div id="CartCount" class="site-header__cart-count hide" data-cart-count-bubble>
623              <span data-cart-count>0</span>
624              <span class="icon__fallback-text medium-up--hide">items</span>
625            </div>
626          </a>
627
628          
629            <button type="button" class="btn--link site-header__icon site-header__menu js-mobile-nav-toggle mobile-nav--open" aria-controls="MobileNav"  aria-expanded="false" aria-label="Menu">
630              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-hamburger" viewBox="0 0 37 40"><path d="M33.5 25h-30c-1.1 0-2-.9-2-2s.9-2 2-2h30c1.1 0 2 .9 2 2s-.9 2-2 2zm0-11.5h-30c-1.1 0-2-.9-2-2s.9-2 2-2h30c1.1 0 2 .9 2 2s-.9 2-2 2zm0 23h-30c-1.1 0-2-.9-2-2s.9-2 2-2h30c1.1 0 2 .9 2 2s-.9 2-2 2z"/></svg>
631              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 40 40"><path d="M23.868 20.015L39.117 4.78c1.11-1.108 1.11-2.77 0-3.877-1.109-1.108-2.773-1.108-3.882 0L19.986 16.137 4.737.904C3.628-.204 1.965-.204.856.904c-1.11 1.108-1.11 2.77 0 3.877l15.249 15.234L.855 35.248c-1.108 1.108-1.108 2.77 0 3.877.555.554 1.248.831 1.942.831s1.386-.277 1.94-.83l15.25-15.234 15.248 15.233c.555.554 1.248.831 1.941.831s1.387-.277 1.941-.83c1.11-1.109 1.11-2.77 0-3.878L23.868 20.015z" class="layer"/></svg>
632            </button>
633          
634        </div>
635
636      </div>
637    </div>
638
639    <nav class="mobile-nav-wrapper medium-up--hide" role="navigation">
640      <ul id="MobileNav" class="mobile-nav">
641        
642<li class="mobile-nav__item border-bottom">
643            
644              <a href="/"
645                class="mobile-nav__link"
646                
647              >
648                <span class="mobile-nav__label">Home</span>
649              </a>
650            
651          </li>
652        
653<li class="mobile-nav__item border-bottom">
654            
655              <a href="/collections/wedding-cakes"
656                class="mobile-nav__link"
657                
658              >
659                <span class="mobile-nav__label">Wedding Cakes</span>
660              </a>
661            
662          </li>
663        
664<li class="mobile-nav__item border-bottom">
665            
666              <a href="/pages/catering"
667                class="mobile-nav__link"
668                
669              >
670                <span class="mobile-nav__label">Catering Service</span>
671              </a>
672            
673          </li>
674        
675<li class="mobile-nav__item border-bottom">
676            
677              <a href="/collections/special-occasion-cakes"
678                class="mobile-nav__link"
679                
680              >
681                <span class="mobile-nav__label">Birthday &amp; Celebration Cakes</span>
682              </a>
683            
684          </li>
685        
686<li class="mobile-nav__item border-bottom">
687            
688              <a href="/collections/childrens-cakes"
689                class="mobile-nav__link"
690                
691              >
692                <span class="mobile-nav__label">Children&#39;s Cakes</span>
693              </a>
694            
695          </li>
696        
697<li class="mobile-nav__item border-bottom">
698            
699              <a href="/pages/wedding-cakes"
700                class="mobile-nav__link"
701                
702              >
703                <span class="mobile-nav__label">Custom Cakes</span>
704              </a>
705            
706          </li>
707        
708<li class="mobile-nav__item border-bottom">
709            
710              <a href="/collections/sweet-treats"
711                class="mobile-nav__link"
712                
713              >
714                <span class="mobile-nav__label">Desserts &amp; Gifts</span>
715              </a>
716            
717          </li>
718        
719<li class="mobile-nav__item border-bottom">
720            
721              <a href="/collections/workshops"
722                class="mobile-nav__link"
723                
724              >
725                <span class="mobile-nav__label">Classes &amp; Workshops</span>
726              </a>
727            
728          </li>
729        
730<li class="mobile-nav__item border-bottom">
731            
732              <a href="https://joconde-vancouver.myshopify.com/apps/faqs"
733                class="mobile-nav__link"
734                
735              >
736                <span class="mobile-nav__label">FAQ&#39;s</span>
737              </a>
738            
739          </li>
740        
741<li class="mobile-nav__item border-bottom">
742            
743              
744              <button type="button" class="btn--link js-toggle-submenu mobile-nav__link" data-target="about-10" data-level="1" aria-expanded="false">
745                <span class="mobile-nav__label">About</span>
746                <div class="mobile-nav__icon">
747                  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-right" viewBox="0 0 14 14"><path d="M3.871.604c.44-.439 1.152-.439 1.591 0l5.515 5.515s-.049-.049.003.004l.082.08c.439.44.44 1.153 0 1.592l-5.6 5.6a1.125 1.125 0 0 1-1.59-1.59L8.675 7 3.87 2.195a1.125 1.125 0 0 1 0-1.59z" fill="#fff"/></svg>
748                </div>
749              </button>
750              <ul class="mobile-nav__dropdown" data-parent="about-10" data-level="2">
751                <li class="visually-hidden" tabindex="-1" data-menu-title="2">About Menu</li>
752                <li class="mobile-nav__item border-bottom">
753                  <div class="mobile-nav__table">
754                    <div class="mobile-nav__table-cell mobile-nav__return">
755                      <button class="btn--link js-toggle-submenu mobile-nav__return-btn" type="button" aria-expanded="true" aria-label="About">
756                        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-left" viewBox="0 0 14 14"><path d="M10.129.604a1.125 1.125 0 0 0-1.591 0L3.023 6.12s.049-.049-.003.004l-.082.08c-.439.44-.44 1.153 0 1.592l5.6 5.6a1.125 1.125 0 0 0 1.59-1.59L5.325 7l4.805-4.805c.44-.439.44-1.151 0-1.59z" fill="#fff"/></svg>
757                      </button>
758                    </div>
759                    <span class="mobile-nav__sublist-link mobile-nav__sublist-header mobile-nav__sublist-header--main-nav-parent">
760                      <span class="mobile-nav__label">About</span>
761                    </span>
762                  </div>
763                </li>
764
765                
766                  <li class="mobile-nav__item border-bottom">
767                    
768                      <a href="/pages/about-us"
769                        class="mobile-nav__sublist-link"
770                        
771                      >
772                        <span class="mobile-nav__label">About Us</span>
773                      </a>
774                    
775                  </li>
776                
777                  <li class="mobile-nav__item border-bottom">
778                    
779                      <a href="/pages/store-policies-terms-and-conditions"
780                        class="mobile-nav__sublist-link"
781                        
782                      >
783                        <span class="mobile-nav__label">Store Policies</span>
784                      </a>
785                    
786                  </li>
787                
788                  <li class="mobile-nav__item border-bottom">
789                    
790                      <a href="/pages/wedding-planning"
791                        class="mobile-nav__sublist-link"
792                        
793                      >
794                        <span class="mobile-nav__label">Wedding Planning Services</span>
795                      </a>
796                    
797                  </li>
798                
799                  <li class="mobile-nav__item">
800                    
801                      <a href="/blogs/blog"
802                        class="mobile-nav__sublist-link"
803                        
804                      >
805                        <span class="mobile-nav__label">Blog</span>
806                      </a>
807                    
808                  </li>
809                
810              </ul>
811            
812          </li>
813        
814<li class="mobile-nav__item">
815            
816              <a href="/pages/contact"
817                class="mobile-nav__link"
818                
819              >
820                <span class="mobile-nav__label">Contact </span>
821              </a>
822            
823          </li>
824        
825      </ul>
826    </nav>
827  </header>
828
829  
830  <nav class="small--hide border-bottom" id="AccessibleNav" role="navigation">
831    
832<ul class="site-nav list--inline site-nav--centered" id="SiteNav">
833  
834
835
836
837    
838      <li >
839        <a href="/"
840          class="site-nav__link site-nav__link--main"
841          
842        >
843          <span class="site-nav__label">Home</span>
844        </a>
845      </li>
846    
847  
848
849
850
851    
852      <li >
853        <a href="/collections/wedding-cakes"
854          class="site-nav__link site-nav__link--main"
855          
856        >
857          <span class="site-nav__label">Wedding Cakes</span>
858        </a>
859      </li>
860    
861  
862
863
864
865    
866      <li >
867        <a href="/pages/catering"
868          class="site-nav__link site-nav__link--main"
869          
870        >
871          <span class="site-nav__label">Catering Service</span>
872        </a>
873      </li>
874    
875  
876
877
878
879    
880      <li >
881        <a href="/collections/special-occasion-cakes"
882          class="site-nav__link site-nav__link--main"
883          
884        >
885          <span class="site-nav__label">Birthday &amp; Celebration Cakes</span>
886        </a>
887      </li>
888    
889  
890
891
892
893    
894      <li >
895        <a href="/collections/childrens-cakes"
896          class="site-nav__link site-nav__link--main"
897          
898        >
899          <span class="site-nav__label">Children&#39;s Cakes</span>
900        </a>
901      </li>
902    
903  
904
905
906
907    
908      <li >
909        <a href="/pages/wedding-cakes"
910          class="site-nav__link site-nav__link--main"
911          
912        >
913          <span class="site-nav__label">Custom Cakes</span>
914        </a>
915      </li>
916    
917  
918
919
920
921    
922      <li >
923        <a href="/collections/sweet-treats"
924          class="site-nav__link site-nav__link--main"
925          
926        >
927          <span class="site-nav__label">Desserts &amp; Gifts</span>
928        </a>
929      </li>
930    
931  
932
933
934
935    
936      <li >
937        <a href="/collections/workshops"
938          class="site-nav__link site-nav__link--main"
939          
940        >
941          <span class="site-nav__label">Classes &amp; Workshops</span>
942        </a>
943      </li>
944    
945  
946
947
948
949    
950      <li >
951        <a href="https://joconde-vancouver.myshopify.com/apps/faqs"
952          class="site-nav__link site-nav__link--main"
953          
954        >
955          <span class="site-nav__label">FAQ&#39;s</span>
956        </a>
957      </li>
958    
959  
960
961
962
963    
964      <li class="site-nav--has-dropdown" data-has-dropdowns>
965        <button class="site-nav__link site-nav__link--main site-nav__link--button" type="button" aria-expanded="false" aria-controls="SiteNavLabel-about">
966          <span class="site-nav__label">About</span><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-down" viewBox="0 0 9 9"><path d="M8.542 2.558a.625.625 0 0 1 0 .884l-3.6 3.6a.626.626 0 0 1-.884 0l-3.6-3.6a.625.625 0 1 1 .884-.884L4.5 5.716l3.158-3.158a.625.625 0 0 1 .884 0z" fill="#fff"/></svg>
967        </button>
968
969        <div class="site-nav__dropdown" id="SiteNavLabel-about">
970          
971            <ul>
972              
973                <li>
974                  <a href="/pages/about-us"
975                  class="site-nav__link site-nav__child-link"
976                  
977                >
978                    <span class="site-nav__label">About Us</span>
979                  </a>
980                </li>
981              
982                <li>
983                  <a href="/pages/store-policies-terms-and-conditions"
984                  class="site-nav__link site-nav__child-link"
985                  
986                >
987                    <span class="site-nav__label">Store Policies</span>
988                  </a>
989                </li>
990              
991                <li>
992                  <a href="/pages/wedding-planning"
993                  class="site-nav__link site-nav__child-link"
994                  
995                >
996                    <span class="site-nav__label">Wedding Planning Services</span>
997                  </a>
998                </li>
999              
1000                <li>
1001                  <a href="/blogs/blog"
1002                  class="site-nav__link site-nav__child-link site-nav__link--last"
1003                  
1004                >
1005                    <span class="site-nav__label">Blog</span>
1006                  </a>
1007                </li>
1008              
1009            </ul>
1010          
1011        </div>
1012      </li>
1013    
1014  
1015
1016
1017
1018    
1019      <li >
1020        <a href="/pages/contact"
1021          class="site-nav__link site-nav__link--main"
1022          
1023        >
1024          <span class="site-nav__label">Contact </span>
1025        </a>
1026      </li>
1027    
1028  
1029</ul>
1030
1031  </nav>
1032  
1033</div>
1034
1035
1036
1037<script type="application/ld+json">
1038{
1039  "@context": "http://schema.org",
1040  "@type": "Organization",
1041  "name": "Joconde Cakes \u0026amp; Sweets",
1042  
1043    
1044    "logo": "https:\/\/joconde.ca\/cdn\/shop\/files\/3_1080x.png?v=1739685337",
1045  
1046  "sameAs": [
1047    "",
1048    "https:\/\/www.facebook.com\/Joconde.cakes.sweets",
1049    "",
1050    "https:\/\/www.instagram.com\/joconde.cakes\/",
1051    "",
1052    "",
1053    "",
1054    ""
1055  ],
1056  "url": "https:\/\/joconde.ca"
1057}
1058</script>
1058
1059
1060
1061
1062
1063</div>
1064
1065  <div class="page-container drawer-page-content" id="PageContainer">
1066
1067    <main class="main-content js-focus-hidden" id="MainContent" role="main" tabindex="-1">
1068      
1069
1070<div id="shopify-section-cart-template" class="shopify-section"><div class="page-width" data-section-id="cart-template" data-section-type="cart-template" data-ajax-enabled="true">
1071
1072  <div class="hide" data-cart-wrapper>
1073    <div class="cart-header">
1074      <h1 class="cart-header__title">Your cart</h1>
1075      <a href="/collections/all" class="text-link text-link--accent">
1076        Continue shopping
1077      </a>
1078    </div>
1079
1080    <form action="/cart" method="post" novalidate class="cart">
1081      <table>
1082        <thead class="cart__row cart__row--heading">
1083          <th scope="col">Product</th>
1084          <th class="text-right" scope="col">Price</th>
1085          <th class="text-right small--hide" scope="col">Quantity</th>
1086          <th class="text-right small--hide" scope="col">Total</th>
1087        </thead>
1088        <tbody data-cart-line-items></tbody>
1089      </table>
1090
1091      <div class="cart__footer">
1092        <div class="grid"><div class="grid__item medium-up--one-half cart-note">
1093              <label for="CartSpecialInstructions" class="cart-note__label small--text-center">Add a note to your order</label>
1094              <textarea name="note" id="CartSpecialInstructions" class="cart-note__input" data-cart-notes></textarea>
1095            </div><div class="grid__item text-right small--text-center medium-up--one-half"><div class="hide" data-cart-discount-wrapper>
1096              <div class="order-discount-card-wrapper" data-cart-discount><span class="order-discount order-discount--title order-discount--cart">
1097                    <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-saletag"><path d="M10 3a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm0-3H7a1 1 0 0 0-.71.29l-6 6a1 1 0 0 0 0 1.42l4 4a1 1 0 0 0 1.42 0c.19-.2 5.8-5.81 6-6A1 1 0 0 0 12 5V2a2 2 0 0 0-2-2z" fill="#231F20"/></svg><span class="visually-hidden">Discount:</span><span data-cart-discount-title></span>
1098                  </span>
1099                  <span class="order-discount order-discount--cart order-discount--cart-total">
1100                    -<span data-cart-discount-amount></span>
1101                  </span></div>
1102            </div>
1103
1104            <div class="cart-subtotal">
1105              <span class="cart-subtotal__title">Subtotal</span>
1106              <span class="cart-subtotal__price" data-cart-subtotal>$0.00 CAD</span>
1107            </div><div class="cart__shipping rte">Taxes and <a href="/policies/shipping-policy">shipping</a> calculated at checkout
1108</div>
1109            <div class="cart__buttons-container">
1110              <div class="cart__submit-controls"><input type="submit" name="checkout"
1111                  class="cart__submit btn btn--small-wide"
1112                  value="Check out">
1113              </div>
1114
1115              <div class="cart__error-message-wrapper hide" role="alert" data-cart-error-message-wrapper>
1116                <span class="visually-hidden">Error </span>
1117                <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-error" viewBox="0 0 14 14"><g fill="none" fill-rule="evenodd"><path d="M7 0a7 7 0 0 1 7 7 7 7 0 1 1-7-7z"/><path class="icon-error__symbol" d="M6.328 8.396l-.252-5.4h1.836l-.24 5.4H6.328zM6.04 10.16c0-.528.432-.972.96-.972s.972.444.972.972c0 .516-.444.96-.972.96a.97.97 0 0 1-.96-.96z"/></g></svg>
1118                <span class="cart__error-message" data-cart-error-message></span>
1119              </div></div>
1120          </div>
1121        </div>
1122      </div>
1123    </form>
1124
1125    <p class="visually-hidden" data-cart-status
1126      aria-live="polite"
1127      role="status"
1128    ></p>
1129  </div>
1130
1131  <div class="empty-page-content text-center" data-empty-page-content>
1132    <h1>Your cart</h1>
1133    <p class="cart--empty-message">Your cart is currently empty.</p>
1134    <div class="cookie-message">
1135      <p>Enable cookies to use the shopping cart</p>
1136    </div>
1137    <a href="/" class="btn btn--has-icon-after cart__continue-btn">Continue shopping<svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-arrow-right" viewBox="0 0 20 8"><path d="M15.186.445c.865.944 1.614 1.662 2.246 2.154.631.491 1.227.857 1.787 1.098v.44a9.933 9.933 0 0 0-1.875 1.196c-.606.485-1.328 1.196-2.168 2.134h-.752c.612-1.309 1.253-2.315 1.924-3.018H.77v-.986h15.577c-.495-.632-.84-1.1-1.035-1.406-.196-.306-.486-.843-.87-1.612h.743z" fill="#000" fill-rule="evenodd"/></svg></a>
1138  </div>
1139</div>
1140
1141
1142
1143
1144</div>
1145
1146
1147<script>
1148(function() {
1149    setTimeout(function () {
1150        var checkReady = function(callback) {
1151            if (window.jQuery) {
1152                callback(jQuery);
1153            } else {
1154                window.setTimeout(function() {
1155                    checkReady(callback);
1156                }, 100);
1157            }
1158        };
1159
1160        var runCode = function($) {
1161            function getCustomItems(items, defaultCustomVariantId) {
1162                var result = [];
1163                for(var i = 0; i < items.length; i++) {
1164                    var variantId = items[i]['variant_id'];
1165
1166                    if (variantId != defaultCustomVariantId) {
1167                        continue;
1168                    }
1169
1170                    if (items[i]['properties'] == "undefined") {
1171                        continue;
1172                    }
1173
1174                    try {
1175                        if (items[i]['properties']['__custom_item_rand_id'] == "undefined" || items[i]['properties']['__custom_item_price'] == "undefined") {
1176                            continue;
1177                        }
1178                    }
1179                    catch(err) {
1180                        continue;
1181                    }
1182
1183                    result.push(items[i]['properties']['__custom_item_rand_id']);
1184                }
1185
1186                return result;
1187            }
1188
1189            function addCustomItem(items, addedCustomItems, defaultCustomVariantId, isRedirect) {
1190                for(var i = 0; i < items.length; i++) {
1191                    var variantId = items[i]['variant_id'];
1192                    if (variantId == defaultCustomVariantId) {
1193                        continue;
1194                    }
1195
1196                    if (items[i]['properties'] == "undefined") {
1197                        continue;
1198                    }
1199
1200                    if (items[i]['properties']['__custom_item_rand_id'] == "undefined" || items[i]['properties']['__custom_item_price'] == "undefined") {
1201                        continue;
1202                    }
1203
1204                    var randItemId = items[i]['properties']['__custom_item_rand_id'];
1205                    var randItemPrice = items[i]['properties']['__custom_item_price'];
1206
1207                    if (!randItemId || !randItemPrice || randItemPrice == 0 || randItemPrice == '0') {
1208                        continue;
1209                    }
1210
1211                    var totalPrice = randItemPrice;
1212                    var productQuantity = items[i]['quantity'];
1213
1214                    if (addedCustomItems.length) {
1215                        if (addedCustomItems.indexOf(randItemId) > -1) {
1216                            //TODO: Update Quantity
1217                            // $.get('/cart/change?id=' +defaultCustomVariantId +'&quantity=0', function() {});
1218                            continue;
1219                        }
1220                    }
1221
1222                    if (!totalPrice || totalPrice == 0 || totalPrice == '0') {
1223                        continue;
1224                    }
1225
1226                    $.ajax({
1227                        type: 'POST',
1228                        url: '/cart/add.js',
1229                        data: {
1230                            id: defaultCustomVariantId,
1231                            quantity: totalPrice / 1 * productQuantity,
1232                            properties: {
1233                                '__custom_item_rand_id': randItemId,
1234                                '__custom_item_price': randItemPrice,
1235                            }
1236                        },
1237                        dataType: 'json',
1238                        success: function () {
1239                            if (isRedirect) {
1240                                window.location.href = "/cart";
1241                            }
1242                        },
1243                        error: function(XMLHttpRequest, textStatus, errorThrown) {}
1244                    });
1245
1246                }
1247
1248                return false;
1249            }
1250
1251            function updateVariantInCart(variantId, quantity, isRedirect) {
1252                $.ajax({
1253                    type: 'GET',
1254                    url: '/cart/change?id=' +variantId +'&quantity=' +quantity,
1255                    success: function () {
1256                        if (isRedirect) {
1257                            window.location.href = "/cart";
1258                        }
1259                    },
1260                    error: function(XMLHttpRequest, textStatus, errorThrown) {}
1261                });
1262
1263                return true;
1264            }
1265
1266            function removeCustomItem(items, addedCustomItems, defaultCustomVariantId, isRedirect) {
1267                if (!addedCustomItems.length) {
1268                    return false;
1269                }
1270
1271                var removeAllCusItem = true;
1272                for(var i = 0; i < items.length; i++) {
1273                    var variantId = items[i]['variant_id'];
1274                    if (variantId != defaultCustomVariantId) {
1275                        removeAllCusItem = false;
1276                        break;
1277                    }
1278                }
1279
1280                if (removeAllCusItem) {
1281                    // $.get('/cart/change?id=' +defaultCustomVariantId +'&quantity=0', function() {});
1282                    updateVariantInCart(defaultCustomVariantId, 0, isRedirect);
1283                    return true;
1284                }
1285
1286                for(var ci = 0; ci < addedCustomItems.length; ci++) {
1287                    var hasBasedProduct = false;
1288                    for(var i = 0; i < items.length; i++) {
1289                        var variantId = items[i]['variant_id'];
1290                        if (variantId == defaultCustomVariantId) {
1291                            continue;
1292                        }
1293
1294                        if (items[i]['properties'] == "undefined") {
1295                            continue;
1296                        }
1297
1298                        if (items[i]['properties']['__custom_item_rand_id'] == "undefined") {
1299                            continue;
1300                        }
1301
1302                        var randItemId = items[i]['properties']['__custom_item_rand_id'];
1303                        if (addedCustomItems[ci] == randItemId) {
1304                            hasBasedProduct = true;
1305                            break;
1306                        }
1307                    }
1308
1309                    if (!hasBasedProduct) {
1310                        //TODO: line item index
1311                        // $.get('/cart/change?id=' +defaultCustomVariantId +'&quantity=0', function() {});
1312                        updateVariantInCart(defaultCustomVariantId, 0, isRedirect);
1313                        return true;
1314                    }
1315                }
1316
1317                return false;
1318            }
1319
1320            function updateCustomItem(items, addedCustomItems, defaultCustomVariantId, isRedirect) {
1321                for(var i = 0; i < items.length; i++) {
1322                    var variantId = items[i]['variant_id'];
1323                    if (variantId == defaultCustomVariantId) {
1324                        continue;
1325                    }
1326
1327                    if (items[i]['properties'] == "undefined") {
1328                        continue;
1329                    }
1330
1331                    if (items[i]['properties']['__custom_item_rand_id'] == "undefined" || items[i]['properties']['__custom_item_price'] == "undefined") {
1332                        continue;
1333                    }
1334
1335                    var randItemId = items[i]['properties']['__custom_item_rand_id'];
1336                    var totalPrice = items[i]['properties']['__custom_item_price'];
1337
1338                    if (!randItemId) {
1339                        continue;
1340                    }
1341
1342                    if (addedCustomItems.length) {
1343                        if (addedCustomItems.indexOf(randItemId) == -1) {
1344                            continue;
1345                        }
1346                    }
1347                    totalPrice = totalPrice / 1 * items[i]['quantity'];
1348                    //TODO: line item index
1349                    // $.get('/cart/change?id=' +defaultCustomVariantId +'&quantity=' +totalPrice, function() {});
1350                    updateVariantInCart(defaultCustomVariantId, totalPrice, isRedirect);
1351                    return true;
1352                }
1353
1354                return false;
1355            }
1356
1357            function addRemoveTrigger(defaultCustomVariantId, isRedirect) {
1358                $.ajax({
1359                    type: 'GET',
1360                    url: '/cart.js',
1361                    dataType: 'json',
1362                    success: function (data) {
1363                        var items = data['items'];
1364                        var addedCustomItems = getCustomItems(items, defaultCustomVariantId);
1365
1366                        addCustomItem(items, addedCustomItems, defaultCustomVariantId, isRedirect);
1367                        removeCustomItem(items, addedCustomItems, defaultCustomVariantId, isRedirect);
1368                    }
1369                });
1370            }
1371
1372            function updateTrigger(defaultCustomVariantId, isRedirect) {
1373                $.ajax({
1374                    type: 'GET',
1375                    url: '/cart.js',
1376                    dataType: 'json',
1377                    success: function (data) {
1378                        var items = data['items'];
1379                        var addedCustomItems = getCustomItems(items, defaultCustomVariantId);
1380                        var flagUpdate = updateCustomItem(items, addedCustomItems, defaultCustomVariantId, isRedirect);
1381
1382                        if (flagUpdate && isRedirect) {
1383                            setTimeout(function(){
1384                                window.location.href = "/cart";
1385                            }, 450);
1386                        }
1387                    }
1388                });
1389            }
1390
1391            function hideCustomItemInCart(propertiesSearchKey, productVariantSearchKey, productSearchKey) {
1392                //Hide properties
1393                var hasCustomItem = false;
1394                $('span, dt').each(function () {
1395                    if ($(this).html()) {
1396                        if ($(this).html().search(propertiesSearchKey) > -1) {
1397                            $(this).parent().fadeOut(0);
1398                            $(this).fadeOut(0);
1399                            hasCustomItem = true;
1400                        }
1401                    }
1402                });
1403                $('li').each(function () {
1404                    if ($(this).html()) {
1405                        if ($(this).html().search(propertiesSearchKey) > -1) {
1406                            $(this).fadeOut(0);
1407                            hasCustomItem = true;
1408                        }
1409                    }
1410                });
1411
1412                $('a').each(function () {
1413                    if ($(this).attr('href')) {
1414                        if ($(this).attr('href').search(productVariantSearchKey) > -1) {
1415                            try {
1416                                if ($(this).parents('tr')) $(this).parents('tr').fadeOut(0);
1417                                if ($(this).parents('.cart__row')) $(this).parents('.cart__row').fadeOut(0);
1418                                if ($(this).parents('.cart-row')) $(this).parents('.cart-row').fadeOut(0);
1419                                if ($(this).parents('.cart-table-row')) $(this).parents('.cart-table-row').fadeOut(0);
1420                            } catch(err) {
1421                                console.log(err.message);
1422                            }
1423
1424                            hasCustomItem = true;
1425                        }
1426                    }
1427
1428                    if ($(this).html()) {
1429                        if ($(this).html().search(productSearchKey) > -1) {
1430                            try {
1431                                if ($(this).parents('tr')) $(this).parents('tr').fadeOut(0);
1432                                if ($(this).parents('.cart__row')) $(this).parents('.cart__row').fadeOut(0);
1433                                if ($(this).parents('.cart-row')) $(this).parents('.cart-row').fadeOut(0);
1434                            } catch(err) {
1435                                console.log(err.message);
1436                            }
1437
1438                            hasCustomItem = true;
1439                        }
1440                    }
1441                });
1442
1443                return hasCustomItem;
1444            }
1445
1446            $(document).ready(function () {
1447                $('input[type="submit"]').prop('disabled', 'disabled');
1448                setTimeout(function () {
1449                    $('input[type="submit"]').removeAttr('disabled');
1450                }, 2000);
1451
1452                var defaultCustomVariantId = '37535261491358';
1453                var propertiesSearchKey = '__custom_item_';
1454                var productSearchKey = '__Customized-Items';
1455                var productVariantSearchKey = 'variant=37535261491358';
1456
1457                if (!defaultCustomVariantId) {
1458                    return false;
1459                }
1460
1461                setInterval(function () {
1462                    hideCustomItemInCart(propertiesSearchKey, productVariantSearchKey, productSearchKey);
1463                }, 200);
1464
1465                //TODO: some theme does not display hidden properties __xxx ==> this function return false;
1466                var hasCustomItem = hideCustomItemInCart(propertiesSearchKey, productVariantSearchKey, productSearchKey);
1467                if (!hasCustomItem) {
1468                    // return false;
1469                }
1470
1471                addRemoveTrigger(defaultCustomVariantId, true);
1472
1473
1474                //TODO: if only has custom items in cart ==> clear cart
1475                $('a').click(function () {
1476                    setTimeout(function () {
1477                        addRemoveTrigger(defaultCustomVariantId, false);
1478                        setTimeout(function () {
1479                            hideCustomItemInCart(propertiesSearchKey, productVariantSearchKey, productSearchKey);
1480                        }, 485);
1481                    }, 300);
1482                });
1483
1484                $('input').change(function () {
1485                    setTimeout(function () {
1486                        updateTrigger(defaultCustomVariantId, false);
1487                        setTimeout(function () {
1488                            hideCustomItemInCart(propertiesSearchKey, productVariantSearchKey, productSearchKey);
1489                        }, 485);
1490                    }, 1200);
1491                });
1492            });
1493        };
1494
1495        if (typeof jQuery == "undefined") {
1496            var script = document.createElement("SCRIPT");
1497            script.src =
1498                'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
1499            script.type = 'text/javascript';
1500            document.getElementsByTagName("head")[0].appendChild(script);
1501            checkReady(function($) {
1502                runCode($);
1503            });
1504        } else {
1505            runCode(jQuery);
1506        }
1507    }, 250);
1508})();
1509</script>
1509
1510    </main>
1511
1512    <div id="shopify-section-footer" class="shopify-section">
1513<style>
1514  .site-footer__hr {
1515    border-bottom: 1px solid #dddddd;
1516  }
1517
1518  .site-footer p,
1519  .site-footer__linklist-item a,
1520  .site-footer__rte a,
1521  .site-footer h4,
1522  .site-footer small,
1523  .site-footer__copyright-content a,
1524  .site-footer__newsletter-error,
1525  .site-footer__social-icons .social-icons__link {
1526    color: #333232;
1527  }
1528
1529  .site-footer {
1530    color: #333232;
1531    background-color: #f6f6f6;
1532  }
1533
1534  .site-footer__rte a {
1535    border-bottom: 1px solid #333232;
1536  }
1537
1538  .site-footer__rte a:hover,
1539  .site-footer__linklist-item a:hover,
1540  .site-footer__copyright-content a:hover {
1541    color: #5a5858;
1542    border-bottom: 1px solid #5a5858;
1543  }
1544
1545  .site-footer__social-icons .social-icons__link:hover {
1546    color: #5a5858;
1547  }
1548</style><footer class="site-footer" role="contentinfo" data-section-id="footer" data-section-type="footer-section">
1549  <div class="page-width">
1550    <div class="site-footer__content"><div class="site-footer__item
1551                     site-footer__item--center
1552                    site-footer__item--full-width
1553                    "
1554             >
1555          <div class="site-footer__item-inner site-footer__item-inner--newsletter"><p class="h4">Sign up to receive news &amp; promotions</p><div class="site-footer__newsletter
1556                           site-footer__single-block--centered"><form method="post" action="/contact#ContactFooter" id="ContactFooter" accept-charset="UTF-8" class="contact-form" novalidate="novalidate"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" />
1557<input type="hidden" name="contact[tags]" value="newsletter">
1558                    <div class="input-group ">
1559                      <input type="email"
1560                        name="contact[email]"
1561                        id="ContactFooter-email"
1562                        class="input-group__field newsletter__input"
1563                        value=""
1564                        placeholder="Email address"
1565                        aria-label="Email address"
1566                        aria-required="true"
1567                        required
1568                        autocorrect="off"
1569                        autocapitalize="off"
1570                        >
1571                      <span class="input-group__btn">
1572                        <button type="submit" class="btn newsletter__submit" name="commit" id="Subscribe">
1573                          <span class="newsletter__submit-text--large">Subscribe</span>
1574                        </button>
1575                      </span>
1576                    </div>
1577                    
1578                  </form>
1579                </div></div>
1580        </div></div>
1581  </div>
1582
1583  <hr class="site-footer__hr"><div class="page-width">
1584    <div class="grid grid--no-gutters small--text-center grid--footer-float-right"><div class="grid__item small--hide one-half "></div><div class="grid__item  small--one-whole site-footer-item-tall"><ul class="list--inline site-footer__social-icons social-icons site-footer__icon-list"><li class="social-icons__item">
1585                  <a class="social-icons__link" href="https://www.facebook.com/Joconde.cakes.sweets" aria-describedby="a11y-external-message"><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-facebook" viewBox="0 0 20 20"><path fill="#444" d="M18.05.811q.439 0 .744.305t.305.744v16.637q0 .439-.305.744t-.744.305h-4.732v-7.221h2.415l.342-2.854h-2.757v-1.83q0-.659.293-1t1.073-.342h1.488V3.762q-.976-.098-2.171-.098-1.634 0-2.635.964t-1 2.72V9.47H7.951v2.854h2.415v7.221H1.413q-.439 0-.744-.305t-.305-.744V1.859q0-.439.305-.744T1.413.81H18.05z"/></svg><span class="icon__fallback-text">Facebook</span>
1586                  </a>
1587                </li><li class="social-icons__item">
1588                  <a class="social-icons__link" href="https://www.instagram.com/joconde.cakes/" aria-describedby="a11y-external-message"><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-instagram" viewBox="0 0 512 512"><path d="M256 49.5c67.3 0 75.2.3 101.8 1.5 24.6 1.1 37.9 5.2 46.8 8.7 11.8 4.6 20.2 10 29 18.8s14.3 17.2 18.8 29c3.4 8.9 7.6 22.2 8.7 46.8 1.2 26.6 1.5 34.5 1.5 101.8s-.3 75.2-1.5 101.8c-1.1 24.6-5.2 37.9-8.7 46.8-4.6 11.8-10 20.2-18.8 29s-17.2 14.3-29 18.8c-8.9 3.4-22.2 7.6-46.8 8.7-26.6 1.2-34.5 1.5-101.8 1.5s-75.2-.3-101.8-1.5c-24.6-1.1-37.9-5.2-46.8-8.7-11.8-4.6-20.2-10-29-18.8s-14.3-17.2-18.8-29c-3.4-8.9-7.6-22.2-8.7-46.8-1.2-26.6-1.5-34.5-1.5-101.8s.3-75.2 1.5-101.8c1.1-24.6 5.2-37.9 8.7-46.8 4.6-11.8 10-20.2 
158818.8-29s17.2-14.3 29-18.8c8.9-3.4 22.2-7.6 46.8-8.7 26.6-1.3 34.5-1.5 101.8-1.5m0-45.4c-68.4 0-77 .3-103.9 1.5C125.3 6.8 107 11.1 91 17.3c-16.6 6.4-30.6 15.1-44.6 29.1-14 14-22.6 28.1-29.1 44.6-6.2 16-10.5 34.3-11.7 61.2C4.4 179 4.1 187.6 4.1 256s.3 77 1.5 103.9c1.2 26.8 5.5 45.1 11.7 61.2 6.4 16.6 15.1 30.6 29.1 44.6 14 14 28.1 22.6 44.6 29.1 16 6.2 34.3 10.5 61.2 11.7 26.9 1.2 35.4 1.5 103.9 1.5s77-.3 103.9-1.5c26.8-1.2 45.1-5.5 61.2-11.7 16.6-6.4 30.6-15.1 44.6-29.1 14-14 22.6-28.1 29.1-44.6 6.2-16 10.5-34.3 11.7-61.2 1.2-26.9 1.5-35.4 1.5-103.9s-.3-77-1.5-103.9c-1.2-26.8-5.5-45.1-11.7-61.2-6.4-16.6-15.1-30.6-29.1-44.6-14-14-28.1-22.6-44.6-29.1-16-6.2-34.3-10.5-61.2-11.7-27-1.1-35.6-1.4-104-1.4z"/><path d="M256 126.6c-71.4 0-129.4 57.9-129.4 129.4s58 129.4 129.4 129.4 129.4-58 129.4-129.4-58-129.4-129.4-129.4zm0 213.4c-46.4 0-84-37.6-84-84s37.6-84 84-84 84 37.6 84 84-37.6 84-84 84z"/><circle cx="390.5" cy="121.5" r="30.2"/></svg><span class="icon__fallback-text">Instagram</span>
1589                  </a>
1590                </li></ul></div><div class="grid__item medium-up--hide one-half small--one-whole"></div><div class="grid__item small--one-whole  site-footer-item-align-right">
1591        <small class="site-footer__copyright-content">&copy; 2026, <a href="/" title="">Joconde Cakes &amp; Sweets</a></small>
1592        <small class="site-footer__copyright-content site-footer__copyright-content--powered-by"><a target="_blank" rel="nofollow" href="https://www.shopify.com?utm_campaign=poweredby&amp;utm_medium=shopify&amp;utm_source=onlinestore">Powered by Shopify</a></small>
1593      </div>
1594    </div>
1595  </div>
1596</footer>
1597
1598
1599
1600
1601</div>
1602
1603    <div id="slideshow-info" class="visually-hidden" aria-hidden="true">
1603Use left/right arrows to navigate the slideshow or swipe left/right if using a mobile device</div>
1604
1605  </div>
1606
1607  <ul hidden>
1608    <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li>
1609    <li id="a11y-selection-message">Press the space key then arrow keys to make a selection.</li>
1610  </ul>
1611<script>
1612  
1613  var deliverCart = [ ];
1614  
1615  for(var pathArray=window.location.pathname.split("/"),cart=!1,isProduct=!1,i=0;i<pathArray.length;i++)"cart"==pathArray[i]&&(cart=!0);for(var i=0;i<pathArray.length;i++)"products"==pathArray[i]&&(isProduct=!0);function parseQuery(t){var e=new Object;if(!t)return e;for(var i=t.split(/[;&]/),a=0;a<i.length;a++){var r=i[a].split("=");if(r&&2==r.length){var o=unescape(r[0]),n=unescape(r[1]);n=n.replace(/\+/g," "),e[o]=n}}return e}var shopName="joconde-vancouver.myshopify.com";function toTheDay(){var t=jQuery(".tbtDeliveryCalendar").tbtDatepicker("getDate");return $.tbtDatepicker.formatDate("DD",t)}function myJQueryCode(){if(jQuery("form[action='/cart']").length||jQuery("#cart_form").length||jQuery("#cartform").length||jQuery(".template--cart .layout--main-content .panel>div>form").length){if(initDelivery(),jQuery("#cart_form").length)var cartForm=jQuery("#cart_form");else if(jQuery("#cartform").length)var cartForm=jQuery("#cartform");else if(jQuery(".cart-wrapper form[action='/cart']").length)var cartForm=jQuery(".cart-wrapper form[action='/cart']");else if(jQuery("form[action='/cart']").length)var cartForm=jQuery("form[action='/cart']");else if(jQuery(".template--cart .layout--main-content .panel>div>form").length)var cartForm=jQuery(".template--cart .layout--main-content .panel>div>form");jQuery(".tbtDeliveryCalendar").length||cartForm.append("<div class='tbtDeliveryCalendar'></div>"),jQuery("[name='attributes[Delivery Date]']").length||cartForm.append('<input type="hidden" name="attributes[Delivery Date]" class="tbtDeliveryDateVal">'),jQuery("[name='attributes[Delivery Day]']").length||cartForm.append('<input type="hidden" name="attributes[Delivery Day]" class="tbtDeliveryDayVal">');var tbtTableStyle='.tbt-icon-circle-triangle-w,.tbt-icon-circle-triangle-w{text-align: left;}.tbtDeliveryCalendar .tbt-datepicker-calendar thead{display: table-row-group}.tbtDeliveryCalendar .tbt-datepicker-calendar tbody{display: table-row-group}.tbtDeliveryCalendar .tbt-datepicker-calendar{display:table}.tbtDeliveryCalendar{font-size:16px;max-width: 100%;}table.tbt-datepicker-calendar tr{position: static;display: table-row;border:none !important;}.tbtDeliveryCalendar.tbtRequired>.tbt-datepicker,select.deliveryAdditionField.tbtRequired,select.deliveryTime.tbtRequired{border: 1px solid red;}select.deliveryAdditionField,select.deliveryTime{display:block;margin:auto;width:273px;max-width:100%;margin-top:20px;}.deliveryRequired{display: none; color: red; font-size: 16px; text-align: center;}table.tbt-datepicker-calendar{border: none}.tbtHeading{width:100%;text-align: center; font-weight: bold; font-size: 18px;margin-top: 20px;}.tbtDeliveryCalendar>div{margin: auto;margin-top: 20px;margin-bottom: 20px;}.tbt-helper-hidden{display:none}.tbt-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tbt-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.tbt-helper-clearfix:before,.tbt-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.tbt-helper-clearfix:after{clear:both}.tbt-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.tbt-front{z-index:100}.tbt-state-disabled{cursor:default!important;pointer-events:none}.tbt-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.tbt-widget-icon-block{left:50%;margin-left:-8px;display:block}.tbt-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.tbt-datepicker{width:500px;padding:.2em .2em 0;display:none;max-width: 100%;}.tbt-datepicker .tbt-datepicker-header{position:relative;padding:.2em 0}.tbt-datepicker .tbt-datepicker-prev,.tbt-datepicker .tbt-datepicker-next{position:absolute;top:3px;width:1.8em;height:1.8em}.tbt-datepicker .tbt-datepicker-prev-hover,.tbt-datepicker .tbt-datepicker-next-hover{top:3px}.tbt-datepicker .tbt-datepicker-prev{left:2px}.tbt-datepicker .tbt-datepicker-next{right:2px}.tbt-datepicker .tbt-datepicker-prev-hover{left:1px}.tbt-datepicker .tbt-datepicker-next-hover{right:1px}.tbt-datepicker .tbt-datepicker-prev span,.tbt-datepicker .tbt-datepicker-next span{font-size:0;display:block;position:absolute;
1615left:50%;margin-left:-8px;top:50%;margin-top:-8px}.tbt-datepicker .tbt-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.tbt-datepicker .tbt-datepicker-title select{font-size:1em;margin:1px 0}.tbt-datepicker select.tbt-datepicker-month,.tbt-datepicker select.tbt-datepicker-year{width:45%}.tbt-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.tbt-datepicker th{display: table-cell;padding:.7em .3em;text-align:center;font-weight:bold;border:0}.tbt-datepicker td:before{display: none;}.tbt-datepicker td{display: table-cell !important;padding: 1px !important;border: 0 !important;border:0;padding:1px}.tbt-datepicker td span,.tbt-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.tbt-datepicker .tbt-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.tbt-datepicker .tbt-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.tbt-datepicker .tbt-datepicker-buttonpane button.tbt-datepicker-current{float:left}.tbt-datepicker.tbt-datepicker-multi{width:auto}.tbt-datepicker-multi .tbt-datepicker-group{float:left}.tbt-datepicker-multi .tbt-datepicker-group table{width:95%;margin:0 auto .4em}.tbt-datepicker-multi-2 .tbt-datepicker-group{width:100%}.tbt-datepicker-multi-3 .tbt-datepicker-group{width:33.3%}.tbt-datepicker-multi-4 .tbt-datepicker-group{width:25%}.tbt-datepicker-multi .tbt-datepicker-group-last .tbt-datepicker-header,.tbt-datepicker-multi .tbt-datepicker-group-middle .tbt-datepicker-header{border-left-width:0}.tbt-datepicker-multi .tbt-datepicker-buttonpane{clear:left}.tbt-datepicker-row-break{clear:both;width:100%;font-size:0}.tbt-datepicker-rtl{direction:rtl}.tbt-datepicker-rtl .tbt-datepicker-prev{right:2px;left:auto}.tbt-datepicker-rtl .tbt-datepicker-next{left:2px;right:auto}.tbt-datepicker-rtl .tbt-datepicker-prev:hover{right:1px;left:auto}.tbt-datepicker-rtl .tbt-datepicker-next:hover{left:1px;right:auto}.tbt-datepicker-rtl .tbt-datepicker-buttonpane{clear:right}.tbt-datepicker-rtl .tbt-datepicker-buttonpane button{float:left}.tbt-datepicker-rtl .tbt-datepicker-buttonpane button.tbt-datepicker-current,.tbt-datepicker-rtl .tbt-datepicker-group{float:right}.tbt-datepicker-rtl .tbt-datepicker-group-last .tbt-datepicker-header,.tbt-datepicker-rtl .tbt-datepicker-group-middle .tbt-datepicker-header{border-right-width:0;border-left-width:1px}.tbt-datepicker .tbt-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;left:.5em;top:.3em}.tbt-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.tbt-widget .tbt-widget{font-size:1em}.tbt-widget input,.tbt-widget select,.tbt-widget textarea,.tbt-widget button{font-family:Arial,Helvetica,sans-serif;font-size:1em}.tbt-widget.tbt-widget-content{max-width:100%;border:1px solid #c5c5c5}.tbt-widget-content{border:1px solid #ddd;background:#fff;color:#333}.tbt-widget-content a{color:#333}.tbt-widget-header{border:1px solid transparent;background:#e9e9e9;
1615color:#fff;font-weight:bold}.tbt-widget-header a{color:#333}.tbt-state-default,.tbt-widget-content .tbt-state-default,.tbt-widget-header .tbt-state-default,.tbt-button,html .tbt-button.tbt-state-disabled:hover,html .tbt-button.tbt-state-disabled:active{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:normal;color:#454545}.tbt-state-default a,.tbt-state-default a:link,.tbt-state-default a:visited,a.tbt-button,a:link.tbt-button,a:visited.tbt-button,.tbt-button{color:#454545;text-decoration:none}.tbt-state-hover,.tbt-widget-content .tbt-state-hover,.tbt-widget-header .tbt-state-hover,.tbt-state-focus,.tbt-widget-content .tbt-state-focus,.tbt-widget-header .tbt-state-focus,.tbt-button:hover,.tbt-button:focus{border:1px solid #ccc;background:#ededed;font-weight:normal;color:#2b2b2b}.tbt-state-hover a,.tbt-state-hover a:hover,.tbt-state-hover a:link,.tbt-state-hover a:visited,.tbt-state-focus a,.tbt-state-focus a:hover,.tbt-state-focus a:link,.tbt-state-focus a:visited,a.tbt-button:hover,a.tbt-button:focus{color:#2b2b2b;text-decoration:none}.tbt-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.tbt-state-active,.tbt-widget-content .tbt-state-active,.tbt-widget-header .tbt-state-active,a.tbt-button:active,.tbt-button:active,.tbt-button.tbt-state-active:hover{border:1px solid #003eff;background:#007fff;font-weight:normal;color:#fff}.tbt-icon-background,.tbt-state-active .tbt-icon-background{border:#003eff;background-color:#fff}.tbt-state-active a,.tbt-state-active a:link,.tbt-state-active a:visited{color:#fff;text-decoration:none}.tbt-state-checked{border:1px solid #dad55e;background:#fffa90}.tbt-state-highlight a,.tbt-widget-content .tbt-state-highlight a,.tbt-widget-header .tbt-state-highlight a{color:#777620}.tbt-state-error,.tbt-widget-content .tbt-state-error,.tbt-widget-header .tbt-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.tbt-state-error a,.tbt-widget-content .tbt-state-error a,.tbt-widget-header .tbt-state-error a{color:#5f3f3f}.tbt-state-error-text,.tbt-widget-content .tbt-state-error-text,.tbt-widget-header .tbt-state-error-text{color:#5f3f3f}.tbt-priority-primary,.tbt-widget-content .tbt-priority-primary,.tbt-widget-header .tbt-priority-primary{font-weight:bold}.tbt-priority-secondary,.tbt-widget-content .tbt-priority-secondary,.tbt-widget-header .tbt-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.tbt-state-disabled,.tbt-widget-content .tbt-state-disabled,.tbt-widget-header .tbt-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.tbt-state-disabled .tbt-icon{filter:Alpha(Opacity=35)}.tbt-icon{width:16px;height:16px}.tbt-icon,.tbt-widget-content .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_ffffff_256x240.png")}.tbt-widget-header .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_ffffff_256x240.png")}.tbt-state-hover .tbt-icon,.tbt-state-focus .tbt-icon,.tbt-button:hover .tbt-icon,.tbt-button:focus .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_555555_256x240.png")}.tbt-state-active .tbt-icon,.tbt-button:active .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_ffffff_256x240.png")}.tbt-state-highlight .tbt-icon,.tbt-button .tbt-state-highlight.tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_777620_256x240.png")}.tbt-state-error .tbt-icon,.tbt-state-error-text .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_cc0000_256x240.png")}.tbt-button .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_777777_256x240.png")}.tbt-icon-blank{background-position:16px 16px}.tbt-icon-caret-1-n{background-position:0 0}.tbt-icon-caret-1-ne{background-position:-16px 0}.tbt-icon-caret-1-e{background-position:-32px 0}.tbt-icon-caret-1-se{background-position:-48px 0}.tbt-icon-caret-1-s{background-position:-65px 0}.tbt-icon-caret-1-sw{background-position:-80px 0}.tbt-icon-caret-1-w{background-position:-96px 0}.tbt-icon-caret-1-nw{background-position:-112px 0}.tbt-icon-caret-2-n-s{background-position:-128px 0}.tbt-icon-caret-2-e-w{background-position:-144px 0}.tbt-icon-triangle-1-n{background-position:0 -16px}.tbt-icon-triangle-1-ne{background-position:-16px -16px}.tbt-icon-triangle-1-e{background-position:-32px -16px}.tbt-icon-triangle-1-se{background-position:-48px -16px}.tbt-icon-triangle-1-s{background-position:-65px -16px}.tbt-icon-triangle-1-sw{background-position:-80px -16px}.tbt-icon-triangle-1-w{background-position:-96px -16px}.tbt-icon-triangle-1-nw{background-position:-112px -16px}.tbt-icon-triangle-2-n-s{background-position:-128px -16px}.tbt-icon-triangle-2-e-w{background-position:-144px -16px}.tbt-icon-arrow-1-n{background-position:0 -32px}.tbt-icon-arrow-1-ne{background-position:-16px -32px}.tbt-icon-arrow-1-e{background-position:-32px -32px}.tbt-icon-arrow-1-se{background-position:-48px -32px}.tbt-icon-arrow-1-s{background-position:-65px -32px}.tbt-icon-arrow-1-sw{background-position:-80px -32px}.tbt-icon-arrow-1-w{background-position:-96px -32px}.tbt-icon-arrow-1-nw{background-position:-112px -32px}.tbt-icon-arrow-2-n-s{background-position:-128px -32px}.tbt-icon-arrow-2-ne-sw{background-position:-144px -32px}.tbt-icon-arrow-2-e-w{background-position:-160px -32px}.tbt-icon-arrow-2-se-nw{background-position:-176px -32px}.tbt-icon-arrowstop-1-n{background-position:-192px -32px}.tbt-icon-arrowstop-1-e{background-position:-208px -32px}.tbt-icon-arrowstop-1-s{background-position:-224px -32px}.tbt-icon-arrowstop-1-w{background-position:-240px -32px}.tbt-icon-arrowthick-1-n{background-position:1px -48px}.tbt-icon-arrowthick-1-ne{background-position:-16px -48px}.tbt-icon-arrowthick-1-e{background-position:-32px -48px}.tbt-icon-arrowthick-1-se{background-position:-48px -48px}.tbt-icon-arrowthick-1-s{background-position:-64px -48px}.tbt-icon-arrowthick-1-sw{background-position:-80px -48px}.tbt-icon-arrowthick-1-w{background-position:-96px -48px}.tbt-icon-arrowthick-1-nw{background-position:-112px -48px}.tbt-icon-arrowthick-2-n-s{background-position:-128px -48px}.tbt-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.tbt-icon-arrowthick-2-e-w{background-position:-160px -48px}.tbt-icon-arrowthick-2-se-nw{background-position:-176px -48px}.tbt-icon-arrowthickstop-1-n{background-position:-192px -48px}.tbt-icon-arrowthickstop-1-e{background-position:-208px -48px}.tbt-icon-arrowthickstop-1-s{background-position:-224px -48px}.tbt-icon-arrowthickstop-1-w{background-position:-240px -48px}.tbt-icon-arrowreturnthick-1-w{background-position:0 -64px}.tbt-icon-arrowreturnthick-1-n{background-position:-16px -64px}.tbt-icon-arrowreturnthick-1-e{background-position:-32px -64px}.tbt-icon-arrowreturnthick-1-s{background-position:-48px -64px}.tbt-icon-arrowreturn-1-w{background-position:-64px -64px}.tbt-icon-arrowreturn-1-n{background-position:-80px -64px}.tbt-icon-arrowreturn-1-e{background-position:-96px -64px}.tbt-icon-arrowreturn-1-s{background-position:-112px -64px}.tbt-icon-arrowrefresh-1-w{background-position:-128px -64px}.tbt-icon-arrowrefresh-1-n{background-position:-144px -64px}.tbt-icon-arrowrefresh-1-e{background-position:-160px -64px}.tbt-icon-arrowrefresh-1-s{background-position:-176px -64px}.tbt-icon-arrow-4{background-position:0 -80px}.tbt-icon-arrow-4-diag{background-position:-16px -80px}.tbt-icon-extlink{background-position:-32px -80px}.tbt-icon-newwin{background-position:-48px -80px}.tbt-icon-refresh{background-position:-64px -80px}.tbt-icon-shuffle{background-position:-80px -80px}.tbt-icon-transfer-e-w{background-position:-96px -80px}.tbt-icon-transferthick-e-w{background-position:-112px -80px}.tbt-icon-folder-collapsed{background-position:0 -96px}.tbt-icon-folder-open{background-position:-16px -96px}.tbt-icon-document{background-position:-32px -96px}.tbt-icon-document-b{background-position:-48px -96px}.tbt-icon-note{background-position:-64px -96px}.tbt-icon-mail-closed{background-position:-80px -96px}.tbt-icon-mail-open{background-position:-96px -96px}.tbt-icon-suitcase{background-position:-112px -96px}.tbt-icon-comment{background-position:-128px -96px}.tbt-icon-person{background-position:-144px -96px}.tbt-icon-print{background-position:-160px -96px}.tbt-icon-trash{background-position:-176px -96px}.tbt-icon-locked{background-position:-192px -96px}.tbt-icon-unlocked{background-position:-208px -96px}.tbt-icon-bookmark{background-position:-224px -96px}.tbt-icon-tag{background-position:-240px -96px}.tbt-icon-home{background-position:0 -112px}.tbt-icon-flag{background-position:-16px -112px}.tbt-icon-calendar{background-position:-32px -112px}.tbt-icon-cart{background-position:-48px -112px}.tbt-icon-pencil{background-position:-64px -112px}.tbt-icon-clock{background-position:-80px -112px}.tbt-icon-disk{background-position:-96px -112px}.tbt-icon-calculator{background-position:-112px -112px}.tbt-icon-zoomin{background-position:-128px -112px}.tbt-icon-zoomout{background-position:-144px -112px}.tbt-icon-search{background-position:-160px -112px}.tbt-icon-wrench{background-position:-176px -112px}.tbt-icon-gear{background-position:-192px -112px}.tbt-icon-heart{background-position:-208px -112px}.tbt-icon-star{background-position:-224px -112px}.tbt-icon-link{background-position:-240px -112px}.tbt-icon-cancel{background-position:0 -128px}.tbt-icon-plus{background-position:-16px -128px}.tbt-icon-plusthick{background-position:-32px -128px}.tbt-icon-minus{background-position:-48px -128px}.tbt-icon-minusthick{background-position:-64px -128px}.tbt-icon-close{background-position:-80px -128px}.tbt-icon-closethick{background-position:-96px -128px}.tbt-icon-key{background-position:-112px -128px}.tbt-icon-lightbulb{background-position:-128px -128px}.tbt-icon-scissors{background-position:-144px -128px}.tbt-icon-clipboard{background-position:-160px -128px}.tbt-icon-copy{background-position:-176px -128px}.tbt-icon-contact{background-position:-192px -128px}.tbt-icon-image{background-position:-208px -128px}.tbt-icon-video{background-position:-224px -128px}.tbt-icon-script{background-position:-240px -128px}.tbt-icon-alert{background-position:0 -144px}.tbt-icon-info{background-position:-16px -144px}.tbt-icon-notice{background-position:-32px -144px}.tbt-icon-help{background-position:-48px -144px}.tbt-icon-check{background-position:-64px -144px}.tbt-icon-bullet{background-position:-80px -144px}.tbt-icon-radio-on{background-position:-96px -144px}.tbt-icon-radio-off{background-position:-112px -144px}.tbt-icon-pin-w{background-position:-128px -144px}.tbt-icon-pin-s{background-position:-144px -144px}.tbt-icon-play{background-position:0 -160px}.tbt-icon-pause{background-position:-16px -160px}.tbt-icon-seek-next{background-position:-32px -160px}.tbt-icon-seek-prev{background-position:-48px -160px}.tbt-icon-seek-end{background-position:-64px -160px}.tbt-icon-seek-start{background-position:-80px -160px}.tbt-icon-seek-first{background-position:-80px -160px}.tbt-icon-stop{background-position:-96px -160px}.tbt-icon-eject{background-position:-112px -160px}.tbt-icon-volume-off{background-position:-128px -160px}.tbt-icon-volume-on{background-position:-144px -160px}.tbt-icon-power{background-position:0 -176px}.tbt-icon-signal-diag{background-position:-16px -176px}.tbt-icon-signal{background-position:-32px -176px}.tbt-icon-battery-0{background-position:-48px -176px}.tbt-icon-battery-1{background-position:-64px -176px}.tbt-icon-battery-2{background-position:-80px -176px}.tbt-icon-battery-3{background-position:-96px -176px}.tbt-icon-circle-plus{background-position:0 -192px}.tbt-icon-circle-minus{background-position:-16px -192px}.tbt-icon-circle-close{background-position:-32px -192px}.tbt-icon-circle-triangle-e{background-position:-48px -192px}.tbt-icon-circle-triangle-s{background-position:-64px -192px}.tbt-icon-circle-triangle-w{background-position:-80px -192px}.tbt-icon-circle-triangle-n{background-position:-96px -192px}.tbt-icon-circle-arrow-e{background-position:-112px -192px}.tbt-icon-circle-arrow-s{background-position:-128px -192px}.tbt-icon-circle-arrow-w{background-position:-144px -192px}.tbt-icon-circle-arrow-n{background-position:-160px -192px}.tbt-icon-circle-zoomin{background-position:-176px -192px}.tbt-icon-circle-zoomout{background-position:-192px -192px}.tbt-icon-circle-check{background-position:-208px -192px}.tbt-icon-circlesmall-plus{background-position:0 -208px}.tbt-icon-circlesmall-minus{background-position:-16px -208px}.tbt-icon-circlesmall-close{background-position:-32px -208px}.tbt-icon-squaresmall-plus{background-position:-48px -208px}.tbt-icon-squaresmall-minus{background-position:-64px -208px}.tbt-icon-squaresmall-close{background-position:-80px -208px}.tbt-icon-grip-dotted-vertical{background-position:0 -224px}.tbt-icon-grip-dotted-horizontal{background-position:-16px -224px}.tbt-icon-grip-solid-vertical{background-position:-32px -224px}.tbt-icon-grip-solid-horizontal{background-position:-48px -224px}.tbt-icon-gripsmall-diagonal-se{background-position:-64px -224px}.tbt-icon-grip-diagonal-se{background-position:-80px -224px}.tbt-corner-all,.tbt-corner-top,.tbt-corner-left,.tbt-corner-tl{border-top-left-radius:0px}.tbt-corner-all,.tbt-corner-top,.tbt-corner-right,.tbt-corner-tr{border-top-right-radius:0px}.tbt-corner-all,.tbt-corner-bottom,.tbt-corner-left,.tbt-corner-bl{border-bottom-left-radius:0px}.tbt-corner-all,.tbt-corner-bottom,.tbt-corner-right,.tbt-corner-br{border-bottom-right-radius:0px}.tbt-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.tbt-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}.tbt-state-hover,.tbt-widget-content .tbt-state-hover,.tbt-widget-header .tbt-state-hover{cursor:pointer;border-radius:0}.tbtDeliveryCalendar>div{margin: auto;margin-top: 20px;}.tbt-datepicker-calendar tr:first-child th:after, .tbt-datepicker-calendar tr:first-child td:after{border:none}';jQuery("body").append("<style>"+tbtTableStyle+"</style>");var data={};data.shop=shopName,data.action="getSettings",$.get("https://thanhhd.com/app/public/advanced-delivery/advanced-delivery.php",data,function(result){if("1"==result.enable){"Delivery Date"!=result.delivery_date_title&&jQuery(".tbtDeliveryDateVal").attr("name","attributes["+result.delivery_date_title+"]"),"Delivery Day"!=result.delivery_day_title&&jQuery(".tbtDeliveryDayVal").attr("name","attributes["+result.delivery_day_title+"]");var startWeek=parseInt(result.week_start),customCss=result.custom_css,date_format="mm/dd/yy";date_format="1"==result.date_format?"mm/dd/yy":"dd/mm/yy",jQuery("[name='attributes[Delivery Time]'], .deliveryTime, .deliveryRequired, .tbtHeading").remove();var customStyle=".tbt-widget-header{background: "+result.header_color+";border-color: "+result.border_color+";}.tbt-state-active, .tbt-widget-content .tbt-state-active, .tbt-widget-header .tbt-state-active, a.tbt-button:active, .tbt-button:active, .tbt-button.tbt-state-active:hover {border: 1px solid "+result.day_selected_color+";background: "+result.day_selected_color+";";if(customCss&&jQuery("body").append("<style>"+customStyle+"</style>"),"pro"==result.account_type&&"1"==result.enable_add_field&&result.addition_fields.length){jQuery(".deliveryAdditionField").remove(),jQuery(".tbtDeliveryCalendar").tbtDatepicker("destroy");for(var deliveryAdditionFields="<option>"+result.add_field_title+"</option>",deliveryAdditionField=result.addition_fields,i=0;i<deliveryAdditionField.length;i++){var temp='<option value="'+deliveryAdditionField[i].id+'">'+deliveryAdditionField[i].field_title+"</option>";deliveryAdditionFields+=temp}if(jQuery(".tbtDeliveryCalendar").before("<select class='deliveryAdditionField'>"+deliveryAdditionFields+"</select>"),"1"==result.required){var requiredText=result.require_text;jQuery('a[href="/checkout"]').length&&jQuery('a[href="/checkout"]').off("
1615click").on("click",function(t){doRequired1(t,result,requiredText,cartForm)}),jQuery(".additional-checkout-button, .additional-checkout-button img").length&&jQuery(".additional-checkout-button, .additional-checkout-button img").off("click").on("click",function(t){doRequired1(t,result,requiredText,cartForm)}),cartForm.find("[name='checkout']").length?cartForm.find("[name='checkout']").off("click").on("click",function(t){doRequired1(t,result,requiredText,cartForm)}):cartForm.submit(function(t){doRequired1(t,result,requiredText,cartForm)})}jQuery(".deliveryAdditionField").on("change",function(){jQuery(".tbtDeliveryTimeVal, .tbtHeading, .deliveryTime").remove(),jQuery(".tbtDeliveryDayVal, .tbtDeliveryDateVal").val("");var that=this;if(jQuery(that).val()!=result.add_field_title)for(var fieldId=jQuery(that).val(),i=0;i<result.addition_fields.length;i++){var field=result.addition_fields[i];if(field.id==fieldId){var minDate=field.min_date;if("undefined"!=typeof deliverCart){var checkMinDate=-999;deliverCart.forEach(function(t){var e=t.tags;e.indexOf("deliveryMinDate")>-1&&e.split(",").forEach(function(t){t.indexOf("deliveryMinDate")>-1&&("max"==result.sorting?parseInt(t.replace("deliveryMinDate",""))>checkMinDate&&(checkMinDate=parseInt(t.replace("deliveryMinDate",""))):checkMinDate>parseInt(t.replace("deliveryMinDate",""))&&(checkMinDate=parseInt(t.replace("deliveryMinDate",""))))})}),-999!=checkMinDate&&(minDate=checkMinDate)}else var minDate=parseInt(field.min_date);if(parseInt(field.use_hour)){var today=(new Date).getHours();today>=parseInt(field.hour)&&(minDate+=parseInt(field.day))}var inValidDay=field.invalid_day.split(",");if(inValidDay)for(var i=0;i<inValidDay.length;i++)inValidDay[i]=parseInt(inValidDay[i]);else inValidDay=[];if(field.extra_no_available)var extraNoAvailable=field.extra_no_available.split(",");else var extraNoAvailable=!1;if("1"==result.required&&result.require_text&&(jQuery(".deliveryRequired").remove(),jQuery("<div class='deliveryRequired'></div>").insertBefore(".deliveryAdditionField")),minDate<0&&"pro"==result.account_type);else{if(result.heading&&jQuery("<div class='tbtHeading'>"+result.heading+"</div>").insertBefore(".deliveryAdditionField"),"1"==result.required){var requiredText=result.require_text;jQuery('a[href="/checkout"]').length&&jQuery('a[href="/checkout"]').off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}),jQuery(".additional-checkout-button").length&&jQuery(".additional-checkout-button").off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}),cartForm.find("[name='checkout']").length?cartForm.find("[name='checkout']").off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}):cartForm.off("submit").on("submit",function(t){doRequired(t,result,requiredText,cartForm)})}if("1"==field.use_time&&field.delivery_time){cartForm.append('<input type="hidden" name="attributes[Delivery Time]" class="tbtDeliveryTimeVal">');for(var deliveryTimes="<option>"+field.select_time_text+"</option>",delivery_time=field.delivery_time.split(","),i=0;i<delivery_time.length;i++){var temp='<option value="'+delivery_time[i]+'">'+delivery_time[i]+"</option>";deliveryTimes+=temp}jQuery(".tbtDeliveryCalendar").after("<select class='deliveryTime'>"+deliveryTimes+"</select>"),jQuery(".deliveryTime").off("change").on("change",function(){jQuery(this).val()==field.select_time_text?jQuery(".tbtDeliveryTimeVal").val(""):jQuery(".tbtDeliveryTimeVal").val(jQuery(this).val())})}var maxDate=!1;result.specific_min_date&&(minDate=eval(result.specific_min_date)),result.specific_max_date&&(maxDate=eval(result.specific_max_date)),bindDatePicker(minDate,inValidDay,startWeek,date_format,result.months_name,result.dates_name,extraNoAvailable,maxDate,result)}break}}})}else{var minDate=parseInt(result.min_date),productMinDates=[];if("undefined"!=typeof deliverCart&&deliverCart.forEach(function(t){var e=t.tags;e.indexOf("deliveryMinDate")>-1&&e.split(",").forEach(function(t){t.indexOf("deliveryMinDate")>-1&&productMinDates.push(parseInt(t.replace("deliveryMinDate","")))})}),productMinDates.length&&(minDate=getBigNumber(productMinDates)),parseInt(result.use_hour)&&minDate>-1){var today=(new Date).getHours();today>=parseInt(result.hour)&&(minDate+=parseInt(result.day))}var inValidDay=result.invalid_day.split(",");if(inValidDay)for(var i=0;i<inValidDay.length;i++)inValidDay[i]=parseInt(inValidDay[i]);else inValidDay=[];
1615if(result.extra_no_available)var extraNoAvailable=result.extra_no_available.split(",");else var extraNoAvailable=!1;if("1"==result.required&&result.require_text&&jQuery("<div class='deliveryRequired'></div>").insertBefore(".tbtDeliveryCalendar"),minDate<0);else{if(result.heading&&jQuery("<div class='tbtHeading'>"+result.heading+"</div>").insertBefore(".tbtDeliveryCalendar"),"1"==result.required){var requiredText=result.require_text;jQuery('a[href="/checkout"]').length&&jQuery('a[href="/checkout"]').off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}),jQuery(".additional-checkout-button").length&&jQuery(".additional-checkout-button").off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}),cartForm.find("[name='checkout']").length?cartForm.find("[name='checkout']").off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}):cartForm.off("submit").on("submit",function(t){doRequired(t,result,requiredText,cartForm)})}if("1"==result.use_time&&result.delivery_time){cartForm.append('<input type="hidden" name="attributes[Delivery Time]" class="tbtDeliveryTimeVal">');for(var deliveryTimes="<option>"+result.select_time_text+"</option>",delivery_time=result.delivery_time.split(","),i=0;i<delivery_time.length;i++){var d=new Date,n=d.getHours(),todayDate=d.getDate()+"/"+d.getMonth()+"/"+d.getFullYear();if("Pick Up today - last order 4pm"==delivery_time[i]&&"utopia-products-asia-upa.myshopify.com"==shopName){if(n<16&&"25/11/2017"!=todayDate&&"1/0/18 "!=todayDate){var temp='<option value="'+delivery_time[i]+'">'+delivery_time[i]+"</option>";deliveryTimes+=temp}}else if("Pick Up tomorrow"==delivery_time[i]&&"utopia-products-asia-upa.myshopify.com"==shopName){if("24/11/2017"!=todayDate&&"31/11/18 "!=todayDate){var temp='<option value="'+delivery_time[i]+'">'+delivery_time[i]+"</option>";deliveryTimes+=temp}}else{var temp='<option value="'+delivery_time[i]+'">'+delivery_time[i]+"</option>";deliveryTimes+=temp}}jQuery(".tbtDeliveryCalendar").after("<select class='deliveryTime'>"+deliveryTimes+"</select>"),jQuery(".deliveryTime").change(function(){if(jQuery(this).val()==result.select_time_text?jQuery(".tbtDeliveryTimeVal").val(""):jQuery(".tbtDeliveryTimeVal").val(jQuery(this).val()),"utopia-products-asia-upa.myshopify.com"==shopName)if(extraNoAvailable=result.extra_no_available.split(","),jQuery(".customDiscount").remove(),jQuery(".deliveryTime").val().indexOf("Pick Up")>-1&&cartForm.append('<input type="hidden" name="discount" class="customDiscount" value="PICKUP10">'),"Pick Up today - last order 4pm"==jQuery(".deliveryTime").val())jQuery(".tbtDeliveryCalendar").hide(),jQuery(".tbtDeliveryDateVal").val("Today"),jQuery(".tbtDeliveryDayVal").val("Pickup"),jQuery(".deliveryRequired").hide();else if("Pick Up tomorrow"==jQuery(".deliveryTime").val()){var t=new Date,e=new Date(t.getTime()+864e5);jQuery(".tbtDeliveryCalendar").tbtDatepicker("option","minDate",0),jQuery(".tbtDeliveryCalendar").tbtDatepicker("setDate",e);var i=jQuery(".tbtDeliveryCalendar").val();jQuery(".tbtDeliveryCalendar").hide(),jQuery(".tbtDeliveryDateVal").val(i),jQuery(".tbtDeliveryDayVal").val("Pickup"),jQuery(".deliveryRequired").hide()}else if("Pick Up - choose a date"==jQuery(".deliveryTime").val()){jQuery(".tbt-state-default").removeClass("tbt-state-active"),jQuery(".tbtDeliveryDateVal").val(""),jQuery(".tbtDeliveryDayVal").val(""),jQuery(".tbtDeliveryCalendar").show(),extraNoAvailable.push("25/12/2017"),extraNoAvailable.push("01/01/2018");var a=extraNoAvailable.indexOf("02/01/2018");extraNoAvailable.splice(a,1);a=extraNoAvailable.indexOf("28/12/2017");extraNoAvailable.splice(a,1),bindDatePickerAllAvailable(minDate,inValidDay,startWeek,date_format,result.months_name,result.dates_name,extraNoAvailable,maxDate,result)}else"Delivery - choose a date"==jQuery(".deliveryTime").val()&&(jQuery(".tbt-state-default").removeClass("tbt-state-active"),jQuery(".tbtDeliveryDateVal").val(""),jQuery(".tbtDeliveryDayVal").val(""),jQuery(".tbtDeliveryCalendar").show(),bindDatePicker(minDate,inValidDay,startWeek,date_format,result.months_name,result.dates_name,extraNoAvailable,maxDate,result))})}var maxDate=!1;result.specific_min_date&&(minDate=eval(result.specific_min_date)),result.specific_max_date&&(maxDate=eval(result.specific_max_date)),bindDatePicker(minDate,inValidDay,startWeek,date_format,result.months_name,result.dates_name,extraNoAvailable,maxDate,result)}}}})}}function myJQueryCode1(){if(jQuery("form[action='/cart/add']").length||jQuery("form[action='/cart/add.js']").length){if(initDelivery(),jQuery("form[action='/cart/add']").length)var cartForm=jQuery("form[action='/cart/add']");else if(jQuery("form[action='/cart/add.js']").length)var cartForm=jQuery("form[action='/cart/add.js']");jQuery(".tbtDeliveryCalendar").length||cartForm.append("<div class='tbtDeliveryCalendar'></div>"),jQuery("[name='attributes[Delivery Date]']").length||cartForm.append('<input type="hidden" name="properties[Delivery Date]" class="tbtDeliveryDateVal">'),jQuery("[name='attributes[Delivery Day]']").length||cartForm.append('<input type="hidden" name="properties[Delivery Day]" class="tbtDeliveryDayVal">');var tbtTableStyle='.tbt-icon-circle-triangle-w,.tbt-icon-circle-triangle-w{text-align: left;}.tbtDeliveryCalendar .tbt-datepicker-calendar thead{display: table-row-group}.tbtDeliveryCalendar .tbt-datepicker-calendar tbody{display: table-row-group}.tbtDeliveryCalendar .tbt-datepicker-calendar{display:table}.tbtDeliveryCalendar{font-size:16px;max-width:100%;}table.tbt-datepicker-calendar tr{position: static;display: table-row;border:none !important;}.tbtDeliveryCalendar.tbtRequired>.tbt-datepicker,select.deliveryAdditionField.tbtRequired,select.deliveryTime.tbtRequired{border: 1px solid red;}select.deliveryAdditionField,select.deliveryTime{display:block;margin:auto;width:273px;max-width:100%;margin-top:20px;}.deliveryRequired{display: none; color: red; font-size: 16px; text-align: center;}table.tbt-datepicker-calendar{border: none}.tbtHeading{text-align: center; font-weight: bold; font-size: 18px;margin-top: 20px;}.tbtDeliveryCalendar>div{margin: auto;margin-top: 20px;margin-bottom: 20px;}.tbt-helper-hidden{display:none}.tbt-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tbt-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.tbt-helper-clearfix:before,.tbt-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.tbt-helper-clearfix:after{clear:both}.tbt-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.tbt-front{z-index:100}.tbt-state-disabled{cursor:default!important;pointer-events:none}.tbt-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.tbt-widget-icon-block{left:50%;margin-left:-8px;display:block}.tbt-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.tbt-datepicker{width:500px;padding:.2em .2em 0;display:none;max-width: 100%;}.tbt-datepicker .tbt-datepicker-header{position:relative;padding:.2em 0}.tbt-datepicker .tbt-datepicker-prev,.tbt-datepicker .tbt-datepicker-next{position:absolute;top:3px;width:1.8em;height:1.8em}.tbt-datepicker .tbt-datepicker-prev-hover,.tbt-datepicker .tbt-datepicker-next-hover{top:3px}.tbt-datepicker .tbt-datepicker-prev{left:2px}.tbt-datepicker .tbt-datepicker-next{right:2px}.tbt-datepicker .tbt-datepicker-prev-hover{left:1px}.tbt-datepicker .tbt-datepicker-next-hover{right:1px}.tbt-datepicker .tbt-datepicker-prev span,.tbt-datepicker .tbt-datepicker-next span{font-size:0;display:block;position:absolute;
1615left:50%;margin-left:-8px;top:50%;margin-top:-8px}.tbt-datepicker .tbt-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.tbt-datepicker .tbt-datepicker-title select{font-size:1em;margin:1px 0}.tbt-datepicker select.tbt-datepicker-month,.tbt-datepicker select.tbt-datepicker-year{width:45%}.tbt-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.tbt-datepicker th{display: table-cell;padding:.7em .3em;text-align:center;font-weight:bold;border:0}.tbt-datepicker td:before{display: none;}.tbt-datepicker td{display: table-cell !important;padding: 1px !important;border: 0 !important;border:0;padding:1px}.tbt-datepicker td span,.tbt-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.tbt-datepicker .tbt-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.tbt-datepicker .tbt-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.tbt-datepicker .tbt-datepicker-buttonpane button.tbt-datepicker-current{float:left}.tbt-datepicker.tbt-datepicker-multi{width:auto}.tbt-datepicker-multi .tbt-datepicker-group{float:left}.tbt-datepicker-multi .tbt-datepicker-group table{width:95%;margin:0 auto .4em}.tbt-datepicker-multi-2 .tbt-datepicker-group{width:100%}.tbt-datepicker-multi-3 .tbt-datepicker-group{width:33.3%}.tbt-datepicker-multi-4 .tbt-datepicker-group{width:25%}.tbt-datepicker-multi .tbt-datepicker-group-last .tbt-datepicker-header,.tbt-datepicker-multi .tbt-datepicker-group-middle .tbt-datepicker-header{border-left-width:0}.tbt-datepicker-multi .tbt-datepicker-buttonpane{clear:left}.tbt-datepicker-row-break{clear:both;width:100%;font-size:0}.tbt-datepicker-rtl{direction:rtl}.tbt-datepicker-rtl .tbt-datepicker-prev{right:2px;left:auto}.tbt-datepicker-rtl .tbt-datepicker-next{left:2px;right:auto}.tbt-datepicker-rtl .tbt-datepicker-prev:hover{right:1px;left:auto}.tbt-datepicker-rtl .tbt-datepicker-next:hover{left:1px;right:auto}.tbt-datepicker-rtl .tbt-datepicker-buttonpane{clear:right}.tbt-datepicker-rtl .tbt-datepicker-buttonpane button{float:left}.tbt-datepicker-rtl .tbt-datepicker-buttonpane button.tbt-datepicker-current,.tbt-datepicker-rtl .tbt-datepicker-group{float:right}.tbt-datepicker-rtl .tbt-datepicker-group-last .tbt-datepicker-header,.tbt-datepicker-rtl .tbt-datepicker-group-middle .tbt-datepicker-header{border-right-width:0;border-left-width:1px}.tbt-datepicker .tbt-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;left:.5em;top:.3em}.tbt-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.tbt-widget .tbt-widget{font-size:1em}.tbt-widget input,.tbt-widget select,.tbt-widget textarea,.tbt-widget button{font-family:Arial,Helvetica,sans-serif;font-size:1em}.tbt-widget.tbt-widget-content{max-width:100%;border:1px solid #c5c5c5}.tbt-widget-content{border:1px solid #ddd;background:#fff;color:#333}.tbt-widget-content a{color:#333}.tbt-widget-header{border:1px solid transparent;background:#e9e9e9;
1615color:#fff;font-weight:bold}.tbt-widget-header a{color:#333}.tbt-state-default,.tbt-widget-content .tbt-state-default,.tbt-widget-header .tbt-state-default,.tbt-button,html .tbt-button.tbt-state-disabled:hover,html .tbt-button.tbt-state-disabled:active{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:normal;color:#454545}.tbt-state-default a,.tbt-state-default a:link,.tbt-state-default a:visited,a.tbt-button,a:link.tbt-button,a:visited.tbt-button,.tbt-button{color:#454545;text-decoration:none}.tbt-state-hover,.tbt-widget-content .tbt-state-hover,.tbt-widget-header .tbt-state-hover,.tbt-state-focus,.tbt-widget-content .tbt-state-focus,.tbt-widget-header .tbt-state-focus,.tbt-button:hover,.tbt-button:focus{border:1px solid #ccc;background:#ededed;font-weight:normal;color:#2b2b2b}.tbt-state-hover a,.tbt-state-hover a:hover,.tbt-state-hover a:link,.tbt-state-hover a:visited,.tbt-state-focus a,.tbt-state-focus a:hover,.tbt-state-focus a:link,.tbt-state-focus a:visited,a.tbt-button:hover,a.tbt-button:focus{color:#2b2b2b;text-decoration:none}.tbt-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.tbt-state-active,.tbt-widget-content .tbt-state-active,.tbt-widget-header .tbt-state-active,a.tbt-button:active,.tbt-button:active,.tbt-button.tbt-state-active:hover{border:1px solid #003eff;background:#007fff;font-weight:normal;color:#fff}.tbt-icon-background,.tbt-state-active .tbt-icon-background{border:#003eff;background-color:#fff}.tbt-state-active a,.tbt-state-active a:link,.tbt-state-active a:visited{color:#fff;text-decoration:none}.tbt-state-checked{border:1px solid #dad55e;background:#fffa90}.tbt-state-highlight a,.tbt-widget-content .tbt-state-highlight a,.tbt-widget-header .tbt-state-highlight a{color:#777620}.tbt-state-error,.tbt-widget-content .tbt-state-error,.tbt-widget-header .tbt-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.tbt-state-error a,.tbt-widget-content .tbt-state-error a,.tbt-widget-header .tbt-state-error a{color:#5f3f3f}.tbt-state-error-text,.tbt-widget-content .tbt-state-error-text,.tbt-widget-header .tbt-state-error-text{color:#5f3f3f}.tbt-priority-primary,.tbt-widget-content .tbt-priority-primary,.tbt-widget-header .tbt-priority-primary{font-weight:bold}.tbt-priority-secondary,.tbt-widget-content .tbt-priority-secondary,.tbt-widget-header .tbt-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.tbt-state-disabled,.tbt-widget-content .tbt-state-disabled,.tbt-widget-header .tbt-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.tbt-state-disabled .tbt-icon{filter:Alpha(Opacity=35)}.tbt-icon{width:16px;height:16px}.tbt-icon,.tbt-widget-content .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_ffffff_256x240.png")}.tbt-widget-header .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_ffffff_256x240.png")}.tbt-state-hover .tbt-icon,.tbt-state-focus .tbt-icon,.tbt-button:hover .tbt-icon,.tbt-button:focus .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_555555_256x240.png")}.tbt-state-active .tbt-icon,.tbt-button:active .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_ffffff_256x240.png")}.tbt-state-highlight .tbt-icon,.tbt-button .tbt-state-highlight.tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_777620_256x240.png")}.tbt-state-error .tbt-icon,.tbt-state-error-text .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_cc0000_256x240.png")}.tbt-button .tbt-icon{background-image:url("https://thanhhd.com/app/public/advanced-delivery/images/ui-icons_777777_256x240.png")}.tbt-icon-blank{background-position:16px 16px}.tbt-icon-caret-1-n{background-position:0 0}.tbt-icon-caret-1-ne{background-position:-16px 0}.tbt-icon-caret-1-e{background-position:-32px 0}.tbt-icon-caret-1-se{background-position:-48px 0}.tbt-icon-caret-1-s{background-position:-65px 0}.tbt-icon-caret-1-sw{background-position:-80px 0}.tbt-icon-caret-1-w{background-position:-96px 0}.tbt-icon-caret-1-nw{background-position:-112px 0}.tbt-icon-caret-2-n-s{background-position:-128px 0}.tbt-icon-caret-2-e-w{background-position:-144px 0}.tbt-icon-triangle-1-n{background-position:0 -16px}.tbt-icon-triangle-1-ne{background-position:-16px -16px}.tbt-icon-triangle-1-e{background-position:-32px -16px}.tbt-icon-triangle-1-se{background-position:-48px -16px}.tbt-icon-triangle-1-s{background-position:-65px -16px}.tbt-icon-triangle-1-sw{background-position:-80px -16px}.tbt-icon-triangle-1-w{background-position:-96px -16px}.tbt-icon-triangle-1-nw{background-position:-112px -16px}.tbt-icon-triangle-2-n-s{background-position:-128px -16px}.tbt-icon-triangle-2-e-w{background-position:-144px -16px}.tbt-icon-arrow-1-n{background-position:0 -32px}.tbt-icon-arrow-1-ne{background-position:-16px -32px}.tbt-icon-arrow-1-e{background-position:-32px -32px}.tbt-icon-arrow-1-se{background-position:-48px -32px}.tbt-icon-arrow-1-s{background-position:-65px -32px}.tbt-icon-arrow-1-sw{background-position:-80px -32px}.tbt-icon-arrow-1-w{background-position:-96px -32px}.tbt-icon-arrow-1-nw{background-position:-112px -32px}.tbt-icon-arrow-2-n-s{background-position:-128px -32px}.tbt-icon-arrow-2-ne-sw{background-position:-144px -32px}.tbt-icon-arrow-2-e-w{background-position:-160px -32px}.tbt-icon-arrow-2-se-nw{background-position:-176px -32px}.tbt-icon-arrowstop-1-n{background-position:-192px -32px}.tbt-icon-arrowstop-1-e{background-position:-208px -32px}.tbt-icon-arrowstop-1-s{background-position:-224px -32px}.tbt-icon-arrowstop-1-w{background-position:-240px -32px}.tbt-icon-arrowthick-1-n{background-position:1px -48px}.tbt-icon-arrowthick-1-ne{background-position:-16px -48px}.tbt-icon-arrowthick-1-e{background-position:-32px -48px}.tbt-icon-arrowthick-1-se{background-position:-48px -48px}.tbt-icon-arrowthick-1-s{background-position:-64px -48px}.tbt-icon-arrowthick-1-sw{background-position:-80px -48px}.tbt-icon-arrowthick-1-w{background-position:-96px -48px}.tbt-icon-arrowthick-1-nw{background-position:-112px -48px}.tbt-icon-arrowthick-2-n-s{background-position:-128px -48px}.tbt-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.tbt-icon-arrowthick-2-e-w{background-position:-160px -48px}.tbt-icon-arrowthick-2-se-nw{background-position:-176px -48px}.tbt-icon-arrowthickstop-1-n{background-position:-192px -48px}.tbt-icon-arrowthickstop-1-e{background-position:-208px -48px}.tbt-icon-arrowthickstop-1-s{background-position:-224px -48px}.tbt-icon-arrowthickstop-1-w{background-position:-240px -48px}.tbt-icon-arrowreturnthick-1-w{background-position:0 -64px}.tbt-icon-arrowreturnthick-1-n{background-position:-16px -64px}.tbt-icon-arrowreturnthick-1-e{background-position:-32px -64px}.tbt-icon-arrowreturnthick-1-s{background-position:-48px -64px}.tbt-icon-arrowreturn-1-w{background-position:-64px -64px}.tbt-icon-arrowreturn-1-n{background-position:-80px -64px}.tbt-icon-arrowreturn-1-e{background-position:-96px -64px}.tbt-icon-arrowreturn-1-s{background-position:-112px -64px}.tbt-icon-arrowrefresh-1-w{background-position:-128px -64px}.tbt-icon-arrowrefresh-1-n{background-position:-144px -64px}.tbt-icon-arrowrefresh-1-e{background-position:-160px -64px}.tbt-icon-arrowrefresh-1-s{background-position:-176px -64px}.tbt-icon-arrow-4{background-position:0 -80px}.tbt-icon-arrow-4-diag{background-position:-16px -80px}.tbt-icon-extlink{background-position:-32px -80px}.tbt-icon-newwin{background-position:-48px -80px}.tbt-icon-refresh{background-position:-64px -80px}.tbt-icon-shuffle{background-position:-80px -80px}.tbt-icon-transfer-e-w{background-position:-96px -80px}.tbt-icon-transferthick-e-w{background-position:-112px -80px}.tbt-icon-folder-collapsed{background-position:0 -96px}.tbt-icon-folder-open{background-position:-16px -96px}.tbt-icon-document{background-position:-32px -96px}.tbt-icon-document-b{background-position:-48px -96px}.tbt-icon-note{background-position:-64px -96px}.tbt-icon-mail-closed{background-position:-80px -96px}.tbt-icon-mail-open{background-position:-96px -96px}.tbt-icon-suitcase{background-position:-112px -96px}.tbt-icon-comment{background-position:-128px -96px}.tbt-icon-person{background-position:-144px -96px}.tbt-icon-print{background-position:-160px -96px}.tbt-icon-trash{background-position:-176px -96px}.tbt-icon-locked{background-position:-192px -96px}.tbt-icon-unlocked{background-position:-208px -96px}.tbt-icon-bookmark{background-position:-224px -96px}.tbt-icon-tag{background-position:-240px -96px}.tbt-icon-home{background-position:0 -112px}.tbt-icon-flag{background-position:-16px -112px}.tbt-icon-calendar{background-position:-32px -112px}.tbt-icon-cart{background-position:-48px -112px}.tbt-icon-pencil{background-position:-64px -112px}.tbt-icon-clock{background-position:-80px -112px}.tbt-icon-disk{background-position:-96px -112px}.tbt-icon-calculator{background-position:-112px -112px}.tbt-icon-zoomin{background-position:-128px -112px}.tbt-icon-zoomout{background-position:-144px -112px}.tbt-icon-search{background-position:-160px -112px}.tbt-icon-wrench{background-position:-176px -112px}.tbt-icon-gear{background-position:-192px -112px}.tbt-icon-heart{background-position:-208px -112px}.tbt-icon-star{background-position:-224px -112px}.tbt-icon-link{background-position:-240px -112px}.tbt-icon-cancel{background-position:0 -128px}.tbt-icon-plus{background-position:-16px -128px}.tbt-icon-plusthick{background-position:-32px -128px}.tbt-icon-minus{background-position:-48px -128px}.tbt-icon-minusthick{background-position:-64px -128px}.tbt-icon-close{background-position:-80px -128px}.tbt-icon-closethick{background-position:-96px -128px}.tbt-icon-key{background-position:-112px -128px}.tbt-icon-lightbulb{background-position:-128px -128px}.tbt-icon-scissors{background-position:-144px -128px}.tbt-icon-clipboard{background-position:-160px -128px}.tbt-icon-copy{background-position:-176px -128px}.tbt-icon-contact{background-position:-192px -128px}.tbt-icon-image{background-position:-208px -128px}.tbt-icon-video{background-position:-224px -128px}.tbt-icon-script{background-position:-240px -128px}.tbt-icon-alert{background-position:0 -144px}.tbt-icon-info{background-position:-16px -144px}.tbt-icon-notice{background-position:-32px -144px}.tbt-icon-help{background-position:-48px -144px}.tbt-icon-check{background-position:-64px -144px}.tbt-icon-bullet{background-position:-80px -144px}.tbt-icon-radio-on{background-position:-96px -144px}.tbt-icon-radio-off{background-position:-112px -144px}.tbt-icon-pin-w{background-position:-128px -144px}.tbt-icon-pin-s{background-position:-144px -144px}.tbt-icon-play{background-position:0 -160px}.tbt-icon-pause{background-position:-16px -160px}.tbt-icon-seek-next{background-position:-32px -160px}.tbt-icon-seek-prev{background-position:-48px -160px}.tbt-icon-seek-end{background-position:-64px -160px}.tbt-icon-seek-start{background-position:-80px -160px}.tbt-icon-seek-first{background-position:-80px -160px}.tbt-icon-stop{background-position:-96px -160px}.tbt-icon-eject{background-position:-112px -160px}.tbt-icon-volume-off{background-position:-128px -160px}.tbt-icon-volume-on{background-position:-144px -160px}.tbt-icon-power{background-position:0 -176px}.tbt-icon-signal-diag{background-position:-16px -176px}.tbt-icon-signal{background-position:-32px -176px}.tbt-icon-battery-0{background-position:-48px -176px}.tbt-icon-battery-1{background-position:-64px -176px}.tbt-icon-battery-2{background-position:-80px -176px}.tbt-icon-battery-3{background-position:-96px -176px}.tbt-icon-circle-plus{background-position:0 -192px}.tbt-icon-circle-minus{background-position:-16px -192px}.tbt-icon-circle-close{background-position:-32px -192px}.tbt-icon-circle-triangle-e{background-position:-48px -192px}.tbt-icon-circle-triangle-s{background-position:-64px -192px}.tbt-icon-circle-triangle-w{background-position:-80px -192px}.tbt-icon-circle-triangle-n{background-position:-96px -192px}.tbt-icon-circle-arrow-e{background-position:-112px -192px}.tbt-icon-circle-arrow-s{background-position:-128px -192px}.tbt-icon-circle-arrow-w{background-position:-144px -192px}.tbt-icon-circle-arrow-n{background-position:-160px -192px}.tbt-icon-circle-zoomin{background-position:-176px -192px}.tbt-icon-circle-zoomout{background-position:-192px -192px}.tbt-icon-circle-check{background-position:-208px -192px}.tbt-icon-circlesmall-plus{background-position:0 -208px}.tbt-icon-circlesmall-minus{background-position:-16px -208px}.tbt-icon-circlesmall-close{background-position:-32px -208px}.tbt-icon-squaresmall-plus{background-position:-48px -208px}.tbt-icon-squaresmall-minus{background-position:-64px -208px}.tbt-icon-squaresmall-close{background-position:-80px -208px}.tbt-icon-grip-dotted-vertical{background-position:0 -224px}.tbt-icon-grip-dotted-horizontal{background-position:-16px -224px}.tbt-icon-grip-solid-vertical{background-position:-32px -224px}.tbt-icon-grip-solid-horizontal{background-position:-48px -224px}.tbt-icon-gripsmall-diagonal-se{background-position:-64px -224px}.tbt-icon-grip-diagonal-se{background-position:-80px -224px}.tbt-corner-all,.tbt-corner-top,.tbt-corner-left,.tbt-corner-tl{border-top-left-radius:0px}.tbt-corner-all,.tbt-corner-top,.tbt-corner-right,.tbt-corner-tr{border-top-right-radius:0px}.tbt-corner-all,.tbt-corner-bottom,.tbt-corner-left,.tbt-corner-bl{border-bottom-left-radius:0px}.tbt-corner-all,.tbt-corner-bottom,.tbt-corner-right,.tbt-corner-br{border-bottom-right-radius:0px}.tbt-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.tbt-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}.tbt-state-hover,.tbt-widget-content .tbt-state-hover,.tbt-widget-header .tbt-state-hover{cursor:pointer;border-radius:0}.tbtDeliveryCalendar>div{margin: auto;margin-top: 20px;}.tbt-datepicker-calendar tr:first-child th:after, .tbt-datepicker-calendar tr:first-child td:after{border:none}';jQuery("body").append("<style>"+tbtTableStyle+"</style>");var data={};data.shop=shopName,data.action="getSettings",$.get("https://thanhhd.com/app/public/advanced-delivery/advanced-delivery.php",data,function(result){if("1"==result.enable_product){"Delivery Date"!=result.delivery_date_title&&jQuery(".tbtDeliveryDateVal").attr("name","properties["+result.delivery_date_title+"]"),"Delivery Day"!=result.delivery_day_title&&jQuery(".tbtDeliveryDayVal").attr("name","properties["+result.delivery_day_title+"]");var startWeek=parseInt(result.week_start),customCss=result.custom_css,date_format="mm/dd/yy";date_format="1"==result.date_format?"mm/dd/yy":"dd/mm/yy",jQuery("[name='properties[Delivery Time]'], .deliveryTime, .deliveryRequired, .tbtHeading").remove();var customStyle=".tbt-widget-header{background: "+result.header_color+";border-color: "+result.border_color+";}.tbt-state-active, .tbt-widget-content .tbt-state-active, .tbt-widget-header .tbt-state-active, a.tbt-button:active, .tbt-button:active, .tbt-button.tbt-state-active:hover {border: 1px solid "+result.day_selected_color+";background: "+result.day_selected_color+";";if(customCss&&jQuery("body").append("<style>"+customStyle+"</style>"),"pro"==result.account_type&&"1"==result.enable_add_field&&result.addition_fields.length){jQuery(".deliveryAdditionField").remove(),jQuery(".tbtDeliveryCalendar").tbtDatepicker("destroy");for(var deliveryAdditionFields="<option>"+result.add_field_title+"</option>",deliveryAdditionField=result.addition_fields,i=0;i<deliveryAdditionField.length;i++){var temp='<option value="'+deliveryAdditionField[i].id+'">'+deliveryAdditionField[i].field_title+"</option>";deliveryAdditionFields+=temp}if(jQuery(".tbtDeliveryCalendar").before("<select class='deliveryAdditionField'>"+deliveryAdditionFields+"</select>"),"1"==result.required){var requiredText=result.require_text;jQuery('a[href="/checkout"]').length&&jQuery('a[href="/checkout"]').off("
1615click").on("click",function(t){doRequired1(t,result,requiredText,cartForm)}),jQuery(".additional-checkout-button, .additional-checkout-button img").length&&jQuery(".additional-checkout-button, .additional-checkout-button img").off("click").on("click",function(t){doRequired1(t,result,requiredText,cartForm)}),cartForm.find("[name='checkout']").length?cartForm.find("[name='checkout']").off("click").on("click",function(t){doRequired1(t,result,requiredText,cartForm)}):cartForm.submit(function(t){doRequired1(t,result,requiredText,cartForm)})}jQuery(".deliveryAdditionField").on("change",function(){jQuery(".tbtDeliveryTimeVal, .tbtHeading, .deliveryTime").remove(),jQuery(".tbtDeliveryDayVal, .tbtDeliveryDateVal").val("");var that=this;if(jQuery(that).val()!=result.add_field_title)for(var fieldId=jQuery(that).val(),i=0;i<result.addition_fields.length;i++){var field=result.addition_fields[i];if(field.id==fieldId){var minDate=field.min_date;if("undefined"!=typeof deliverProduct){var checkMinDate=-999;deliverProduct.tags.forEach(function(t){var e=t;e.indexOf("deliveryMinDate")>-1&&e.split(",").forEach(function(t){t.indexOf("deliveryMinDate")>-1&&("max"==result.sorting?parseInt(t.replace("deliveryMinDate",""))>checkMinDate&&(checkMinDate=parseInt(t.replace("deliveryMinDate",""))):checkMinDate>parseInt(t.replace("deliveryMinDate",""))&&(checkMinDate=parseInt(t.replace("deliveryMinDate",""))))})}),-999!=checkMinDate&&(minDate=checkMinDate)}else var minDate=parseInt(field.min_date);if(parseInt(field.use_hour)){var today=(new Date).getHours();today>=parseInt(field.hour)&&(minDate+=parseInt(field.day))}var inValidDay=field.invalid_day.split(",");if(inValidDay)for(var i=0;i<inValidDay.length;i++)inValidDay[i]=parseInt(inValidDay[i]);else inValidDay=[];if(field.extra_no_available)var extraNoAvailable=field.extra_no_available.split(",");else var extraNoAvailable=!1;if("1"==result.required&&result.require_text&&(jQuery(".deliveryRequired").remove(),jQuery("<div class='deliveryRequired'></div>").insertBefore(".deliveryAdditionField")),minDate<0&&"pro"==result.account_type);else{if(result.heading&&jQuery("<div class='tbtHeading'>"+result.heading+"</div>").insertBefore(".deliveryAdditionField"),"1"==result.required){var requiredText=result.require_text;jQuery('a[href="/checkout"]').length&&jQuery('a[href="/checkout"]').off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}),jQuery(".additional-checkout-button").length&&jQuery(".additional-checkout-button").off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}),cartForm.find("[name='checkout']").length?cartForm.find("[name='checkout']").off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}):cartForm.off("submit").on("submit",function(t){doRequired(t,result,requiredText,cartForm)})}if("1"==field.use_time&&field.delivery_time){cartForm.append('<input type="hidden" name="properties[Delivery Time]" class="tbtDeliveryTimeVal">');for(var deliveryTimes="<option>"+field.select_time_text+"</option>",delivery_time=field.delivery_time.split(","),i=0;i<delivery_time.length;i++){var temp='<option value="'+delivery_time[i]+'">'+delivery_time[i]+"</option>";deliveryTimes+=temp}jQuery(".tbtDeliveryCalendar").after("<select class='deliveryTime'>"+deliveryTimes+"</select>"),jQuery(".deliveryTime").off("change").on("change",function(){jQuery(this).val()==field.select_time_text?jQuery(".tbtDeliveryTimeVal").val(""):jQuery(".tbtDeliveryTimeVal").val(jQuery(this).val())})}var maxDate=!1;result.specific_min_date&&(minDate=eval(result.specific_min_date)),result.specific_max_date&&(maxDate=eval(result.specific_max_date)),bindDatePicker(minDate,inValidDay,startWeek,date_format,result.months_name,result.dates_name,extraNoAvailable,maxDate,result)}break}}})}else{minDate=parseInt(result.min_date);var productMinDates=[];if("undefined"!=typeof deliverProduct&&deliverProduct.tags.length&&deliverProduct.tags.forEach(function(t){var e=t;e.indexOf("deliveryMinDate")>-1&&productMinDates.push(parseInt(e.replace("deliveryMinDate","")))}),productMinDates.length&&(minDate=getBigNumber(productMinDates)),parseInt(result.use_hour)&&minDate>-1){var today=(new Date).getHours();today>=parseInt(result.hour)&&(minDate+=parseInt(result.day))}var inValidDay=result.invalid_day.split(",");if(inValidDay)for(var i=0;i<inValidDay.length;i++)inValidDay[i]=parseInt(inValidDay[i]);else inValidDay=[];
1615if(result.extra_no_available)var extraNoAvailable=result.extra_no_available.split(",");else var extraNoAvailable=!1;if("1"==result.required&&result.require_text&&jQuery("<div class='deliveryRequired'></div>").insertBefore(".tbtDeliveryCalendar"),minDate<0);else{if(result.heading&&jQuery("<div class='tbtHeading'>"+result.heading+"</div>").insertBefore(".tbtDeliveryCalendar"),"1"==result.required){var requiredText=result.require_text;jQuery('a[href="/checkout"]').length&&jQuery('a[href="/checkout"]').off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}),jQuery(".additional-checkout-button").length&&jQuery(".additional-checkout-button").off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}),cartForm.find("[name='checkout']").length?cartForm.find("[name='checkout']").off("click").on("click",function(t){doRequired(t,result,requiredText,cartForm)}):cartForm.off("submit").on("submit",function(t){doRequired(t,result,requiredText,cartForm)})}if("1"==result.use_time&&result.delivery_time){cartForm.append('<input type="hidden" name="properties[Delivery Time]" class="tbtDeliveryTimeVal">');for(var deliveryTimes="<option>"+result.select_time_text+"</option>",delivery_time=result.delivery_time.split(","),i=0;i<delivery_time.length;i++){var d=new Date,n=d.getHours(),todayDate=d.getDate()+"/"+d.getMonth()+"/"+d.getFullYear();if("Pick Up today - last order 4pm"==delivery_time[i]&&"utopia-products-asia-upa.myshopify.com"==shopName){if(n<16&&"25/11/2017"!=todayDate&&"1/0/18 "!=todayDate){var temp='<option value="'+delivery_time[i]+'">'+delivery_time[i]+"</option>";deliveryTimes+=temp}}else if("Pick Up tomorrow"==delivery_time[i]&&"utopia-products-asia-upa.myshopify.com"==shopName){if("24/11/2017"!=todayDate&&"31/11/18 "!=todayDate){var temp='<option value="'+delivery_time[i]+'">'+delivery_time[i]+"</option>";deliveryTimes+=temp}}else{var temp='<option value="'+delivery_time[i]+'">'+delivery_time[i]+"</option>";deliveryTimes+=temp}}jQuery(".tbtDeliveryCalendar").after("<select class='deliveryTime'>"+deliveryTimes+"</select>"),jQuery(".deliveryTime").change(function(){if(jQuery(this).val()==result.select_time_text?jQuery(".tbtDeliveryTimeVal").val(""):jQuery(".tbtDeliveryTimeVal").val(jQuery(this).val()),"utopia-products-asia-upa.myshopify.com"==shopName)if(extraNoAvailable=result.extra_no_available.split(","),jQuery(".customDiscount").remove(),jQuery(".deliveryTime").val().indexOf("Pick Up")>-1&&cartForm.append('<input type="hidden" name="discount" class="customDiscount" value="PICKUP10">'),"Pick Up today - last order 4pm"==jQuery(".deliveryTime").val())jQuery(".tbtDeliveryCalendar").hide(),jQuery(".tbtDeliveryDateVal").val("Today"),jQuery(".tbtDeliveryDayVal").val("Pickup"),jQuery(".deliveryRequired").hide();else if("Pick Up tomorrow"==jQuery(".deliveryTime").val()){var t=new Date,e=new Date(t.getTime()+864e5);jQuery(".tbtDeliveryCalendar").tbtDatepicker("option","minDate",0),jQuery(".tbtDeliveryCalendar").tbtDatepicker("setDate",e);var i=jQuery(".tbtDeliveryCalendar").val();jQuery(".tbtDeliveryCalendar").hide(),jQuery(".tbtDeliveryDateVal").val(i),jQuery(".tbtDeliveryDayVal").val("Pickup"),jQuery(".deliveryRequired").hide()}else if("Pick Up - choose a date"==jQuery(".deliveryTime").val()){jQuery(".tbt-state-default").removeClass("tbt-state-active"),jQuery(".tbtDeliveryDateVal").val(""),jQuery(".tbtDeliveryDayVal").val(""),jQuery(".tbtDeliveryCalendar").show(),extraNoAvailable.push("25/12/2017"),extraNoAvailable.push("01/01/2018");var a=extraNoAvailable.indexOf("02/01/2018");extraNoAvailable.splice(a,1);a=extraNoAvailable.indexOf("28/12/2017");extraNoAvailable.splice(a,1),bindDatePickerAllAvailable(minDate,inValidDay,startWeek,date_format,result.months_name,result.dates_name,extraNoAvailable,maxDate,result)}else"Delivery - choose a date"==jQuery(".deliveryTime").val()&&(jQuery(".tbt-state-default").removeClass("tbt-state-active"),jQuery(".tbtDeliveryDateVal").val(""),jQuery(".tbtDeliveryDayVal").val(""),jQuery(".tbtDeliveryCalendar").show(),bindDatePicker(minDate,inValidDay,startWeek,date_format,result.months_name,result.dates_name,extraNoAvailable,maxDate,result))})}var maxDate=!1;result.specific_min_date&&(minDate=eval(result.specific_min_date)),result.specific_max_date&&(maxDate=eval(result.specific_max_date)),bindDatePicker(minDate,inValidDay,startWeek,date_format,result.months_name,result.dates_name,extraNoAvailable,maxDate,result)}}}})}}if(cart)if("undefined"==typeof jQuery){var headTag=document.getElementsByTagName("head")[0],jqTag=document.createElement("script");jqTag.type="text/javascript",jqTag.src="//code.jquery.com/jquery-2.2.4.min.js",jqTag.onload=myJQueryCode,headTag.appendChild(jqTag)}else myJQueryCode();else if(isProduct)if("undefined"==typeof jQuery){var headTag=document.getElementsByTagName("head")[0],jqTag=document.createElement("script");jqTag.type="text/javascript",jqTag.src="//code.jquery.com/jquery-2.2.4.min.js",jqTag.onload=myJQueryCode1,headTag.appendChild(jqTag)}else myJQueryCode1();function getBigNumber(t){for(var e=t[0],i=0;i<t.length;i++)t[i]>e&&(e=t[i]);return e}function bindDatePickerAllAvailable(t,e,i,a,r,o,n,d,c){if("1"==c.use_multi_month)var s=parseInt(c.multi_month);else s=1;var l=[0];jQuery(".tbtDeliveryCalendar").tbtDatepicker("destroy").tbtDatepicker({beforeShowDay:function(t){var e=t.getDay();if(l.indexOf(e)>-1)return[!1,"","Booked out"];if(n){var i=$.tbtDatepicker.formatDate(a,t);return[-1==n.indexOf(i)]}},onSelect:function(t){jQuery(".tbtDeliveryDateVal").val(t),jQuery(".tbtDeliveryDayVal").val(toTheDay())},minDate:t,firstDay:i,dateFormat:a,dayNamesMin:o.split(","),monthNames:r.split(","),numberOfMonths:s})}function bindDatePicker(t,e,i,a,r,o,n,d,c){if("1"==c.use_multi_month)var s=parseInt(c.multi_month);else s=1;d?jQuery(".tbtDeliveryCalendar").tbtDatepicker("destroy").tbtDatepicker({beforeShowDay:function(t){var i=t.getDay();if(e.indexOf(i)>-1)return[!1,"","Booked out"];if(n){var r=$.tbtDatepicker.formatDate(a,t);return[-1==n.indexOf(r)]}return[!0,"","available"]},onSelect:function(t){jQuery(".tbtDeliveryDateVal").val(t),jQuery(".tbtDeliveryDayVal").val(toTheDay())},minDate:t,maxDate:d,firstDay:i,dateFormat:a,dayNamesMin:o.split(","),monthNames:r.split(","),numberOfMonths:s}):jQuery(".tbtDeliveryCalendar").tbtDatepicker("destroy").tbtDatepicker({beforeShowDay:function(t){var i=t.getDay();if(e.indexOf(i)>-1)return[!1,"","Booked out"];if(n){var r=$.tbtDatepicker.formatDate(a,t);return[-1==n.indexOf(r)]}return[!0,"","available"]},onSelect:function(t){jQuery(".tbtDeliveryDateVal").val(t),jQuery(".tbtDeliveryDayVal").val(toTheDay())},minDate:t,firstDay:i,dateFormat:a,dayNamesMin:o.split(","),monthNames:r.split(","),numberOfMonths:s}),jQuery(".tbtDeliveryCalendar").tbtDatepicker("setDate",null),jQuery(".tbtDeliveryCalendar").find(".tbt-datepicker-current-day a").removeClass("tbt-state-active").removeClass("tbt-state-hover"),jQuery(".tbtDeliveryCalendar").find(".tbt-datepicker-current-day").removeClass("tbt-datepicker-current-day").removeClass("tbt-datepicker-days-cell-over")}function doRequired(t,e,i,a){jQuery(".deliveryRequired").hide(),"1"==e.use_time?jQuery(".tbtDeliveryDateVal").val()&&jQuery(".tbtDeliveryTimeVal").val()?"pro"==e.account_type&&"1"==e.enable_add_field&&e.addition_fields.length&&"1"==e.require_add_field?jQuery(".deliveryAdditionField").val()==e.add_field_title?(jQuery(".deliveryAdditionField").addClass("tbtRequired"),jQuery("html, body").animate({scrollTop:jQuery(".deliveryAdditionField").offset().top-100},1e3),t.preventDefault()):jQuery(".deliveryAdditionField").removeClass("tbtRequired"):(jQuery(".deliveryTime").removeClass("tbtRequired"),jQuery(".tbtDeliveryCalendar").removeClass("tbtRequired"),jQuery(".deliveryRequired").hide(),a.unbind("submit"),a.find("[name='checkout']").length?(a.find("[name='checkout']").unbind("click"),a.find("[name='checkout']").click()):location.href="/checkout"):"pro"==e.account_type&&"1"==e.enable_add_field&&e.addition_fields.length&&"1"==e.require_add_field?(jQuery(".deliveryAdditionField").val()==e.add_field_title?jQuery(".deliveryAdditionField").addClass("tbtRequired"):jQuery(".deliveryAdditionField").removeClass("tbtRequired"),jQuery("html, body").animate({scrollTop:jQuery(".deliveryAdditionField").offset().top-100},1e3),jQuery(".deliveryRequired").html(i).show(),jQuery(".tbtDeliveryDateVal").val()?jQuery(".tbtDeliveryCalendar").removeClass("tbtRequired"):jQuery(".tbtDeliveryCalendar").addClass("tbtRequired"),jQuery(".tbtDeliveryTimeVal").val()?jQuery(".deliveryTime").removeClass("tbtRequired"):jQuery(".deliveryTime").addClass("tbtRequired"),setTimeout(function(){a.find("[name='checkout']").removeClass("btn--loading")},0),t.preventDefault()):(jQuery("html, body").animate({scrollTop:jQuery(".tbtDeliveryCalendar").offset().top-100},1e3),jQuery(".deliveryRequired").html(i).show(),jQuery(".tbtDeliveryDateVal").val()?jQuery(".tbtDeliveryCalendar").removeClass("tbtRequired"):jQuery(".tbtDeliveryCalendar").addClass("tbtRequired"),jQuery(".tbtDeliveryTimeVal").val()?jQuery(".deliveryTime").removeClass("tbtRequired"):jQuery(".deliveryTime").addClass("tbtRequired"),setTimeout(function(){a.find("[name='checkout']").removeClass("btn--loading")},0),t.preventDefault()):jQuery(".tbtDeliveryDateVal").val()?"pro"==e.account_type&&"1"==e.enable_add_field&&e.addition_fields.length&&"1"==e.require_add_field?jQuery(".deliveryAdditionField").val()==e.add_field_title?(jQuery(".deliveryAdditionField").addClass("tbtRequired"),jQuery("html, body").animate({scrollTop:jQuery(".deliveryAdditionField").offset().top-100},1e3),jQuery(".deliveryRequired").html(i).show(),jQuery(".deliveryAdditionField").val()==e.add_field_title?jQuery(".deliveryAdditionField").addClass("tbtRequired"):jQuery(".deliveryAdditionField").removeClass("tbtRequired"),t.preventDefault()):(jQuery(".tbtDeliveryCalendar").removeClass("tbtRequired"),jQuery(".deliveryRequired").hide(),a.unbind("submit"),jQuery('a[href="/checkout"]').length&&jQuery('a[href="/checkout"]').unbind("click"),a.find("[name='checkout']").length?(a.find("[name='checkout']").unbind("click"),a.find("[name='checkout']").click()):location.href="/checkout"):(jQuery(".deliveryTime").removeClass("tbtRequired"),jQuery(".tbtDeliveryCalendar").removeClass("tbtRequired"),jQuery(".deliveryRequired").hide(),a.unbind("submit"),location.href="/checkout"):"pro"==e.account_type&&"1"==e.enable_add_field&&e.addition_fields.length&&"1"==e.require_add_field?(jQuery("html, body").animate({scrollTop:jQuery(".deliveryAdditionField").offset().top-100},1e3),jQuery(".deliveryRequired").html(i).show(),jQuery(".deliveryAdditionField").val()==e.add_field_title?jQuery(".deliveryAdditionField").addClass("tbtRequired"):jQuery(".deliveryAdditionField").removeClass("tbtRequired"),jQuery(".tbtDeliveryDateVal").val()?jQuery(".tbtDeliveryCalendar").removeClass("tbtRequired"):jQuery(".tbtDeliveryCalendar").addClass("tbtRequired"),setTimeout(function(){a.find("[name='checkout']").removeClass("btn--loading")},0),t.preventDefault()):(jQuery("html, body").animate({scrollTop:jQuery(".tbtDeliveryCalendar").offset().top-100},1e3),jQuery(".deliveryRequired").html(i).show(),jQuery(".tbtDeliveryDateVal").val()?jQuery(".tbtDeliveryCalendar").removeClass("tbtRequired"):jQuery(".tbtDeliveryCalendar").addClass("tbtRequired"),setTimeout(function(){a.find("[name='checkout']").removeClass("btn--loading")},0),t.preventDefault())}
vendor: 6,829 bytes, line 1615
1615function doRequired1(t,e,i,a){jQuery("html, body").animate({scrollTop:jQuery(".deliveryAdditionField").offset().top-100},1e3),jQuery(".deliveryRequired").html(i).show(),jQuery(".deliveryAdditionField").val()==e.add_field_title?jQuery(".deliveryAdditionField").addClass("tbtRequired"):jQuery(".deliveryAdditionField").removeClass("tbtRequired"),setTimeout(function(){a.find("[name='checkout']").removeClass("btn--loading")},0),t.preventDefault()}function initDelivery(){var t;t=function(t){function e(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="tbt-datepicker-div",this._inlineClass="tbt-datepicker-inline",this._appendClass="tbt-datepicker-append",this._triggerClass="tbt-datepicker-trigger",this._dialogClass="tbt-datepicker-dialog",this._disableClass="tbt-datepicker-disabled",this._unselectableClass="tbt-datepicker-unselectable",this._currentClass="tbt-datepicker-current-day",this._dayOverClass="tbt-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},t.extend(this._defaults,this.regional[""]),this.regional.en=t.extend(!0,{},this.regional[""]),this.regional["en-US"]=t.extend(!0,{},this.regional.en),this.dpDiv=i(t("<div id='"+this._mainDivId+"' class='tbt-datepicker tbt-widget tbt-widget-content tbt-helper-clearfix tbt-corner-all'></div>"))}function i(e){var i="button, .tbt-datepicker-prev, .tbt-datepicker-next, .tbt-datepicker-calendar td a";return e.on("mouseout",i,function(){t(this).removeClass("tbt-state-hover"),-1!==this.className.indexOf("tbt-datepicker-prev")&&t(this).removeClass("tbt-datepicker-prev-hover"),-1!==this.className.indexOf("tbt-datepicker-next")&&t(this).removeClass("tbt-datepicker-next-hover")}).on("mouseover",i,a)}function a(){t.tbtDatepicker._isDisabledDatepicker(o.inline?o.dpDiv.parent()[0]:o.input[0])||(t(this).parents(".tbt-datepicker-calendar").find("a").removeClass("tbt-state-hover"),t(this).addClass("tbt-state-hover"),-1!==this.className.indexOf("tbt-datepicker-prev")&&t(this).addClass("tbt-datepicker-prev-hover"),-1!==this.className.indexOf("tbt-datepicker-next")&&t(this).addClass("tbt-datepicker-next-hover"))}function r(e,i){for(var a in t.extend(e,i),i)null==i[a]&&(e[a]=i[a]);return e}var o;t.ui=t.ui||{},t.ui.version="1.12.1",t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.extend(t.ui,{tbtDatepicker:{version:"1.12.1"}}),t.extend(e.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(t){return r(this._defaults,t||{}),this},_attachDatepicker:function(e,i){var a,r,o;r="div"===(a=e.nodeName.toLowerCase())||"span"===a,e.id||(this.uuid+=1,e.id="dp"+this.uuid),(o=this._newInst(t(e),r)).settings=t.extend({},i||{}),"input"===a?this._connectDatepicker(e,o):r&&this._inlineDatepicker(e,o)},_newInst:function(e,a){return{id:e[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1"),input:e,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:a,dpDiv:a?i(t("<div class='"+this._inlineClass+" tbt-datepicker tbt-widget tbt-widget-content tbt-helper-clearfix tbt-corner-all'></div>")):this.dpDiv}},_connectDatepicker:function(e,i){var a=t(e);i.append=t([]),i.trigger=t([]),a.hasClass(this.markerClassName)||(this._attachments(a,i),a.addClass(this.markerClassName).on("keydown",this._doKeyDown).on("keypress",this._doKeyPress).on("keyup",this._doKeyUp),this._autoSize(i),t.data(e,"datepicker",i),i.settings.disabled&&this._disableDatepicker(e))},_attachments:function(e,i){var a,r,o,n=this._get(i,"appendText"),d=this._get(i,"isRTL");i.append&&i.append.remove(),n&&(i.append=t("<span class='"+this._appendClass+"'>"+n+"</span>"),e[d?"before":"after"](i.append)),e.off("focus",this._showDatepicker),i.trigger&&i.trigger.remove(),("focus"===(a=this._get(i,"showOn"))||"both"===a)&&e.on("focus",this._showDatepicker),("button"===a||"both"===a)&&(r=this._get(i,"buttonText"),o=this._get(i,"buttonImage"),i.trigger=t(this._get(i,"buttonImageOnly")?t("<img/>").addClass(this._triggerClass).attr({src:o,alt:r,title:r}):t("<button type='button'></button>").addClass(this._triggerClass).html(o?t("<img/>").attr({src:o,alt:r,title:r}):r)),e[d?"before":"after"](i.trigger),i.trigger.on("click",function(){return t.tbtDatepicker._datepickerShowing&&t.tbtDatepicker._lastInput===e[0]?t.tbtDatepicker._hideDatepicker():t.tbtDatepicker._datepickerShowing&&t.tbtDatepicker._lastInput!==e[0]?(t.tbtDatepicker._hideDatepicker(),t.tbtDatepicker._showDatepicker(e[0])):t.tbtDatepicker._showDatepicker(e[0]),!1}))},_autoSize:function(t){if(this._get(t,"autoSize")&&!t.inline){var e,i,a,r,o=new Date(2009,11,20),n=this._get(t,"dateFormat");n.match(/[DM]/)&&(e=function(t){for(i=0,a=0,r=0;t.length>r;r++)t[r].length>i&&(i=t[r].length,a=r);return a},o.setMonth(e(this._get(t,n.match(/MM/)?"monthNames":"monthNamesShort"))),o.setDate(e(this._get(t,n.match(/DD/)?"dayNames":"dayNamesShort"))+20-o.getDay())),t.input.attr("size",this._formatDate(t,o).length)}},_inlineDatepicker:function(e,i){var a=t(e);a.hasClass(this.markerClassName)||(a.addClass(this.markerClassName).append(i.dpDiv),t.data(e,"datepicker",i),this._setDate(i,this._getDefaultDate(i),!0),this._updateDatepicker(i),this._updateAlternate(i),i.settings.disabled&&this._disableDatepicker(e),i.dpDiv.css("display","block"))},_dialogDatepicker:function(e,i,a,o,n){var d,c,s,l,p,b=this._dialogInst;return b||(this.uuid+=1,d="dp"+this.uuid,this._dialogInput=t("<input type='text' id='"+d+"' style='position: absolute; top: -100px; width: 0px;'/>
1615"),this._dialogInput.on("keydown",this._doKeyDown),t("body").append(this._dialogInput),(b=this._dialogInst=this._newInst(this._dialogInput,!1)).settings={},t.data(this._dialogInput[0],"datepicker",b)),r(b.settings,o||{}),i=i&&i.constructor===Date?this._formatDate(b,i):i,this._dialogInput.val(i),this._pos=n?n.length?n:[n.pageX,n.pageY]:null,this._pos||(c=document.documentElement.clientWidth,s=document.documentElement.clientHeight,l=document.documentElement.scrollLeft||document.body.scrollLeft,p=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[c/2-100+l,s/2-150+p]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),b.settings.onSelect=a,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),t.blockUI&&t.blockUI(this.dpDiv),t.data(this._dialogInput[0],"datepicker",b),this},_destroyDatepicker:function(e){var i,a=t(e),r=t.data(e,"datepicker");a.hasClass(this.markerClassName)&&(i=e.nodeName.toLowerCase(),t.removeData(e,"datepicker"),"input"===i?(r.append.remove(),r.trigger.remove(),a.removeClass(this.markerClassName).off("focus",this._showDatepicker).off("keydown",this._doKeyDown).off("keypress",this._doKeyPress).off("keyup",this._doKeyUp)):("div"===i||"span"===i)&&a.removeClass(this.markerClassName).empty(),o===r&&(o=null))},_enableDatepicker:function(e){var i,a,r=t(e),o=t.data(e,"datepicker");r.hasClass(this.markerClassName)&&("input"===(i=e.nodeName.toLowerCase())?(e.disabled=!1,o.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):("div"===i||"span"===i)&&((a=r.children("."+this._inlineClass)).children().removeClass("tbt-state-disabled"),a.find("select.tbt-datepicker-month, select.tbt-datepicker-year").prop("disabled",!1)),this._disabledInputs=t.map(this._disabledInputs,function(t){return t===e?null:t}))},_disableDatepicker:function(e){var i,a,r=t(e),o=t.data(e,"datepicker");r.hasClass(this.markerClassName)&&("input"===(i=e.nodeName.toLowerCase())?(e.disabled=!0,o.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):("div"===i||"span"===i)&&((a=r.children("."+this._inlineClass)).children().addClass("tbt-state-disabled"),a.find("select.tbt-datepicker-month, select.tbt-datepicker-year").prop("disabled",!0)),this._disabledInputs=t.map(this._disabledInputs,function(t){return t===e?null:t}),this._disabledInputs[this._disabledInputs.length]=e)},_isDisabledDatepicker:function(t){if(!t)return!1;for(var e=0;this._disabledInputs.length>e;e++)if(this._disabledInputs[e]===t)return!0;return!1},_getInst:function(e){try{return t.data(e,"datepicker")}catch(t){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(e,i,a){var o,n,d,c,s=this._getInst(e);return 2===arguments.length&&"string"==typeof i?"defaults"===i?t.extend({},t.tbtDatepicker._defaults):s?"all"===i?t.extend({},s.settings):this._get(s,i):null:(o=i||{},"string"==typeof i&&((o={})[i]=a),void(s&&(this._curInst===s&&this._hideDatepicker(),n=this._getDateDatepicker(e,!0),d=this._getMinMaxDate(s,"min"),c=this._getMinMaxDate(s,"max"),r(s.settings,o),null!==d&&void 0!==o.dateFormat&&void 0===o.minDate&&(s.settings.minDate=this._formatDate(s,d)),null!==c&&void 0!==o.dateFormat&&void 0===o.maxDate&&(s.settings.maxDate=this._formatDate(s,c)),"disabled"in o&&(o.disabled?this._disableDatepicker(e):this._enableDatepicker(e)),this._attachments(t(e),s),this._autoSize(s),this._setDate(s,n),this._updateAlternate(s),this._updateDatepicker(s))))},_changeDatepicker:function(t,e,i){this._optionDatepicker(t,e,i)},_refreshDatepicker:function(t){var e=this._getInst(t);e&&this._updateDatepicker(e)},_setDateDatepicker:function(t,e){var i=this._getInst(t);i&&(this._setDate(i,e),this._updateDatepicker(i),this._updateAlternate(i))},_getDateDatepicker:function(t,e){var i=this._getInst(t);return i&&!i.inline&&this._setDateFromField(i,e),i?this._getDate(i):null},_doKeyDown:function(e){var i,a,r,o=t.tbtDatepicker._getInst(e.target),n=!0,d=o.dpDiv.is(".tbt-datepicker-rtl");if(o._keyEvent=!0,t.tbtDatepicker._datepickerShowing)switch(e.keyCode){case 9:t.tbtDatepicker._hideDatepicker(),n=!1;break;case 13:return(r=t("td."+t.tbtDatepicker._dayOverClass+":not(."+t.tbtDatepicker._currentClass+")",o.dpDiv))[0]&&t.tbtDatepicker._selectDay(e.target,o.selectedMonth,o.selectedYear,r[0]),(i=t.tbtDatepicker._get(o,"onSelect"))?(a=t.tbtDatepicker._formatDate(o),i.apply(o.input?o.input[0]:null,[a,o])):t.tbtDatepicker._hideDatepicker(),!1;case 27:t.tbtDatepicker._hideDatepicker();break;case 33:t.tbtDatepicker._adjustDate(e.target,e.ctrlKey?-t.tbtDatepicker._get(o,"stepBigMonths"):-t.tbtDatepicker._get(o,"stepMonths"),"M");break;case 34:t.tbtDatepicker._adjustDate(e.target,e.ctrlKey?+t.tbtDatepicker._get(o,"stepBigMonths"):+t.tbtDatepicker._get(o,"stepMonths"),"M");break;case 35:(e.ctrlKey||e.metaKey)&&t.tbtDatepicker._clearDate(e.target),n=e.ctrlKey||e.metaKey;break;case 36:(e.ctrlKey||e.metaKey)&&t.tbtDatepicker._gotoToday(e.target),n=e.ctrlKey||e.metaKey;break;case 37:(e.ctrlKey||e.metaKey)&&t.tbtDatepicker._adjustDate(e.target,d?1:-1,"D"),n=e.ctrlKey||e.metaKey,e.originalEvent.altKey&&t.tbtDatepicker._adjustDate(e.target,e.ctrlKey?-t.tbtDatepicker._get(o,"stepBigMonths"):-t.tbtDatepicker._get(o,"stepMonths"),"M");break;case 38:(e.ctrlKey||e.metaKey)&&t.tbtDatepicker._adjustDate(e.target,-7,"D"),n=e.ctrlKey||e.metaKey;break;case 39:(e.ctrlKey||e.metaKey)&&t.tbtDatepicker._adjustDate(e.target,d?-1:1,"D"),n=e.ctrlKey||e.metaKey,e.originalEvent.altKey&&t.tbtDatepicker._adjustDate(e.target,e.ctrlKey?+t.tbtDatepicker._get(o,"stepBigMonths"):+t.tbtDatepicker._get(o,"stepMonths"),"M");break;case 40:(e.ctrlKey||e.metaKey)&&t.tbtDatepicker._adjustDate(e.target,7,"D"),n=e.ctrlKey||e.metaKey;break;default:n=!1}else 36===e.keyCode&&e.ctrlKey?t.tbtDatepicker._showDatepicker(this):n=!1;n&&(e.preventDefault(),e.stopPropagation())},_doKeyPress:function(e){var i,a,r=t.tbtDatepicker._getInst(e.target);return t.tbtDatepicker._get(r,"constrainInput")?(i=t.tbtDatepicker._possibleChars(t.tbtDatepicker._get(r,"dateFormat")),a=String.fromCharCode(null==e.charCode?e.keyCode:e.charCode),e.ctrlKey||e.metaKey||" ">a||!i||i.indexOf(a)>-1):void 0},_doKeyUp:function(e){var i=t.tbtDatepicker._getInst(e.target);if(i.input.val()!==i.lastVal)try{t.tbtDatepicker.parseDate(t.tbtDatepicker._get(i,"dateFormat"),i.input?i.input.val():null,t.tbtDatepicker._getFormatConfig(i))&&(t.tbtDatepicker._setDateFromField(i),t.tbtDatepicker._updateAlternate(i),t.tbtDatepicker._updateDatepicker(i))}catch(t){}return!0},_showDatepicker:function(e){var i,a,o,n,d,c,s;"input"!==(e=e.target||e).nodeName.toLowerCase()&&(e=t("input",e.parentNode)[0]),t.tbtDatepicker._isDisabledDatepicker(e)||t.tbtDatepicker._lastInput===e||(i=t.tbtDatepicker._getInst(e),t.tbtDatepicker._curInst&&t.tbtDatepicker._curInst!==i&&(t.tbtDatepicker._curInst.dpDiv.stop(!0,!0),i&&t.tbtDatepicker._datepickerShowing&&t.tbtDatepicker._hideDatepicker(t.tbtDatepicker._curInst.input[0])),!1!==(o=(a=t.tbtDatepicker._get(i,"beforeShow"))?a.apply(e,[e,i]):{})&&(r(i.settings,o),i.lastVal=null,t.tbtDatepicker._lastInput=e,t.tbtDatepicker._setDateFromField(i),t.tbtDatepicker._inDialog&&(e.value=""),t.tbtDatepicker._pos||(t.tbtDatepicker._pos=t.tbtDatepicker._findPos(e),t.tbtDatepicker._pos[1]+=e.offsetHeight),n=!1,t(e).parents().each(function(){return!(n|="fixed"===t(this).css("position"))}),d={left:t.tbtDatepicker._pos[0],top:t.tbtDatepicker._pos[1]},t.tbtDatepicker._pos=null,i.dpDiv.empty(),i.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),t.tbtDatepicker._updateDatepicker(i),d=t.tbtDatepicker._checkOffset(i,d,n),i.dpDiv.css({position:t.tbtDatepicker._inDialog&&t.blockUI?"static":n?"fixed":"absolute",display:"none",left:d.left+"px",to
vendor: 5,000 bytes, line 1615
1615p:d.top+"px"}),i.inline||(c=t.tbtDatepicker._get(i,"showAnim"),s=t.tbtDatepicker._get(i,"duration"),i.dpDiv.css("z-index",function(t){for(var e,i;t.length&&t[0]!==document;){if(("absolute"===(e=t.css("position"))||"relative"===e||"fixed"===e)&&(i=parseInt(t.css("zIndex"),10),!isNaN(i)&&0!==i))return i;t=t.parent()}return 0}(t(e))+1),t.tbtDatepicker._datepickerShowing=!0,t.effects&&t.effects.effect[c]?i.dpDiv.show(c,t.tbtDatepicker._get(i,"showOptions"),s):i.dpDiv[c||"show"](c?s:null),t.tbtDatepicker._shouldFocusInput(i)&&i.input.trigger("focus"),t.tbtDatepicker._curInst=i)))},_updateDatepicker:function(e){this.maxRows=4,o=e,e.dpDiv.empty().append(this._generateHTML(e)),this._attachHandlers(e);var i,r=this._getNumberOfMonths(e),n=r[1],d=e.dpDiv.find("."+this._dayOverClass+" a");d.length>0&&a.apply(d.get(0)),e.dpDiv.removeClass("tbt-datepicker-multi-2 tbt-datepicker-multi-3 tbt-datepicker-multi-4").width(""),n>1&&e.dpDiv.addClass("tbt-datepicker-multi-"+n).css("width",17*n+"em"),e.dpDiv[(1!==r[0]||1!==r[1]?"add":"remove")+"Class"]("tbt-datepicker-multi"),e.dpDiv[(this._get(e,"isRTL")?"add":"remove")+"Class"]("tbt-datepicker-rtl"),e===t.tbtDatepicker._curInst&&t.tbtDatepicker._datepickerShowing&&t.tbtDatepicker._shouldFocusInput(e)&&e.input.trigger("focus"),e.yearshtml&&(i=e.yearshtml,setTimeout(function(){i===e.yearshtml&&e.yearshtml&&e.dpDiv.find("select.tbt-datepicker-year:first").replaceWith(e.yearshtml),i=e.yearshtml=null},0))},_shouldFocusInput:function(t){return t.input&&t.input.is(":visible")&&!t.input.is(":disabled")&&!t.input.is(":focus")},_checkOffset:function(e,i,a){var r=e.dpDiv.outerWidth(),o=e.dpDiv.outerHeight(),n=e.input?e.input.outerWidth():0,d=e.input?e.input.outerHeight():0,c=document.documentElement.clientWidth+(a?0:t(document).scrollLeft()),s=document.documentElement.clientHeight+(a?0:t(document).scrollTop());return i.left-=this._get(e,"isRTL")?r-n:0,i.left-=a&&i.left===e.input.offset().left?t(document).scrollLeft():0,i.top-=a&&i.top===e.input.offset().top+d?t(document).scrollTop():0,i.left-=Math.min(i.left,i.left+r>c&&c>r?Math.abs(i.left+r-c):0),i.top-=Math.min(i.top,i.top+o>s&&s>o?Math.abs(o+d):0),i},_findPos:function(e){for(var i,a=this._getInst(e),r=this._get(a,"isRTL");e&&("hidden"===e.type||1!==e.nodeType||t.expr.filters.hidden(e));)e=e[r?"previousSibling":"nextSibling"];return[(i=t(e).offset()).left,i.top]},_hideDatepicker:function(e){var i,a,r,o,n=this._curInst;!n||e&&n!==t.data(e,"datepicker")||this._datepickerShowing&&(i=this._get(n,"showAnim"),a=this._get(n,"duration"),r=function(){t.tbtDatepicker._tidyDialog(n)},t.effects&&(t.effects.effect[i]||t.effects[i])?n.dpDiv.hide(i,t.tbtDatepicker._get(n,"showOptions"),a,r):n.dpDiv["slideDown"===i?"slideUp":"fadeIn"===i?"fadeOut":"hide"](i?a:null,r),i||r(),this._datepickerShowing=!1,(o=this._get(n,"onClose"))&&o.apply(n.input?n.input[0]:null,[n.input?n.input.val():"",n]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),t.blockUI&&(t.unblockUI(),t("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(t){t.dpDiv.removeClass(this._dialogClass).off(".tbt-datepicker-calendar")},_checkExternalClick:function(e){if(t.tbtDatepicker._curInst){var i=t(e.target),a=t.tbtDatepicker._getInst(i[0]);(i[0].id!==t.tbtDatepicker._mainDivId&&0===i.parents("#"+t.tbtDatepicker._mainDivId).length&&!i.hasClass(t.tbtDatepicker.markerClassName)&&!i.closest("."+t.tbtDatepicker._triggerClass).length&&t.tbtDatepicker._datepickerShowing&&(!t.tbtDatepicker._inDialog||!t.blockUI)||i.hasClass(t.tbtDatepicker.markerClassName)&&t.tbtDatepicker._curInst!==a)&&t.tbtDatepicker._hideDatepicker()}},_adjustDate:function(e,i,a){var r=t(e),o=this._getInst(r[0]);this._isDisabledDatepicker(r[0])||(this._adjustInstDate(o,i+("M"===a?this._get(o,"showCurrentAtPos"):0),a),this._updateDatepicker(o))},_gotoToday:function(e){var i,a=t(e),r=this._getInst(a[0]);this._get(r,"gotoCurrent")&&r.currentDay?(r.selectedDay=r.currentDay,r.drawMonth=r.selectedMonth=r.currentMonth,r.drawYear=r.selectedYear=r.currentYear):(i=new Date,r.selectedDay=i.getDate(),r.drawMonth=r.selectedMonth=i.getMonth(),r.drawYear=r.selectedYear=i.getFullYear()),this._notifyChange(r),this._adjustDate(a)},_selectMonthYear:function(e,i,a){var r=t(e),o=this._getInst(r[0]);o["selected"+("M"===a?"Month":"Year")]=o["draw"+("M"===a?"Month":"Year")]=parseInt(i.options[i.selectedIndex].value,10),this._notifyChange(o),this._adjustDate(r)},_selectDay:function(e,i,a,r){var o,n=t(e);t(r).hasClass(this._unselectableClass)||this._isDisabledDatepicker(n[0])||((o=this._getInst(n[0])).selectedDay=o.currentDay=t("a",r).html(),o.selectedMonth=o.currentMonth=i,o.selectedYear=o.currentYear=a,this._selectDate(e,this._formatDate(o,o.currentDay,o.currentMonth,o.currentYear)))},_clearDate:function(e){var i=t(e);this._selectDate(i,"")},_selectDate:function(e,i){var a,r=t(e),o=this._getInst(r[0]);i=null!=i?i:this._formatDate(o),o.input&&o.input.val(i),this._updateAlternate(o),(
vendor: 6,300 bytes, line 1615
1615a=this._get(o,"onSelect"))?a.apply(o.input?o.input[0]:null,[i,o]):o.input&&o.input.trigger("change"),o.inline?this._updateDatepicker(o):(this._hideDatepicker(),this._lastInput=o.input[0],"object"!=typeof o.input[0]&&o.input.trigger("focus"),this._lastInput=null)},_updateAlternate:function(e){var i,a,r,o=this._get(e,"altField");o&&(i=this._get(e,"altFormat")||this._get(e,"dateFormat"),a=this._getDate(e),r=this.formatDate(i,a,this._getFormatConfig(e)),t(o).val(r))},noWeekends:function(t){var e=t.getDay();return[e>0&&6>e,""]},iso8601Week:function(t){var e,i=new Date(t.getTime());return i.setDate(i.getDate()+4-(i.getDay()||7)),e=i.getTime(),i.setMonth(0),i.setDate(1),Math.floor(Math.round((e-i)/864e5)/7)+1},parseDate:function(e,i,a){if(null==e||null==i)throw"Invalid arguments";if(""==(i="object"==typeof i?""+i:i+""))return null;var r,o,n,d,c=0,s=(a?a.shortYearCutoff:null)||this._defaults.shortYearCutoff,l="string"!=typeof s?s:(new Date).getFullYear()%100+parseInt(s,10),p=(a?a.dayNamesShort:null)||this._defaults.dayNamesShort,b=(a?a.dayNames:null)||this._defaults.dayNames,u=(a?a.monthNamesShort:null)||this._defaults.monthNamesShort,h=(a?a.monthNames:null)||this._defaults.monthNames,g=-1,k=-1,y=-1,m=-1,f=!1,v=function(t){var i=e.length>r+1&&e.charAt(r+1)===t;return i&&r++,i},x=function(t){var e=v(t),a="@"===t?14:"!"===t?20:"y"===t&&e?4:"o"===t?3:2,r=RegExp("^\\d{"+("y"===t?a:1)+","+a+"}"),o=i.substring(c).match(r);if(!o)throw"Missing number at position "+c;return c+=o[0].length,parseInt(o[0],10)},D=function(e,a,r){var o=-1,n=t.map(v(e)?r:a,function(t,e){return[[e,t]]}).sort(function(t,e){return-(t[1].length-e[1].length)});if(t.each(n,function(t,e){var a=e[1];return i.substr(c,a.length).toLowerCase()===a.toLowerCase()?(o=e[0],c+=a.length,!1):void 0}),-1!==o)return o+1;throw"Unknown name at position "+c},_=function(){if(i.charAt(c)!==e.charAt(r))throw"Unexpected literal at position "+c;c++};for(r=0;e.length>r;r++)if(f)"'"!==e.charAt(r)||v("'")?_():f=!1;else switch(e.charAt(r)){case"d":y=x("d");break;case"D":D("D",p,b);break;case"o":m=x("o");break;case"m":k=x("m");break;case"M":k=D("M",u,h);break;case"y":g=x("y");break;case"@":g=(d=new Date(x("@"))).getFullYear(),k=d.getMonth()+1,y=d.getDate();break;case"!":g=(d=new Date((x("!")-this._ticksTo1970)/1e4)).getFullYear(),k=d.getMonth()+1,y=d.getDate();break;case"'":v("'")?_():f=!0;break;default:_()}if(i.length>c&&(n=i.substr(c),!/^\s+/.test(n)))throw"Extra/unparsed characters found in date: "+n;if(-1===g?g=(new Date).getFullYear():100>g&&(g+=(new Date).getFullYear()-(new Date).getFullYear()%100+(l>=g?0:-100)),m>-1)for(k=1,y=m;!((o=this._getDaysInMonth(g,k-1))>=y);)k++,y-=o;if((d=this._daylightSavingAdjust(new Date(g,k-1,y))).getFullYear()!==g||d.getMonth()+1!==k||d.getDate()!==y)throw"Invalid date";return d},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:864e9*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925)),formatDate:function(t,e,i){if(!e)return"";var a,r=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,o=(i?i.dayNames:null)||this._defaults.dayNames,n=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,d=(i?i.monthNames:null)||this._defaults.monthNames,c=function(e){var i=t.length>a+1&&t.charAt(a+1)===e;return i&&a++,i},s=function(t,e,i){var a=""+e;if(c(t))for(;i>a.length;)a="0"+a;return a},l=function(t,e,i,a){return c(t)?a[e]:i[e]},p="",b=!1;if(e)for(a=0;t.length>a;a++)if(b)"'"!==t.charAt(a)||c("'")?p+=t.charAt(a):b=!1;else switch(t.charAt(a)){case"d":p+=s("d",e.getDate(),2);break;case"D":p+=l("D",e.getDay(),r,o);break;case"o":p+=s("o",Math.round((new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime()-new Date(e.getFullYear(),0,0).getTime())/864e5),3);break;case"m":p+=s("m",e.getMonth()+1,2);break;case"M":p+=l("M",e.getMonth(),n,d);break;case"y":p+=c("y")?e.getFullYear():(10>e.getFullYear()%100?"0":"")+e.getFullYear()%100;break;case"@":p+=e.getTime();break;case"!":p+=1e4*e.getTime()+this._ticksTo1970;break;case"'":c("'")?p+="'":b=!0;break;default:p+=t.charAt(a)}return p},_possibleChars:function(t){var e,i="",a=!1,r=function(i){var a=t.length>e+1&&t.charAt(e+1)===i;return a&&e++,a};for(e=0;t.length>e;e++)if(a)"'"!==t.charAt(e)||r("'")?i+=t.charAt(e):a=!1;else switch(t.charAt(e)){case"d":case"m":case"y":case"@":i+="0123456789";break;case"D":case"M":return null;case"'":r("'")?i+="'":a=!0;break;default:i+=t.charAt(e)}return i},_get:function(t,e){return void 0!==t.settings[e]?t.settings[e]:this._defaults[e]},_setDateFromField:function(t,e){if(t.input.val()!==t.lastVal){var i=this._get(t,"dateFormat"),a=t.lastVal=t.input?t.input.val():null,r=this._getDefaultDate(t),o=r,n=this._getFormatConfig(t);try{o=this.parseDate(i,a,n)||r}catch(t){a=e?"":a}t.selectedDay=o.getDate(),t.drawMonth=t.selectedMonth=o.getMonth(),t.drawYear=t.selectedYear=o.getFullYear(),t.currentDay=a?o.getDate():0,t.currentMonth=a?o.getMonth():0,t.currentYear=a?o.getFullYear():0,this._adjustInstDate(t)}},_getDefaultDate:function(t){return this._restrictMinMax(t,this._determineDate(t,this._get(t,"defaultDate"),new Date))},_determineDate:function(e,i,a){var r=null==i||""===i?a:"string"==typeof i?function(i){try{return t.tbtDatepicker.parseDate(t.tbtDatepicker._get(e,"dateFormat"),i,t.tbtDatepicker._getFormatConfig(e))}catch(t){}for(var a=(i.toLowerCase().match(/^c/)?t.tbtDatepicker._getDate(e):null)||new Date,r=a.getFullYear(),o=a.getMonth(),n=a.getDate(),d=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,c=d.exec(i);c;){switch(c[2]||"d"){case"d":case"D":n+=parseInt(c[1],10);break;case"w":case"W":n+=7*parseInt(c[1],10);break;case"m":case"M":o+=parseInt(c[1],10),n=Math.min(n,t.tbtDatepicker._getDaysInMonth(r,o));break;case"y":case"Y":r+=parseInt(c[1],10),n=Math.min(n,t.tbtDatepicker._getDaysInMonth(r,o))}c=d.exec(i)}return new Date(r,o,n)}(i):"number"==typeof i?isNaN(i)?a:function(t){var e=new Date;return e.setDate(e.getDate()+t),e}(i):new Date(i.getTime());return(r=r&&"Invalid Date"==""+r?a:r)&&(r.setHours(0),r.setMinutes(0),r.setSeconds(0),r.setMilliseconds(0)),this._daylightSavingAdjust(r)},_daylightSavingAdjust:function(t){return t?(t.setHours(t.getHours()>12?t.getHours()+2:0),t):null}
vendor: 6,721 bytes, line 1615
1615,_setDate:function(t,e,i){var a=!e,r=t.selectedMonth,o=t.selectedYear,n=this._restrictMinMax(t,this._determineDate(t,e,new Date));t.selectedDay=t.currentDay=n.getDate(),t.drawMonth=t.selectedMonth=t.currentMonth=n.getMonth(),t.drawYear=t.selectedYear=t.currentYear=n.getFullYear(),r===t.selectedMonth&&o===t.selectedYear||i||this._notifyChange(t),this._adjustInstDate(t),t.input&&t.input.val(a?"":this._formatDate(t))},_getDate:function(t){return!t.currentYear||t.input&&""===t.input.val()?null:this._daylightSavingAdjust(new Date(t.currentYear,t.currentMonth,t.currentDay))},_attachHandlers:function(e){var i=this._get(e,"stepMonths"),a="#"+e.id.replace(/\\\\/g,"\\");e.dpDiv.find("[data-handler]").map(function(){var e={prev:function(){t.tbtDatepicker._adjustDate(a,-i,"M")},next:function(){t.tbtDatepicker._adjustDate(a,+i,"M")},hide:function(){t.tbtDatepicker._hideDatepicker()},today:function(){t.tbtDatepicker._gotoToday(a)},selectDay:function(){return t.tbtDatepicker._selectDay(a,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return t.tbtDatepicker._selectMonthYear(a,this,"M"),!1},selectYear:function(){return t.tbtDatepicker._selectMonthYear(a,this,"Y"),!1}};t(this).on(this.getAttribute("data-event"),e[this.getAttribute("data-handler")])})},_generateHTML:function(t){var e,i,a,r,o,n,d,c,s,l,p,b,u,h,g,k,y,m,f,v,x,D,_,w,j,Q,C,M,T,F,A,I,q,N,R,S,V,Y,O,P=new Date,z=this._daylightSavingAdjust(new Date(P.getFullYear(),P.getMonth(),P.getDate())),K=this._get(t,"isRTL"),E=this._get(t,"showButtonPanel"),H=this._get(t,"hideIfNoPrevNext"),W=this._get(t,"navigationAsDateFormat"),U=this._getNumberOfMonths(t),B=this._get(t,"showCurrentAtPos"),L=this._get(t,"stepMonths"),J=1!==U[0]||1!==U[1],$=this._daylightSavingAdjust(t.currentDay?new Date(t.currentYear,t.currentMonth,t.currentDay):new Date(9999,9,9)),G=this._getMinMaxDate(t,"min"),X=this._getMinMaxDate(t,"max"),Z=t.drawMonth-B,tt=t.drawYear;if(0>Z&&(Z+=12,tt--),X)for(e=this._daylightSavingAdjust(new Date(X.getFullYear(),X.getMonth()-U[0]*U[1]+1,X.getDate())),e=G&&G>e?G:e;this._daylightSavingAdjust(new Date(tt,Z,1))>e;)0>--Z&&(Z=11,tt--);for(t.drawMonth=Z,t.drawYear=tt,i=this._get(t,"prevText"),i=W?this.formatDate(i,this._daylightSavingAdjust(new Date(tt,Z-L,1)),this._getFormatConfig(t)):i,a=this._canAdjustMonth(t,-1,tt,Z)?"<a class='tbt-datepicker-prev tbt-corner-all' data-handler='prev' data-event='click' title='"+i+"'><span class='tbt-icon tbt-icon-circle-triangle-"+(K?"e":"w")+"'>"+i+"</span></a>":H?"":"<a class='tbt-datepicker-prev tbt-corner-all tbt-state-disabled' title='"+i+"'><span class='tbt-icon tbt-icon-circle-triangle-"+(K?"e":"w")+"'>"+i+"</span></a>",r=this._get(t,"nextText"),r=W?this.formatDate(r,this._daylightSavingAdjust(new Date(tt,Z+L,1)),this._getFormatConfig(t)):r,o=this._canAdjustMonth(t,1,tt,Z)?"<a class='tbt-datepicker-next tbt-corner-all' data-handler='next' data-event='click' title='"+r+"'><span class='tbt-icon tbt-icon-circle-triangle-"+(K?"w":"e")+"'>"+r+"</span></a>":H?"":"<a class='tbt-datepicker-next tbt-corner-all tbt-state-disabled' title='"+r+"'><span class='tbt-icon tbt-icon-circle-triangle-"+(K?"w":"e")+"'>"+r+"</span></a>",n=this._get(t,"currentText"),d=this._get(t,"gotoCurrent")&&t.currentDay?$:z,n=W?this.formatDate(n,d,this._getFormatConfig(t)):n,c=t.inline?"":"<button type='button' class='tbt-datepicker-close tbt-state-default tbt-priority-primary tbt-corner-all' data-handler='hide' data-event='click'>"+this._get(t,"closeText")+"</button>",s=E?"<div class='tbt-datepicker-buttonpane tbt-widget-content'>"+(K?c:"")+(this._isInRange(t,d)?"<button type='button' class='tbt-datepicker-current tbt-state-default tbt-priority-secondary tbt-corner-all' data-handler='today' data-event='click'>"+n+"</button>":"")+(K?"":c)+"</div>":"",l=parseInt(this._get(t,"firstDay"),10),l=isNaN(l)?0:l,p=this._get(t,"showWeek"),b=this._get(t,"dayNames"),u=this._get(t,"dayNamesMin"),h=this._get(t,"monthNames"),g=this._get(t,"monthNamesShort"),k=this._get(t,"beforeShowDay"),y=this._get(t,"showOtherMonths"),m=this._get(t,"selectOtherMonths"),f=this._getDefaultDate(t),v="",D=0;U[0]>D;D++){for(_="",this.maxRows=4,w=0;U[1]>w;w++){if(j=this._daylightSavingAdjust(new Date(tt,Z,t.selectedDay)),Q=" tbt-corner-all",C="",J){if(C+="<div class='tbt-datepicker-group",U[1]>1)switch(w){case 0:C+=" tbt-datepicker-group-first",Q=" tbt-corner-"+(K?"right":"left");break;case U[1]-1:C+=" tbt-datepicker-group-last",Q=" tbt-corner-"+(K?"left":"right");break;default:C+=" tbt-datepicker-group-middle",Q=""}C+="'>"}for(C+="<div class='tbt-datepicker-header tbt-widget-header tbt-helper-clearfix"+Q+"'>"+(/all|left/.test(Q)&&0===D?K?o:a:"")+(/all|right/.test(Q)&&0===D?K?a:o:"")+this._generateMonthYearHeader(t,Z,tt,G,X,D>0||w>0,h,g)+"</div><table class='tbt-datepicker-calendar'><thead><tr>",M=p?"<th class='tbt-datepicker-week-col'>"+this._get(t,"weekHeader")+"</th>":"",x=0;7>x;x++)M+="<th scope='col'"+((x+l+6)%7>=5?" class='tbt-datepicker-week-end'":"")+"><span title='"+b[T=(x+l)%7]+"'>"+u[T]+"</span></th>";for(C+=M+"</tr></thead><tbody>",F=this._getDaysInMonth(tt,Z),tt===t.selectedYear&&Z===t.selectedMonth&&(t.selectedDay=Math.min(t.selectedDay,F)),A=(this._getFirstDayOfMonth(tt,Z)-l+7)%7,I=Math.ceil((A+F)/7),q=J&&this.maxRows>I?this.maxRows:I,this.maxRows=q,N=this._daylightSavingAdjust(new Date(tt,Z,1-A)),R=0;q>R;R++){for(C+="<tr>",S=p?"<td class='tbt-datepicker-week-col'>"+this._get(t,"calculateWeek")(N)+"</td>":"",x=0;7>x;x++)V=k?k.apply(t.input?t.input[0]:null,[N]):[!0,""],O=(Y=N.getMonth()!==Z)&&!m||!V[0]||G&&G>N||X&&N>X,S+="<td class='"+((x+l+6)%7>=5?" tbt-datepicker-week-end":"")+(Y?" tbt-datepicker-other-month":"")+(N.getTime()===j.getTime()&&Z===t.selectedMonth&&t._keyEvent||f.getTime()===N.getTime()&&f.getTime()===j.getTime()?" "+this._dayOverClass:"")+(O?" "+this._unselectableClass+" tbt-state-disabled":"")+(Y&&!y?"":" "+V[1]+(N.getTime()===$.getTime()?" "+this._currentClass:"")+(N.getTime()===z.getTime()?" tbt-datepicker-today":""))+"'"+(Y&&!y||!V[2]?"":" title='"+V[2].replace(/'/g,"&#39;")+"'")+(O?"":" data-handler='selectDay' data-event='click' data-month='"+N.getMonth()+"' data-year='"+N.getFullYear()+"'")+">"+(Y&&!y?"&#xa0;":O?"<span class='tbt-state-default'>"+N.getDate()+"</span>":"<a class='tbt-state-default"+(N.getTime()===z.getTime()?" tbt-state-highlight":"")+(N.getTime()===$.getTime()?" tbt-state-active":"")+(Y?" tbt-priority-secondary":"")+"' href='#'>"+N.getDate()+"</a>")+"</td>",N.setDate(N.getDate()+1),N=this._daylightSavingAdjust(N);C+=S+"</tr>"}++Z>11&&(Z=0,tt++),_+=C+="</tbody></table>"+(J?"</div>"+(U[0]>0&&w===U[1]-1?"<div class='tbt-datepicker-row-break'></div>":""):"")}v+=_}return v+=s,t._keyEvent=!1,v}
vendor: 4,685 bytes, lines 1615-1616
1615,_generateMonthYearHeader:function(t,e,i,a,r,o,n,d){var c,s,l,p,b,u,h,g,k=this._get(t,"changeMonth"),y=this._get(t,"changeYear"),m=this._get(t,"showMonthAfterYear"),f="<div class='tbt-datepicker-title'>",v="";if(o||!k)v+="<span class='tbt-datepicker-month'>"+n[e]+"</span>";else{for(c=a&&a.getFullYear()===i,s=r&&r.getFullYear()===i,v+="<select class='tbt-datepicker-month' data-handler='selectMonth' data-event='change'>",l=0;12>l;l++)(!c||l>=a.getMonth())&&(!s||r.getMonth()>=l)&&(v+="<option value='"+l+"'"+(l===e?" selected='selected'":"")+">"+d[l]+"</option>");v+="</select>"}if(m||(f+=v+(!o&&k&&y?"":"&#xa0;")),!t.yearshtml)if(t.yearshtml="",o||!y)f+="<span class='tbt-datepicker-year'>"+i+"</span>";else{for(p=this._get(t,"yearRange").split(":"),b=(new Date).getFullYear(),h=(u=function(t){var e=t.match(/c[+\-].*/)?i+parseInt(t.substring(1),10):t.match(/[+\-].*/)?b+parseInt(t,10):parseInt(t,10);return isNaN(e)?b:e})(p[0]),g=Math.max(h,u(p[1]||"")),h=a?Math.max(h,a.getFullYear()):h,g=r?Math.min(g,r.getFullYear()):g,t.yearshtml+="<select class='tbt-datepicker-year' data-handler='selectYear' data-event='change'>";g>=h;h++)t.yearshtml+="<option value='"+h+"'"+(h===i?" selected='selected'":"")+">"+h+"</option>";t.yearshtml+="</select>",f+=t.yearshtml,t.yearshtml=null}return f+=this._get(t,"yearSuffix"),m&&(f+=(!o&&k&&y?"":"&#xa0;")+v),f+"</div>"},_adjustInstDate:function(t,e,i){var a=t.selectedYear+("Y"===i?e:0),r=t.selectedMonth+("M"===i?e:0),o=Math.min(t.selectedDay,this._getDaysInMonth(a,r))+("D"===i?e:0),n=this._restrictMinMax(t,this._daylightSavingAdjust(new Date(a,r,o)));t.selectedDay=n.getDate(),t.drawMonth=t.selectedMonth=n.getMonth(),t.drawYear=t.selectedYear=n.getFullYear(),("M"===i||"Y"===i)&&this._notifyChange(t)},_restrictMinMax:function(t,e){var i=this._getMinMaxDate(t,"min"),a=this._getMinMaxDate(t,"max"),r=i&&i>e?i:e;return a&&r>a?a:r},_notifyChange:function(t){var e=this._get(t,"onChangeMonthYear");e&&e.apply(t.input?t.input[0]:null,[t.selectedYear,t.selectedMonth+1,t])},_getNumberOfMonths:function(t){var e=this._get(t,"numberOfMonths");return null==e?[1,1]:"number"==typeof e?[1,e]:e},_getMinMaxDate:function(t,e){return this._determineDate(t,this._get(t,e+"Date"),null)},_getDaysInMonth:function(t,e){return 32-this._daylightSavingAdjust(new Date(t,e,32)).getDate()},_getFirstDayOfMonth:function(t,e){return new Date(t,e,1).getDay()},_canAdjustMonth:function(t,e,i,a){var r=this._getNumberOfMonths(t),o=this._daylightSavingAdjust(new Date(i,a+(0>e?e:r[0]*r[1]),1));return 0>e&&o.setDate(this._getDaysInMonth(o.getFullYear(),o.getMonth())),this._isInRange(t,o)},_isInRange:function(t,e){var i,a,r=this._getMinMaxDate(t,"min"),o=this._getMinMaxDate(t,"max"),n=null,d=null,c=this._get(t,"yearRange");return c&&(i=c.split(":"),a=(new Date).getFullYear(),n=parseInt(i[0],10),d=parseInt(i[1],10),i[0].match(/[+\-].*/)&&(n+=a),i[1].match(/[+\-].*/)&&(d+=a)),(!r||e.getTime()>=r.getTime())&&(!o||e.getTime()<=o.getTime())&&(!n||e.getFullYear()>=n)&&(!d||d>=e.getFullYear())},_getFormatConfig:function(t){var e=this._get(t,"shortYearCutoff");return{shortYearCutoff:e="string"!=typeof e?e:(new Date).getFullYear()%100+parseInt(e,10),dayNamesShort:this._get(t,"dayNamesShort"),dayNames:this._get(t,"dayNames"),monthNamesShort:this._get(t,"monthNamesShort"),monthNames:this._get(t,"monthNames")}},_formatDate:function(t,e,i,a){e||(t.currentDay=t.selectedDay,t.currentMonth=t.selectedMonth,t.currentYear=t.selectedYear);var r=e?"object"==typeof e?e:this._daylightSavingAdjust(new Date(a,i,e)):this._daylightSavingAdjust(new Date(t.currentYear,t.currentMonth,t.currentDay));return this.formatDate(this._get(t,"dateFormat"),r,this._getFormatConfig(t))}}),t.fn.tbtDatepicker=function(e){if(!this.length)return this;t.tbtDatepicker.initialized||(t(document).on("mousedown",t.tbtDatepicker._checkExternalClick),t.tbtDatepicker.initialized=!0),0===t("#"+t.tbtDatepicker._mainDivId).length&&t("body").append(t.tbtDatepicker.dpDiv);var i=Array.prototype.slice.call(arguments,1);return"string"!=typeof e||"isDisabled"!==e&&"getDate"!==e&&"widget"!==e?"option"===e&&2===arguments.length&&"string"==typeof arguments[1]?t.tbtDatepicker["_"+e+"Datepicker"].apply(t.tbtDatepicker,[this[0]].concat(i)):this.each(function(){"string"==typeof e?t.tbtDatepicker["_"+e+"Datepicker"].apply(t.tbtDatepicker,[this].concat(i)):t.tbtDatepicker._attachDatepicker(this,e)}):t.tbtDatepicker["_"+e+"Datepicker"].apply(t.tbtDatepicker,[this[0]].concat(i))},t.tbtDatepicker=new e,t.tbtDatepicker.initialized=!1,t.tbtDatepicker.uuid=(new Date).getTime(),t.tbtDatepicker.version="1.12.1",t.tbtDatepicker},"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}
1616</script>
1616
1617
1618
1619
1620<script>
1621    window.mwDeliveryDateObjects = {
1622        template: "cart",
1623        cart: {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"CAD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0},
1624        cartTags: [],
1625        shop: {
1626            domain: "joconde-vancouver.myshopify.com",
1627            money_format : "${{amount}}",
1628            money_with_currency_format : "${{amount}} CAD"
1629        }
1630    };
1631</script>
1631<!-- "snippets/mw_PO_objects.liquid" was not rendered, the associated app was uninstalled -->
1631<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
1631
1632</body>
1633</html>

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.