1<!doctype html> 2 3<html class="no-js" lang="ro"> 4 5<head> 6
6<script src="//www.bman.ro/cdn/shop/files/pandectes-rules.js?v=13235938969155692075"></script>
6 7 8 9 <title> 10 CoÈul de cumparaturi 11</title> 12 13 14
14<script> 15window.KiwiSizing = window.KiwiSizing === undefined ? {} : window.KiwiSizing; 16KiwiSizing.shop = "bman-romania.myshopify.com"; 17 18 19</script>
19 20 21 <meta charset="utf-8"> 22 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 23 <meta name="facebook-domain-verification" content="nc606klxofuukcepqkgnwajnksqblt" /> 24 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> 25 <meta name="theme-color" content="#000000"> 26 27
27<script> 28 (function(f, a, s, h, i, o, n) { 29 f[i] = f[i] || function() { 30 (f[i].q = f[i].q || []).push(arguments); 31 }; 32 f[i].q = f[i].q || []; 33 o = a.createElement(s); 34 n = a.getElementsByTagName(s)[0]; 35 o.async = 1; 36 o.src = h; 37 o.onload = function() { 38 if (f[i].q) { 39 while(f[i].q.length) { 40 f[i].apply(null, f[i].q.shift()); 41 } 42 } 43 }; 44 n.parentNode.insertBefore(o,n); 45 })(window, document, 'script', 'https://storage.googleapis.com/tsjavascripthosting/tstrack.js', 'tsTracker'); 46 47 48 49 var pxlPublicKey = '25146y45g54g54g4sdg4g4'; 50 var script = document.createElement("script"); 51 script.src = "https://live.productxl.com/dev.js?v=123945"; // Change this URL to your desired JavaScript file 52 script.async = true; // This makes the script load asynchronously 53 document.head.appendChild(script); 54 55 56 </script>
56 57 58 59 60 61 <link rel="canonical" href="https://www.bman.ro/cart" /> 62 63 64
64<script src="https://code.jquery.com/jquery-3.3.1.min.js" 65 integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
65 66 <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.3/css/all.css" 67 integrity="sha384-UHRtZLI+pbxtHCWp1t77Bi1L4ZtiqrqD80Kn4Z8NTSRyMA2Fd33n5dQ8lWUE00s/" crossorigin="anonymous"><link rel="icon" href="//www.bman.ro/cdn/shop/t/54/assets/favicon-32x32_32x.png?v=44653970063144489271706799379" sizes="32x32"> 68 <link rel="icon" href="//www.bman.ro/cdn/shop/t/54/assets/favicon-192x192_192x.png?v=127939567748231032201706799378"sizes="192x192"> 69 <link rel="apple-touch-icon-precomposed" href="//www.bman.ro/cdn/shop/t/54/assets/favicon-180x180_180x.png?v=148858936324164617511706799378"> 70 <meta name="msapplication-TileImage" content="//www.bman.ro/cdn/shop/t/54/assets/favicon-512x512_512x.png?v=153902865990939651711706799380"> 71 72 <!-- /snippets/social-meta-tags.liquid --> 73 74 75 76 77<meta property="og:site_name" content="BMan.ro"> 78<meta property="og:url" content="https://www.bman.ro/cart"> 79<meta property="og:title" content="CoÈul de cumparaturi"> 80<meta property="og:type" content="website"> 81<meta property="og:description" content="BMan.ro este un magazin online cu haine pentru barbati si multe alte accesorii vestimentare. BMan.ro oferta TRANSPORT GRATUIT la orice comanda plasata pe site, indiferent de valoarea acesteia."> 82 83 84 85 86 87<meta name="twitter:card" content="summary_large_image"> 88<meta name="twitter:title" content="CoÈul de cumparaturi"> 89<meta name="twitter:description" content="BMan.ro este un magazin online cu haine pentru barbati si multe alte accesorii vestimentare. BMan.ro oferta TRANSPORT GRATUIT la orice comanda plasata pe site, indiferent de valoarea acesteia."> 90 91 92 <link href="//www.bman.ro/cdn/shop/t/54/assets/main.css?v=58076665084109040871762786949" rel="stylesheet" type="text/css" media="all" /> 93 <link href="//www.bman.ro/cdn/shop/t/54/assets/updates.css?v=99299291436197005271771611243" rel="stylesheet" type="text/css" media="all" /> 94 95 96 97 98 99
99<script> 100 // var OneSignal = window.OneSignal || []; 101 // OneSignal.push(function () { 102 // OneSignal.init({ 103 // appId: "c198c64f-4d73-4bed-9476-d8a1d1feb3b0", 104 // }); 105 // }); 106 </script>
106 107 108 <style> 109 .sizing-chart-modal-link { 110 line-height: 30px !important; 111 } 112 </style> 113 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@splidejs/[email protected]/dist/css/splide.min.css" /> 114 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@splidejs/[email protected]/dist/css/splide-core.min.css" /> 115 116
116<script src="//www.bman.ro/cdn/shop/t/54/assets/splide.min.js?v=48560608564738227651663765492"></script>
116 117 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@splidejs/[email protected]/dist/css/themes/splide-sea-green.min.css"> 118 119
119<script> 120 var theme = { 121 strings: { 122 addToCart: "Translation missing: ro.products.product.add_to_cart", 123 soldOut: "Translation missing: ro.products.product.sold_out", 124 unavailable: "Translation missing: ro.products.product.unavailable", 125 regularPrice: "Translation missing: ro.products.product.regular_price", 126 sale: "Translation missing: ro.products.product.on_sale", 127 showMore: "Translation missing: ro.general.filters.show_more", 128 showLess: "Translation missing: ro.general.filters.show_less", 129 addressError: "Translation missing: ro.sections.map.address_error", 130 addressNoResults: "Translation missing: ro.sections.map.address_no_results", 131 addressQueryLimit: "Translation missing: ro.sections.map.address_query_limit_html", 132 authError: "Translation missing: ro.sections.map.auth_error_html", 133 newWindow: "Translation missing: ro.general.accessibility.link_messages.new_window", 134 external: "Translation missing: ro.general.accessibility.link_messages.external", 135 newWindowExternal: "Translation missing: ro.general.accessibility.link_messages.new_window_and_external" 136 }, 137 moneyFormat: "{{amount_no_decimals}} lei" 138 } 139 140 document.documentElement.className = document.documentElement.className.replace('no-js', 'js'); 141 </script>
141 142 143 144 145 146 147 148 149
149<script src="//www.bman.ro/cdn/shop/t/54/assets/app.js?v=159486852387192935391706875684" async="async"></script>
149 150 151 <meta name="google-site-verification" content="S5I7kf_FXbLYIFB-2fBkqfXgzRwOEmTxKeP1aPCf-3o" /> 152 153
153<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
153<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/12633571392/digital_wallets/dialog"> 154<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
154<script async="async" src="/checkouts/internal/preloads.js?locale=ro-RO&default_configuration_id=348848457"></script>
154 155<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
156<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=ro-RO&default_configuration_id=348848457&shop_id=12633571392" crossorigin="anonymous"></script>
vendor: 1 bytes, line 156
156
157<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":12633571392,"countryCode":"RO","currencyCode":"RON","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/12633571392","merchantName":"BMan.ro","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","maestro"],"total":{"type":"pending","label":"BMan.ro","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 157
157
158<script id="shopify-features" type="application/json">{"accessToken":"272d8387fa6ac7b535ae6a49e24638bb","betas":["rich-media-storefront-analytics"],"domain":"www.bman.ro","predictiveSearch":true,"shopId":12633571392,"locale":"ro"}</script>
vendor: 1 bytes, line 158
158
159<script>var Shopify = Shopify || {}; 160Shopify.shop = "bman-romania.myshopify.com"; 161Shopify.locale = "ro"; 162Shopify.currency = {"active":"RON","rate":"1.0"}; 163Shopify.country = "RO"; 164Shopify.theme = {"name":"bman-2.0\/master","id":131581116575,"schema_name":"BMAN Shopify","schema_version":"1.0.0","theme_store_id":null,"role":"main"}; 165Shopify.theme.handle = "null"; 166Shopify.theme.style = {"id":null,"handle":null}; 167Shopify.cdnHost = "www.bman.ro/cdn"; 168Shopify.routes = Shopify.routes || {}; 169Shopify.routes.root = "/"; 170Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 171Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 172Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 173Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 173
173
174<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 174
174
175<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 175
175
176<script> 177 window.ShopifyPay = window.ShopifyPay || {}; 178 window.ShopifyPay.apiHost = "shop.app\/pay"; 179 window.ShopifyPay.redirectState = null; 180</script>
vendor: 1 bytes, line 180
180
181<script> 182 window.Shopify = window.Shopify || {}; 183 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 184 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 185 window.Shopify.SignInWithShop.eligible = true; 186</script>
vendor: 1 bytes, line 186
186
187<script id="shop-js-analytics" type="application/json">{"pageType":"cart"}</script>
vendor: 1 bytes, line 187
187
188<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.ro-RO.esm.js"></script>
vendor: 1 bytes, line 188
188
189<script type="module"> 190 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.ro-RO.esm.js"); 191 192 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 193 194</script>
vendor: 1 bytes, line 194
194
195<script> 196 window.Shopify = window.Shopify || {}; 197 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 198 window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.ro-RO.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.ro-RO.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.ro-RO.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.ro-RO.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.ro-RO.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.ro-RO.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.ro-RO.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.ro-RO.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.ro-RO.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.ro-RO.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.ro-RO.esm.js"],"listener":["modules/v2/loader.listener.ro-RO.esm.js"],"pay-button":["modules/v2/loader.pay-button.ro-RO.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.ro-RO.esm.js"],"shop-button":["modules/v2/loader.shop-button.ro-RO.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.ro-RO.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.ro-RO.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.ro-RO.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.ro-RO.esm.js"],"shop-login":["modules/v2/loader.shop-login.ro-RO.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.ro-RO.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.ro-RO.esm.js"]}; 199</script>
vendor: 1 bytes, line 199
199
200<script>(function() { 201 var isLoaded = false; 202 function asyncLoad() { 203 if (isLoaded) return; 204 isLoaded = true; 205 var urls = ["\/\/shopify.privy.com\/widget.js?shop=bman-romania.myshopify.com","https:\/\/instafeed.nfcube.com\/cdn\/ab5a013da1d6b251ecd93eae1b1b1aa5.js?shop=bman-romania.myshopify.com","\/\/swymv3pro-01.azureedge.net\/code\/swym_fb_pixel.js?shop=bman-romania.myshopify.com","https:\/\/d9fvwtvqz2fm1.cloudfront.net\/shop\/js\/discount-on-cart-pro.min.js?shop=bman-romania.myshopify.com","https:\/\/gtm.gropulse.com\/get_script?shop=bman-romania.myshopify.com","https:\/\/cdn.hextom.com\/js\/eventpromotionbar.js?shop=bman-romania.myshopify.com","https:\/\/production.parcely.app\/cartV2.js?shop=bman-romania.myshopify.com","https:\/\/app.kiwisizing.com\/web\/js\/dist\/kiwiSizing\/plugin\/SizingPlugin.prod.js?v=340\u0026shop=bman-romania.myshopify.com"]; 206 for (var i = 0; i < urls.length; i++) { 207 var s = document.createElement('script'); 208 s.type = 'text/javascript'; 209 s.async = true; 210 s.src = urls[i]; 211 var x = document.getElementsByTagName('script')[0]; 212 x.parentNode.insertBefore(s, x); 213 } 214 }; 215 if(window.attachEvent) { 216 window.attachEvent('onload', asyncLoad); 217 } else { 218 window.addEventListener('load', asyncLoad, false); 219 } 220})();</script>
vendor: 1 bytes, line 220
220
221<script id="__st">var __st={"a":12633571392,"offset":10800,"reqid":"66e87a31-d5d9-4c43-b174-11d6d243ea5d-1791406525","pageurl":"www.bman.ro\/cart","u":"8a9a15e175b7","p":"cart"};</script>
vendor: 1 bytes, line 221
221
222<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 222
222
223<script id="form-persister">!function(){'use strict';const t='contact',e='new_comment',n=[[t,t],['blogs',e],['comments',e],[t,'customer']],o='password',r='form_key',c=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',o],s=()=>{try{return window.sessionStorage}catch{return}},i='__shopify_v',u=t=>t.elements[r],a=function(){const t=[...n].map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(',');var e;return e=t,()=>e?[...document.querySelectorAll(e)].map((t=>t.form)):[]}();function m(t){const e=u(t);a().includes(t)&&(!e||!e.value)&&function(t){try{if(!s())return;!function(t){const e=s();if(!e)return;const n=u(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){u(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:r})),t.elements[r].value=e}(t,e),function(t,e){const n=s();if(!n)return;const r=[...t.querySelectorAll(`input[type='${o}']`)].map((({name:t})=>t)),u=[...c,...r],a={};for(const[o,c]of new FormData(t).entries())u.includes(o)||(a[o]=c);n.setItem(e,JSON.stringify({[i]:1,action:t.action,data:a}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(t)}const f=t=>{if('true'===t.dataset.persistBound)return;const e=function(t,e){const n=function(t){return'function'==typeof t.submit?t.submit:HTMLFormElement.prototype.submit}(t).bind(t);return function(){let t;return()=>{t||(t=!0,(()=>{try{e(),n()}catch(t){(t=>{console.error('form submit failed',t)})(t)}})(),setTimeout((()=>t=!1),250))}}()}(t,(()=>{m(t)}));!function(t,e){if('function'==typeof t.submit&&'function'==typeof e)try{t.submit=e}catch{}}(t,e),t.addEventListener('submit',(t=>{t.preventDefault(),e()})),t.dataset.persistBound='true'};!function(){function t(t){const e=(t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form})(t);e&&m(e)}document.addEventListener('submit',t),document.addEventListener('DOMContentLoaded',(()=>{const e=a();for(const t of e)f(t);var n;n=document.body,new window.MutationObserver((t=>{for(const e of t)if('childList'===e.type&&e.addedNodes.length)for(const t of e.addedNodes)1===t.nodeType&&'FORM'===t.tagName&&a().includes(t)&&f(t)})).observe(n,{childList:!0,subtree:!0,attributes:!1}),document.removeEventListener('submit',t)}))}()}();</script>
vendor: 1 bytes, line 223
223
224<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.bman.ro/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 224
224
225<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 = "//www.bman.ro/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>
225<script crossorigin="anonymous" defer="defer" src="//www.bman.ro/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-f0e26bdf.js?v=20250812"></script>
vendor: 1 bytes, line 225
225
226<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 226
226
227<script> 228 window.Shopify = window.Shopify || {}; 229 window.Shopify.MCP = window.Shopify.MCP || {}; 230 window.Shopify.MCP.enabled = true; 231 window.Shopify.MCP.shop = "bman-romania.myshopify.com"; 232 window.Shopify.MCP.mcpEndpoint = "https:\/\/www.bman.ro\/api\/mcp"; 233 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?\"\nSet policy_types to also get the store's written policies (full text and URL).\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."},"policy_types":{"type":"array","items":{"type":"string","enum":["refund","shipping","privacy","terms_of_service","terms_of_sale","subscription","legal_notice","contact"]},"description":"Policy kinds to fetch, chosen from the user's question â e.g. [\"refund\"] for returns\/exchanges\/damaged items, [\"contact\"] for phone\/hours\/address. Include every kind the question touches. Omit it to get only FAQ answers."}},"required":["query"]}}]; 234</script>
vendor: 1 bytes, line 234
234
235<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("\/\/www.bman.ro\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 236</script>
vendor: 1 bytes, line 236
236
237<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://www.bman.ro/cdn/shopifycloud/portable-wallets/latest/portable-wallets.ro.js",t.type="module",document.head.appendChild(t)}}; 238</script>
vendor: 1 bytes, line 238
238
239<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 240 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); 241</script>
vendor: 1 bytes, line 241
241
242<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})}})); 243</script>
243 244<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.bman.ro/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 245<style id="shopify-accelerated-checkout-cart"> 246 #shopify-buyer-consent { 247 margin-top: 1em; 248 display: inline-block; 249 width: 100%; 250} 251 252#shopify-buyer-consent.hidden { 253 display: none; 254} 255 256#shopify-subscription-policy-button { 257 background: none; 258 border: none; 259 padding: 0; 260 text-decoration: underline; 261 font-size: inherit; 262 cursor: pointer; 263} 264 265#shopify-subscription-policy-button::before { 266 box-shadow: none; 267} 268 269 </style> 270
271<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
vendor: 1 bytes, line 271
271
272<script>window.BOLD = window.BOLD || {}; 273 window.BOLD.common = window.BOLD.common || {}; 274 window.BOLD.common.Shopify = window.BOLD.common.Shopify || {}; 275 window.BOLD.common.Shopify.shop = { 276 domain: 'www.bman.ro', 277 permanent_domain: 'bman-romania.myshopify.com', 278 url: 'https://www.bman.ro', 279 secure_url: 'https://www.bman.ro', 280 money_format: "{{amount_no_decimals}} lei", 281 currency: "RON" 282 }; 283 window.BOLD.common.Shopify.customer = { 284 id: null, 285 tags: null, 286 }; 287 window.BOLD.common.Shopify.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":"RON","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}; 288 window.BOLD.common.template = 'cart';window.BOLD.common.Shopify.formatMoney = function(money, format) { 289 function n(t, e) { 290 return "undefined" == typeof t ? e : t 291 } 292 function r(t, e, r, i) { 293 if (e = n(e, 2), 294 r = n(r, ","), 295 i = n(i, "."), 296 isNaN(t) || null == t) 297 return 0; 298 t = (t / 100).toFixed(e); 299 var o = t.split(".") 300 , a = o[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1" + r) 301 , s = o[1] ? i + o[1] : ""; 302 return a + s 303 } 304 "string" == typeof money && (money = money.replace(".", "")); 305 var i = "" 306 , o = /\{\{\s*(\w+)\s*\}\}/ 307 , a = format || window.BOLD.common.Shopify.shop.money_format || window.Shopify.money_format || "$ {{ amount }}"; 308 switch (a.match(o)[1]) { 309 case "amount": 310 i = r(money, 2, ",", "."); 311 break; 312 case "amount_no_decimals": 313 i = r(money, 0, ",", "."); 314 break; 315 case "amount_with_comma_separator": 316 i = r(money, 2, ".", ","); 317 break; 318 case "amount_no_decimals_with_comma_separator": 319 i = r(money, 0, ".", ","); 320 break; 321 case "amount_with_space_separator": 322 i = r(money, 2, " ", ","); 323 break; 324 case "amount_no_decimals_with_space_separator": 325 i = r(money, 0, " ", ","); 326 break; 327 case "amount_with_apostrophe_separator": 328 i = r(money, 2, "'", "."); 329 break; 330 } 331 return a.replace(o, i); 332 }; 333 window.BOLD.common.Shopify.saveProduct = function (handle, product, productData) { 334 if (typeof handle === 'string' && typeof window.BOLD.common.Shopify.products[handle] === 'undefined') { 335 if (typeof product === 'number') { 336 window.BOLD.common.Shopify.handles[product] = handle; 337 product = { id: product, product: productData }; 338 } 339 window.BOLD.common.Shopify.products[handle] = product; 340 } 341 }; 342 window.BOLD.common.Shopify.saveVariant = function (variant_id, variant) { 343 if (typeof variant_id === 'number' && typeof window.BOLD.common.Shopify.variants[variant_id] === 'undefined') { 344 window.BOLD.common.Shopify.variants[variant_id] = variant; 345 } 346 };window.BOLD.common.Shopify.products = window.BOLD.common.Shopify.products || {}; 347 window.BOLD.common.Shopify.variants = window.BOLD.common.Shopify.variants || {}; 348 window.BOLD.common.Shopify.handles = window.BOLD.common.Shopify.handles || {};window.BOLD.common.Shopify.saveProduct(null, null, null);window.BOLD.apps_installed = {"Customer Pricing":3,"Product Discount":1} || {};window.BOLD.common.Shopify.metafields = window.BOLD.common.Shopify.metafields || {};window.BOLD.common.Shopify.metafields["bold_rp"] = {};window.BOLD.common.Shopify.metafields["bold_csp_defaults"] = {};</script>
348<link href="//www.bman.ro/cdn/shop/t/54/assets/bold-upsell.css?v=51915886505602322711663765484" rel="stylesheet" type="text/css" media="all" /> 349<link href="//www.bman.ro/cdn/shop/t/54/assets/bold-upsell-custom.css?v=150135899998303055901663765488" rel="stylesheet" type="text/css" media="all" /><div id="shopify-section-filter-menu-settings" class="shopify-section"><style type="text/css"> 350/* Filter Menu Color and Image Section CSS */</style> 351<link href="//www.bman.ro/cdn/shop/t/54/assets/filter-menu.scss.css?v=158939843395549808861696326335" rel="stylesheet" type="text/css" media="all" />
352<script src="//www.bman.ro/cdn/shop/t/54/assets/filter-menu.js?v=122998071043822742731663765519" type="text/javascript"></script>
352 353 354 355 356 357 358</div> 359
359<script> 360 /** 361 */ 362 Shopify.AjaxifyCart = (function ($) { 363 364 365 var _config = { 366 367 // What you might want to change 368 addToCartBtnLabel: 'AdaugÄ Ã®n coÈ', 369 addedToCartBtnLabel: 'MulÈumim!', 370 addingToCartBtnLabel: 'Se adaugÄ...', 371 soldOutBtnLabel: 'Sold Out', 372 howLongTillBtnReturnsToNormal: 5000, // in milliseconds. 373 cartCountSelector: '.cart-count, #cart-count a:first, #gocart p a, #cart .checkout em, .item-count', 374 cartTotalSelector: '.main-header__cart__subtotal p span', 375 // 'aboveForm' for top of add to cart form, 376 // 'belowForm' for below the add to cart form, and 377 // 'nextButton' for next to add to cart button. 378 feedbackPosition: 'nextButton', 379 380 // What you will never need to change 381 addToCartBtnSelector: '[type="submit"]', 382 addToCartFormSelector: 'form[action="/cart/add"]', 383 shopifyAjaxAddURL: '/cart/add.js', 384 shopifyAjaxCartURL: '/cart.js' 385 }; 386 387 // We need some feedback when adding an item to the cart. 388 // Here it is. 389 var _showFeedback = function (success, html, $addToCartForm) { 390 $('.ajaxified-cart-feedback').remove(); 391 var feedback = '<p class="ajaxified-cart-feedback ' + success + '">' + html + '</p>'; 392 switch (_config.feedbackPosition) { 393 case 'aboveForm': 394 $addToCartForm.before(feedback); 395 break; 396 case 'belowForm': 397 $addToCartForm.after(feedback); 398 break; 399 case 'nextButton': 400 default: 401 $addToCartForm.find(_config.addToCartBtnSelector).after(feedback); 402 break; 403 } 404 // If you use animate.css 405 // $('.ajaxified-cart-feedback').addClass('animated bounceInDown'); 406 $('.ajaxified-cart-feedback').slideDown(); 407 }; 408 var _setText = function ($button, label) { 409 if ($button.children().length) { 410 $button.children().each(function () { 411 if ($.trim($(this).text()) !== '') { 412 $(this).text(label); 413 } 414 }); 415 } 416 else { 417 $button.val(label).text(label); 418 } 419 }; 420 var _init = function () { 421 $(document).ready(function () { 422 $(_config.addToCartFormSelector).submit(function (e) { 423 e.preventDefault(); 424 var $addToCartForm = $(this); 425 var $addToCartBtn = $addToCartForm.find(_config.addToCartBtnSelector); 426 427 // If a size swatch is present, require an explicit selection 428 var hasSizeSwatch = $('#productSizeSelector').length > 0; 429 var hasCheckedSize = $addToCartForm.find('#productSizeSelector input[type="radio"][name^="option-"]:checked').length > 0; 430 if (hasSizeSwatch && !hasCheckedSize) { 431 _showFeedback('error', '<i class="fas fa-exclamation-triangle"></i> SelecteazÄ mai întâi o mÄrime!', $addToCartForm); 432 return false; 433 } 434 435 _setText($addToCartBtn, _config.addingToCartBtnLabel); 436 $addToCartBtn.addClass('disabled').prop('disabled', true); 437 438 $.ajax({ 439 url: _config.shopifyAjaxAddURL, 440 dataType: 'json', 441 type: 'post', 442 data: $addToCartForm.serialize(), 443 success: function (itemData) { 444 // Re-enable add to cart button. 445 $addToCartBtn.addClass('inverted'); 446 _setText($addToCartBtn, _config.addedToCartBtnLabel); 447 _showFeedback('success', '<i class="fa fa-check"></i> Produsul a fost adÄugat în coÈ! <a href="/cart">Vezi coÈul de cumpÄrÄturi</a>.', $addToCartForm); 448 window.setTimeout(function () { 449 $addToCartBtn.prop('disabled', false).removeClass('disabled').removeClass('inverted'); 450 451 _setText($addToCartBtn, _config.addToCartBtnLabel); 452 }, _config.howLongTillBtnReturnsToNormal); 453 454 // if ($('input#pachet_cadou').is(':checked')) { 455 // $.post('/cart/add.js', { 456 // quantity: 1, 457 // id: 37190400573599, 458 // }); 459 // } 460 461 462 463 // Update cart count and show cart link. 464 $.getJSON(_config.shopifyAjaxCartURL, function (cart) { 465 466 if (_config.cartCountSelector && $(_config.cartCountSelector).length) { 467 var value = $(_config.cartCountSelector).html() || '0'; 468 $(_config.cartCountSelector).html(value.replace(/[0-9]+/, cart.item_count)).removeClass('hidden-count'); 469 $('.main-header__cart__dropdown').addClass('hoverClassCart'); 470 } 471 472 // Update card 473 $.get(window.location.href, function (data) { 474 $('div.main-header__cart__dropdown').html($(data).find('div.main-header__cart__dropdown').html()) 475 $('div.cart-count').html($(data).find('div.cart-count').html()) 476 }); 477 478 setTimeout(function () { 479 $('.main-header__cart__dropdown').removeClass('hoverClassCart'); 480 },3000); 481 }); 482 483 $('body').trigger('added-to-cart'); 484 }, 485 error: function (XMLHttpRequest) { 486 var response = eval('(' + XMLHttpRequest.responseText + ')'); 487 console.log(response); 488 489 if (response.status == 404) { 490 _showFeedback('error', '<i class="fas fa-exclamation-triangle"></i> SelecteazÄ mai întâi o mÄrime!', $addToCartForm); 491 $addToCartBtn.prop('disabled', false).removeClass('disabled'); 492 _setText($addToCartBtn, _config.addToCartBtnLabel); 493 } else if (response.status == 422) { 494 _showFeedback('error', '<i class="fas fa-exclamation-triangle"></i> Produsul nu se mai afla in stoc!', $addToCartForm); 495 $addToCartBtn.prop('disabled', false).removeClass('disabled'); 496 _setText($addToCartBtn, _config.addToCartBtnLabel); 497 } else { 498 response = response.description; 499 if (response.slice(0, 4) === 'All ') { 500 _showFeedback('error', response.replace('All 1 ', 'All '), $addToCartForm); 501 $addToCartBtn.prop('disabled', false); 502 _setText($addToCartBtn, _config.soldOutBtnLabel); 503 $addToCartBtn.prop('disabled', true); 504 } 505 else { 506 _showFeedback('error', '<i class="fas fa-exclamation-triangle"></i> ' + response, $addToCartForm); 507 $addToCartBtn.prop('disabled', false).removeClass('disabled'); 508 _setText($addToCartBtn, _config.addToCartBtnLabel); 509 } 510 } 511 } 512 }); 513 return false;
514 }); 515 }); 516 }; 517 return { 518 init: function (params) { 519 // Configuration 520 params = params || {}; 521 // Merging with defaults. 522 $.extend(_config, params); 523 // Action 524 $(function () { 525 _init(); 526 }); 527 }, 528 getConfig: function () { 529 return _config; 530 } 531 } 532 })(jQuery); 533 534 Shopify.AjaxifyCart.init(); 535 536 function remove_cart_item(id, page){ 537 538 $('.delete-loader').show(); 539 var e = { 540 type:"POST", 541 url:"/cart/change.js", 542 data:"quantity=0&id="+id, 543 dataType:"json", 544 success: function(res) { 545 console.log("success"); 546 console.log(res); 547 548 // Update cart count and show cart link. 549 $.getJSON('/cart.js', function (cart) { 550 551 if ('.cart-count, #cart-count a:first, #gocart p a, #cart .checkout em, .item-count' && $('.cart-count, #cart-count a:first, #gocart p a, #cart .checkout em, .item-count').length) { 552 var value = $('.cart-count, #cart-count a:first, #gocart p a, #cart .checkout em, .item-count').html() || '0'; 553 $('.cart-count, #cart-count a:first, #gocart p a, #cart .checkout em, .item-count').html(value.replace(/[0-9]+/, cart.item_count)).removeClass('hidden-count'); 554 $('.main-header__cart__dropdown').addClass('hoverClassCart'); 555 } 556 557 // Update card 558 $.get(window.location.href, function (data) { 559 $('div.main-header__cart__dropdown').html($(data).find('div.main-header__cart__dropdown').html()) 560 $('div.cart-count').html($(data).find('div.cart-count').html()) 561 562 if (window.location.pathname.includes('cart')) { 563 $('.main-content > .container').html($(data).find('.main-content > .container').html()) 564 } 565 }); 566 567 setTimeout(function () { 568 $('.main-header__cart__dropdown').removeClass('hoverClassCart'); 569 },3000); 570 }); 571 }, 572 error: function(t,r) { 573 console.log("error"); 574 console.log(t); 575 console.log(r); 576 }, 577 always: function() { 578 console.log('ere'); 579 $('.delete-loader').hide(); 580 } 581 }; 582 583 jQuery.ajax(e) 584 } 585 586</script>
586 587 588 589 590 591 592<style> 593 .ajaxified-cart-feedback { 594 display: block; 595 line-height: 36px; 596 font-size: 90%; 597 vertical-align: middle; 598 text-align: center; 599 } 600 601 .ajaxified-cart-feedback.success { 602 color: #3D9970; 603 } 604 605 .ajaxified-cart-feedback.error { 606 color: #FF4136; 607 } 608</style> 609 610 611
611<script src="//www.bman.ro/cdn/shop/t/54/assets/swiped-events.js?v=49156750520633276971681217478" type="text/javascript"></script>
611 612
612<script src="//www.bman.ro/cdn/shop/t/54/assets/custom.js?v=119480737422877485361707488334" type="text/javascript"></script>
612 613 614 615 616 617 618
618<script src='https://volumediscount.hulkapps.com/hulkcode.js' defer='defer'></script>
618 619 620 621 622 623 624 625 626
626<script async defer src="https://tools.luckyorange.com/core/lo.js?site-id=70d7ac0d"></script>
626 627 628
628<script>window.is_hulkpo_installed=false</script>
628 629 <!-- "snippets/hulkcode_common.liquid" was not rendered, the associated app was uninstalled --> 630
630<script src='https://ha-volume-discount.nyc3.digitaloceanspaces.com/assets/api/v2/hulkcode.js?1791406525' defer='defer'></script>
630 631 632 <style> 633@media screen and (max-width: 767px) { 634 .listing-produse-bman .product-item-grid { 635 width: 50% !important; 636 max-width: 50% !important; 637 flex: 0 0 50% !important; 638 -ms-flex: 0 0 50% !important; 639 padding-left: 5px !important; 640 padding-right: 5px !important; 641 } 642} 643</style> 644<!-- BEGIN app block: shopify://apps/pandectes-gdpr/blocks/banner/58c0baa2-6cc1-480c-9ea6-38d6d559556a --> 645 646 647 648 <!-- TCF is active, scripts are loaded above --> 649 650
650<script> 651 652 window.PandectesSettings = {"store":{"id":12633571392,"plan":"plus","theme":"bman-2.0/master","primaryLocale":"ro","adminMode":false,"headless":false,"storefrontRootDomain":"","checkoutRootDomain":"","storefrontAccessToken":""},"tsPublished":1743423182,"declaration":{"showPurpose":false,"showProvider":false,"declIntroText":"Folosim cookie-uri pentru a optimiza funcÈionalitatea site-ului web, pentru a analiza performanÈa Èi pentru a vÄ oferi o experienÈÄ personalizatÄ. Unele cookie-uri sunt esenÈiale pentru ca site-ul sÄ funcÈioneze Èi sÄ funcÈioneze corect. Aceste cookie-uri nu pot fi dezactivate. Ãn aceastÄ fereastrÄ vÄ puteÈi gestiona preferinÈele de cookie-uri.","showDateGenerated":true},"language":{"unpublished":[],"languageMode":"Single","fallbackLanguage":"ro","languageDetection":"browser","languagesSupported":[]},"texts":{"managed":{"headerText":{"ro":"VÄ respectÄm confidenÈialitatea"},"consentText":{"ro":"Folosim cookie-uri pentru ca site-ul web sÄ funcÈioneze fÄrÄ probleme (cookie-uri necesare) Èi pentru crearea de servicii Èi oferte adaptate nevoilor tale (cookie-uri opÈionale - le poÈi accepta)."},"linkText":{"ro":"AflÄ mai multe"},"imprintText":{"ro":"Imprima"},"allowButtonText":{"ro":"Accept"},"denyButtonText":{"ro":"Declin"},"dismissButtonText":{"ro":"Bine"},"leaveSiteButtonText":{"ro":"PÄrÄsiÈi acest site"},"preferencesButtonText":{"ro":"PreferinÈe"},"cookiePolicyText":{"ro":"Politica privind cookie-urile"},"preferencesPopupTitleText":{"ro":"GestionaÈi preferinÈele de consimÈÄmânt"},"preferencesPopupIntroText":{"ro":"Folosim cookie-uri pentru a optimiza funcÈionalitatea site-ului web, a analiza performanÈa Èi a vÄ oferi experienÈÄ personalizatÄ. Unele cookie-uri sunt esenÈiale pentru ca site-ul web sÄ funcÈioneze Èi sÄ funcÈioneze corect. Aceste cookie-uri nu pot fi dezactivate. Ãn aceastÄ fereastrÄ puteÈi gestiona preferinÈa dvs. pentru cookie-uri."},"preferencesPopupSaveButtonText":{"ro":"SalvaÈi preferinÈele"},"preferencesPopupCloseButtonText":{"ro":"Ãnchide"},"preferencesPopupAcceptAllButtonText":{"ro":"Accepta toate"},"preferencesPopupRejectAllButtonText":{"ro":"RespingeÈi toate"},"cookiesDetailsText":{"ro":"Detalii despre cookie-uri"},"preferencesPopupAlwaysAllowedText":{"ro":"Mereu permis"},"accessSectionParagraphText":{"ro":"AveÈi dreptul de a vÄ putea accesa datele în orice moment."},"accessSectionTitleText":{"ro":"Portabilitatea datelor"},"accessSectionAccountInfoActionText":{"ro":"Date personale"},"accessSectionDownloadReportActionText":{"ro":"Descarca toate"},"accessSectionGDPRRequestsActionText":{"ro":"SolicitÄri ale persoanei vizate"},"accessSectionOrdersRecordsActionText":{"ro":"Comenzi"},"rectificationSectionParagraphText":{"ro":"AveÈi dreptul de a solicita actualizarea datelor dvs. ori de câte ori credeÈi cÄ este adecvat."},"rectificationSectionTitleText":{"ro":"Rectificarea datelor"},"rectificationCommentPlaceholder":{"ro":"DescrieÈi ce doriÈi sÄ fiÈi actualizat"},"rectificationCommentValidationError":{"ro":"Comentariul este obligatoriu"},"rectificationSectionEditAccountActionText":{"ro":"SolicitaÈi o actualizare"},"erasureSectionTitleText":{"ro":"Dreptul de a fi uitat"},"erasureSectionParagraphText":{"ro":"AveÈi dreptul sÄ solicitaÈi Ètergerea tuturor datelor dvs. DupÄ aceea, nu veÈi mai putea accesa contul dvs."},"erasureSectionRequestDeletionActionText":{"ro":"SolicitaÈi Ètergerea datelor cu caracter personal"},"consentDate":{"ro":"Data consimÈÄmântului"},"consentId":{"ro":"ID de consimÈÄmânt"},"consentSectionChangeConsentActionText":{"ro":"SchimbaÈi preferinÈa de consimÈÄmânt"},"consentSectionConsentedText":{"ro":"AÈi fost de acord cu politica de cookie-uri a acestui site web pe"},"consentSectionNoConsentText":{"ro":"Nu aÈi consimÈit politica de cookie-uri a acestui site web."},"consentSectionTitleText":{"ro":"ConsimÈÄmântul dumneavoastrÄ pentru cookie-uri"},"consentStatus":{"ro":"PreferinÈÄ de consimÈÄmânt"},"confirmationFailureMessage":{"ro":"Solicitarea dvs. nu a fost confirmatÄ. ÃncercaÈi din nou Èi dacÄ problema persistÄ, contactaÈi proprietarul magazinului pentru asistenÈÄ"},"confirmationFailureTitle":{"ro":"A apÄrut o problemÄ"},"confirmationSuccessMessage":{"ro":"Vom reveni în curând la cererea dvs."},"confirmationSuccessTitle":{"ro":"Solicitarea dvs. este confirmatÄ"},"guestsSupportEmailFailureMessage":{"ro":"Solicitarea dvs. nu a fost trimisÄ. ÃncercaÈi din nou Èi dacÄ problema persistÄ, contactaÈi proprietarul magazinului pentru asistenÈÄ."},"guestsSupportEmailFailureTitle":{"ro":"A apÄrut o problemÄ"},"guestsSupportEmailPlaceholder":{"ro":"Adresa de e-mail"},"guestsSupportEmailSuccessMessage":{"ro":"DacÄ sunteÈi înregistrat ca client al acestui magazin, în curând veÈi primi un e-mail cu instrucÈiuni despre cum sÄ procedaÈi."},"guestsSupportEmailSuccessTitle":{"ro":"VÄ mulÈumim pentru cererea dvs"},"guestsSupportEmailValidationError":{"ro":"E-mailul nu este valid"},"guestsSupportInfoText":{"ro":"VÄ rugÄm sÄ vÄ conectaÈi cu contul dvs. de client pentru a continua."},"submitButton":{"ro":"Trimite"},"submittingButton":{"ro":"Se trimite ..."},"cancelButton":{"ro":"Anulare"},"declIntroText":{"ro":"Folosim cookie-uri pentru a optimiza funcÈionalitatea site-ului web, pentru a analiza performanÈa Èi pentru a vÄ oferi o experienÈÄ personalizatÄ. Unele cookie-uri sunt esenÈiale pentru ca site-ul sÄ funcÈioneze Èi sÄ funcÈioneze corect. Aceste cookie-uri nu pot fi dezactivate. Ãn aceastÄ fereastrÄ vÄ puteÈ
652i gestiona preferinÈele de cookie-uri."},"declName":{"ro":"Nume"},"declPurpose":{"ro":"Scop"},"declType":{"ro":"Tip"},"declRetention":{"ro":"RetenÅ£ie"},"declProvider":{"ro":"Furnizor"},"declFirstParty":{"ro":"First-party"},"declThirdParty":{"ro":"TerÈ"},"declSeconds":{"ro":"secunde"},"declMinutes":{"ro":"minute"},"declHours":{"ro":"ore"},"declDays":{"ro":"zile"},"declMonths":{"ro":"luni"},"declYears":{"ro":"ani"},"declSession":{"ro":"Sesiune"},"declDomain":{"ro":"Domeniu"},"declPath":{"ro":"cale"}},"categories":{"strictlyNecessaryCookiesTitleText":{"ro":"Cookie-uri strict necesare"},"strictlyNecessaryCookiesDescriptionText":{"ro":"Aceste cookie-uri sunt esenÈiale pentru a vÄ permite sÄ vÄ deplasaÈi pe site-ul web Èi sÄ utilizaÈi caracteristicile acestuia, cum ar fi accesarea zonelor securizate ale site-ului web. Site-ul web nu poate funcÈiona corect fÄrÄ aceste cookie-uri."},"functionalityCookiesTitleText":{"ro":"Cookie-uri funcÈionale"},"functionalityCookiesDescriptionText":{"ro":"Aceste cookie-uri permit site-ului sÄ ofere funcÈionalitÄÈi Èi personalizare îmbunÄtÄÈite. Acestea pot fi setate de noi sau de furnizori terÈi ale cÄror servicii le-am adÄugat pe paginile noastre. DacÄ nu permiteÈi aceste cookie-uri, este posibil ca unele sau toate aceste servicii sÄ nu funcÈioneze corect."},"performanceCookiesTitleText":{"ro":"Cookie-uri de performanÈÄ"},"performanceCookiesDescriptionText":{"ro":"Aceste cookie-uri ne permit sÄ monitorizÄm Èi sÄ Ã®mbunÄtÄÈim performanÈa site-ului nostru web. De exemplu, acestea ne permit sÄ numÄrÄm vizitele, sÄ identificÄm sursele de trafic Èi sÄ vedem ce pÄrÈi ale site-ului sunt cele mai populare."},"targetingCookiesTitleText":{"ro":"Cookie-uri de direcÈionare"},"targetingCookiesDescriptionText":{"ro":"Aceste cookie-uri pot fi setate prin intermediul site-ului nostru de cÄtre partenerii noÈtri publicitari. Acestea pot fi utilizate de acele companii pentru a-Èi construi un profil al intereselor Èi pentru a-Èi arÄta reclame relevante pe alte site-uri. Nu stocheazÄ Ã®n mod direct informaÈii personale, ci se bazeazÄ pe identificarea unicÄ a browserului Èi a dispozitivului dvs. de internet. DacÄ nu permiteÈi aceste cookie-uri, veÈi experimenta publicitate mai puÈin direcÈionatÄ."},"unclassifiedCookiesTitleText":{"ro":"Cookie-uri neclasificate"},"unclassifiedCookiesDescriptionText":{"ro":"Cookie-urile neclasificate sunt cookie-uri pe care suntem în curs de clasificare, împreunÄ cu furnizorii de cookie-uri individuale."}},"auto":{}},"library":{"previewMode":false,"fadeInTimeout":0,"defaultBlocked":7,"showLink":true,"showImprintLink":false,"showGoogleLink":false,"enabled":true,"cookie":{"expiryDays":365,"secure":true,"domain":""},"dismissOnScroll":false,"dismissOnWindowClick":false,"dismissOnTimeout":false,"palette":{"popup":{"background":"#FFFFFF","backgroundForCalculations":{"a":1,"b":255,"g":255,"r":255},"text":"#000000"},"button":{"background":"transparent","backgroundForCalculations":{"a":1,"b":255,"g":255,"r":255},"text":"#000000","textForCalculation":{"a":1,"b":0,"g":0,"r":0},"border":"#000000"}},"content":{"href":"https://www.bman.ro/pages/politica-privind-modulele-cookie","imprintHref":"/","close":"✕","target":"","logo":"<img class=\"cc-banner-logo\" style=\"max-height: 40px;\" src=\"https://bman-romania.myshopify.com/cdn/shop/files/pandectes-banner-logo.png\" alt=\"logo\" />"},"window":"<div role=\"dialog\" aria-live=\"polite\" aria-label=\"cookieconsent\" aria-describedby=\"cookieconsent:desc\" id=\"pandectes-banner\" class=\"cc-window-wrapper cc-overlay-wrapper\"><div class=\"pd-cookie-banner-window cc-window {{classes}}\"><!--googleoff: all-->{{children}}<!--googleon: all--></div></div>","compliance":{"custom":"<div class=\"cc-compliance cc-highlight\">{{preferences}}{{allow}}</div>"},"type":"custom","layouts":{"basic":"{{logo}}{{messagelink}}{{compliance}}"},"position":"overlay","theme":"wired","revokable":false,"animateRevokable":false,"revokableReset":false,"revokableLogoUrl":"https://bman-romania.myshopify.com/cdn/shop/files/pandectes-reopen-logo.png","revokablePlacement":"bottom-left","revokableMarginHorizontal":15,"revokableMarginVertical":15,"static":false,"autoAttach":true,"hasTransition":true,"blacklistPage":[""],"elements":{"close"
652:"<button aria-label=\"dismiss cookie message\" type=\"button\" tabindex=\"0\" class=\"cc-close\">{{close}}</button>","dismiss":"<button aria-label=\"dismiss cookie message\" type=\"button\" tabindex=\"0\" class=\"cc-btn cc-btn-decision cc-dismiss\">{{dismiss}}</button>","allow":"<button aria-label=\"allow cookies\" type=\"button\" tabindex=\"0\" class=\"cc-btn cc-btn-decision cc-allow\">{{allow}}</button>","deny":"<button aria-label=\"deny cookies\" type=\"button\" tabindex=\"0\" class=\"cc-btn cc-btn-decision cc-deny\">{{deny}}</button>","preferences":"<button aria-label=\"settings cookies\" tabindex=\"0\" type=\"button\" class=\"cc-btn cc-settings\" onclick=\"Pandectes.fn.openPreferences()\">{{preferences}}</button>"}},"geolocation":{"brOnly":false,"caOnly":false,"chOnly":false,"euOnly":false,"jpOnly":false,"thOnly":false,"zaOnly":false,"canadaOnly":false,"globalVisibility":true},"dsr":{"guestsSupport":false,"accessSectionDownloadReportAuto":false},"banner":{"resetTs":1708892726,"extraCss":" .cc-banner-logo {max-width: 24em!important;} @media(min-width: 768px) {.cc-window.cc-floating{max-width: 24em!important;width: 24em!important;}} .cc-message, .pd-cookie-banner-window .cc-header, .cc-logo {text-align: left} .cc-window-wrapper{z-index: 2147483647;-webkit-transition: opacity 1s ease; transition: opacity 1s ease;} .cc-window{z-index: 2147483647;font-family: inherit;} .pd-cookie-banner-window .cc-header{font-family: inherit;} .pd-cp-ui{font-family: inherit; background-color: #FFFFFF;color:#000000;} button.pd-cp-btn, a.pd-cp-btn{} input + .pd-cp-preferences-slider{background-color: rgba(0, 0, 0, 0.3)} .pd-cp-scrolling-section::-webkit-scrollbar{background-color: rgba(0, 0, 0, 0.3)} input:checked + .pd-cp-preferences-slider{background-color: rgba(0, 0, 0, 1)} .pd-cp-scrolling-section::-webkit-scrollbar-thumb {background-color: rgba(0, 0, 0, 1)} .pd-cp-ui-close{color:#000000;} .pd-cp-preferences-slider:before{background-color: #FFFFFF} .pd-cp-title:before {border-color: #000000!important} .pd-cp-preferences-slider{background-color:#000000} .pd-cp-toggle{color:#000000!important} @media(max-width:699px) {.pd-cp-ui-close-top svg {fill: #000000}} .pd-cp-toggle:hover,.pd-cp-toggle:visited,.pd-cp-toggle:active{color:#000000!important} .pd-cookie-banner-window {box-shadow: 0 0 18px rgb(0 0 0 / 20%);} ","customJavascript":{},"showPoweredBy":false,"logoHeight":40,"revokableTrigger":false,"hybridStrict":false,"cookiesBlockedByDefault":"7","isActive":true,"implicitSavePreferences":false,"cookieIcon":false,"blockBots":false,"showCookiesDetails":true,"hasTransition":true,"blockingPage":false,"showOnlyLandingPage":false,"leaveSiteUrl":"https://www.google.com","linkRespectStoreLang":false},"cookies":{"0":[{"name":"keep_alive","type":"http","domain":"www.bman.ro","path":"/","provider":"Shopify","firstParty":true,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":"Folosit în legÄturÄ cu localizarea cumpÄrÄtorului."}},{"name":"secure_customer_sig","type":"http","domain":"www.bman.ro","path":"/","provider":"Shopify","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit în legÄturÄ cu autentificarea clientului."}},{"name":"localization","type":"http","domain":"www.bman.ro","path":"/","provider":"Shopify","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Localizarea magazinului Shopify"}},{"name":"_cmp_a","type":"http","domain":".bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"1 day(s)","expires":1,"unit":"declDays","purpose":{"ro":"Folosit pentru gestionarea setÄrilor de confidenÈialitate ale clienÈilor."}},{"name":"_tracking_consent","type":"http","domain":".bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"PreferinÈe de urmÄrire."}},{"name":"_secure_session_id","type":"http","domain":"www.bman.ro","path":"/","provider":"Shopify","firstParty":true,"retention":"1 month(s)","expires":1,"unit":"declMonths","purpose":{"ro":"Folosit în legÄturÄ cu navigarea printr-o vitrinÄ."}},{"name":"cart","type":"http","domain":"www.bman.ro","path":"/","provider":"Shopify","firstParty":true,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":"Necesar pentru funcÈionalitatea coÈului de cumpÄrÄturi de pe site."}},{"name":"cart_ts","type":"http","domain":"www.bman.ro","path":"/","provider":"Shopify","firstParty":true,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":"Folosit în legÄturÄ cu checkout."}},{"name":"cart_sig","type":"http","domain":"www.bman.ro","path":"/","provider":"Shopify","firstParty":true,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":"Analize Shopify."}}],"1":[{"name":"_ks_scriptVersion","type":"http","domain":"www.bman.ro","path":"/","provider":"KiwiSizing","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit de pluginul Shopify Tabel de mÄrimi Kiwi"}},{"name":"_ks_scriptVersionChecked","type":"http","domain":"www.bman.ro","path":"/","provider":"KiwiSizing","firstParty":true,"retention":"1 day(s)","expires":1,"unit":"declDays","purpose":{"ro":"Folosit de pluginul Shopify Tabel de mÄrimi Kiwi"}},{"name":"_hjSession_3820107","type":"http","domain":".bman.ro","path":"/","provider":"Hotjar","firstParty":false,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":""}},{"name":"_hjSessionUser_3820107","type":"http","domain":".bman.ro","path":"/","provider":"Hotjar","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}}],"2":[{"name":"_shopify_y","type":"http","domain":".bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Analize Shopify."}},{"name":"_orig_referrer","type":"http","domain":".bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":"UrmÄreÈte paginile de destinaÈie."}},{"name":"_landing_page","type":"http","domain":".bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":"UrmÄreÈte paginile de destinaÈie."}},{"name":"__cf_bm","type":"http","domain":".redretarget.com","path":"/","provider":"CloudFlare","firstParty":false,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":"Folosit pentru a gestiona traficul de intrare care corespunde criteriilor asociate cu roboÈii."}},{"name":"_shopify_s","type":"http","domain":".bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":"Analize Shopify."}},{"name":"__cf_bm","type":"http","domain":".conversionbear.com","path":"/","provider":"CloudFlare","firstParty":false,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":"Folosit pentru a gestiona traficul de intrare care corespunde criteriilor asociate cu roboÈii."}},{"name":"_shopify_sa_t","type":"http","domain":".bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":"Analize Shopify legate de marketing Èi re
652comandÄri."}},{"name":"_shopify_sa_p","type":"http","domain":".bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":"Analize Shopify legate de marketing Èi recomandÄri."}},{"name":"_gid","type":"http","domain":".bman.ro","path":"/","provider":"Google","firstParty":false,"retention":"1 day(s)","expires":1,"unit":"declDays","purpose":{"ro":"Cookie-ul este plasat de Google Analytics pentru a numÄra Èi urmÄri afiÈÄrile de paginÄ."}},{"name":"epb_previous_pathname","type":"http","domain":"www.bman.ro","path":"/","provider":"Hextom","firstParty":true,"retention":"Session","expires":-54,"unit":"declYears","purpose":{"ro":"Folosit de bara de promovare Hextom."}},{"name":"_ga","type":"http","domain":".bman.ro","path":"/","provider":"Google","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Cookie-ul este setat de Google Analytics cu funcÈionalitate necunoscutÄ"}},{"name":"_shopify_s","type":"http","domain":"ro","path":"/","provider":"Shopify","firstParty":false,"retention":"Session","expires":1,"unit":"declSeconds","purpose":{"ro":"Analize Shopify."}},{"name":"_ga_0T338NPF4H","type":"http","domain":".bman.ro","path":"/","provider":"Google","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"_gat_gtag_UA_62966053_1","type":"http","domain":".bman.ro","path":"/","provider":"Google","firstParty":false,"retention":"1 minute(s)","expires":1,"unit":"declMinutes","purpose":{"ro":""}}],"4":[{"name":"_ttp","type":"http","domain":".tiktok.com","path":"/","provider":"TikTok","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Pentru a mÄsura Èi îmbunÄtÄÈi performanÈa campaniilor dvs. publicitare Èi pentru a personaliza experienÈa utilizatorului (inclusiv reclamele) pe TikTok."}},{"name":"_gcl_au","type":"http","domain":".bman.ro","path":"/","provider":"Google","firstParty":false,"retention":"3 month(s)","expires":3,"unit":"declMonths","purpose":{"ro":"Cookie-ul este plasat de Google Tag Manager pentru a urmÄri conversiile."}},{"name":"__kla_id","type":"http","domain":"www.bman.ro","path":"/","provider":"Klaviyo","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"UrmÄreÈte când cineva dÄ clic printr-un e-mail Klaviyo cÄtre site-ul tÄu web"}},{"name":"_tt_enable_cookie","type":"http","domain":".bman.ro","path":"/","provider":"TikTok","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit pentru a identifica un vizitator."}},{"name":"_ttp","type":"http","domain":".bman.ro","path":"/","provider":"TikTok","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Pentru a mÄsura Èi îmbunÄtÄÈi performanÈa campaniilor dvs. publicitare Èi pentru a personaliza experienÈa utilizatorului (inclusiv reclamele) pe TikTok."}},{"name":"_scid","type":"http","domain":".bman.ro","path":"/","provider":"Snapchat","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit de Snapchat pentru a ajuta la identificarea unui vizitator."}},{"name":"IDE","type":"http","domain":".doubleclick.net","path":"/","provider":"Google","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Pentru a mÄsura acÈiunile vizitatorilor dupÄ ce aceÈtia fac clic dintr-o reclamÄ. ExpirÄ dupÄ 1 an."}},{"name":"_fbp","type":"http","domain":".bman.ro","path":"/","provider":"Facebook","firstParty":false,"retention":"3 month(s)","expires":3,"unit":"declMonths","purpose":{"ro":"Cookie-ul este plasat de Facebook pentru a urmÄri vizitele pe site-uri web."}},{"name":"swym-session-id","type":"http","domain":".www.bman.ro","path":"/","provider":"Swym","firstParty":true,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":"Folosit de pluginul SWYM Wishlist Plus Shopify."}},{"name":"swym-pid","type":"http","domain":".www.bman.ro","path":"/","provider":"Swym","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit de aplicaÈia dvs."}},{"name":"swym-o_s","type":"http","domain":".www.bman.ro","path":"/","provider":"Swym","firstParty":true,"retention":"30 minute(s)","expires":30,"unit":"declMinutes","purpose":{"ro":"Folosit de aplicaÈia dvs."}},{"name":"swym-swymRegid","type":"http","domain":".www.bman.ro","path":"/","provider":"Amazon","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit de aplicaÈia dvs."}},{"name":"swym-cu_ct","type":"http","domain":".www.bman.ro","path":"/","provider":"Swym","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit de aplicaÈia dvs."}},{"name":"swym-instrumentMap","type":"http","domain":".www.bman.ro","path":"/","provider":"Swym","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit de aplicaÈia dvs."}},{"name":"wpm-domain-test","type":"http","domain":"bman.ro","path":"/","provider":"Shopify","firstParty":false,"retention":"Session","expires":1,"unit":"declSeconds","purpose":{"ro":"Folosit pentru a testa stocarea parametrilor despre produsele adÄugate în coÈ sau moneda de platÄ"}},{"name":"wpm-domain-test","type":"http","domain":"www.bman.ro","path":"/","provider":"Shopify","firstParty":true,"retention":"Session","expires":1,"unit":"declSeconds","purpose":{"ro":"Folosit pentru a testa stocarea parametrilor despre produsele adÄugate în coÈ sau moneda de platÄ"}},{"name":"wpm-domain-test","type":"http","domain":"ro","path":"/","provider":"Shopify","firstParty":false,"retention":"Session","expires":1,"unit":"declSeconds","purpose":{"ro":"Folosit pentru a testa stocarea parametrilor despre produsele adÄugate în coÈ sau moneda de platÄ"}},{"name":"_privy_25C8AE82E809133E1E726B71","type":"http","domain":".bman.ro","path":"/","provider":"Privy","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}}],"8":[{"name":"swym-email","type":"http","domain":".www.bman.ro","path":"/","provider":"Unknown","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":"Folosit de aplicaÈia dvs."}},{"name":"X-AB","type":"http","domain":"sc-static.net","path":"/scevent.min.js","provider":"Unknown","firstParty":false,"retention":"1 day(s)","expires":1,"unit":"declDays","purpose":{"ro":""}},{"name":"uid","type":"http","domain":".criteo.com","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"gp_e","type":"http","domain":".bman.ro","path":"/","provider":"Unknown","firstParty":false,"retention":"1 month(s)","expires":1,"unit":"declMonths","purpose":{"ro":""}},{"name":"gp_d","type":"http","domain":".bman.ro","path":"/","provider":"Unknown","firstParty":false,"retention":"1 month(s)","expires":1,"unit":"declMonths","purpose":{"ro":""}},{"name":"gp_s","type":"http","domain":".bman.ro","path":"/","provider":"Unknown","firstParty":false,"retention":"1 month(s)","expires":1,"unit":"declMonths","purpose":{"ro":""}},{"name":"glm_usr_tmp","type":"http","domain":".glami.ro","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"glm_usr","type":"http","domain":".glami.ro","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"cto_bundle","type":"http","domain":".bman.ro","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"_scid_r","type":"http","domain":".bman.ro","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"demdex","type":"http","domain":".demdex.net","path":"/","provider":"Unknown","firstParty":false,"retention":"6 month(s)","expires":6,"unit":"declMonths","purpose":{"ro":""}},{"name":"dpm","type":"http","domain":".dpm.demdex.net","path":"/","provider":"Unknown","firstParty":false,"retention":"6 month(s)","expires":6,"unit":"declMonths","purpose":{"ro":""}},{"name":"visitor-id","type":"http","domain":".media.net","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"data-c-ts","type":"http","domain":".media.net","path":"/","provider":"Unknown","firstParty":false,"retention":"1 month(s)","expires":1,"unit":"declMonths","purpose":{"ro":""}},{"name":"data-c","type":"http","domain":".media.net","path":"/","provider":"Unknown","firstParty":false,"retention":"1 month(s)","expires":1,"unit":"declMonths","purpose":{"ro":""}},{"name":"CMPS","type":"http","domain":".casalemedia.com","path":"/","provider":"Unknown","firstParty":false,"retention":"3 month(s)","expires":3,"unit":"declMonths","purpose":{"ro":""}},{"name":"CMPRO","type":"http","domain":".casalemedia.com","path":"/","provider":"Unknown","firstParty":false,"retention":"3 month(s)","expires":3,"unit":"declMonths","purpose":{"ro":""}},{"name":"XANDR_PANID","type":"http","domain":".adnxs.com","path":"/","provider":"Unknown","firstParty":false,"retention":"3 month(s)","expires":3,"unit":"declMonths","purpose":{"ro":""}},{"name":"receive-cookie-deprecation","type":"http","domain":".adnxs.com","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"uuid2","type":"http","domain":".adnxs.com","path":"/","provider":"Unknown","firstParty":false,"retention":"3 month(s)","expires":3,"unit":"declMonths","purpose":{"ro":""}},{"name":"CMID","type":"http","domain":".casalemedia.com","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"am_tokens","type":"http","domain":"exchange.mediavine.com","path":"/","provider":"Unknown","firstParty":false,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":""}},{"name":"am_tokens_eu-v1","type":"http","domain":"exchange.mediavine.com","path":"/","provider":"Unknown","firstParty":false,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":""}},{"name":"ayl_visitor","type":"http","domain":".omnitagjs.com","path":"/","provider":"Unknown","firstParty":false,"retention":"1 month(s)","expires":1,"unit":"declMonths","purpose":{"ro":""}},{"name":"mv_tokens_eu-v1","type":"http","domain":"exchange.mediavine.com","path":"/","provider":"Unknown","firstParty":false,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":""}},{"name":"opt_out","type":"http","domain":".postrelease.com","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"mv_tokens","type":"http","domain":"exchange.mediavine.com","path":"/","provider":"Unknown","firstParty":false,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":""}},{"name":"tv_UICR","type":"http","domain":".tremorhub.com","path":"/","provider":"Unknown","firstParty":false,"retention":"1 month(s)","expires":1,"unit":"declMonths","purpose":{"ro":""}},{"name":"criteo","type":"http","domain":"exchange.mediavine.com","path":"/","provider":"Unknown","firstParty":false,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":""}},{"name":"tvid","type":"http","domain":".tremorhub.com","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"anj","type":"http","domain":".adnxs.com","path":"/","provider":"Unknown","firstParty":false,"retention":"3 month(s)","expires":3,"unit":"declMonths","purpose":{"ro":""}},{"name":"__verify","type":"http","domain":"www.bman.ro","path":"/","provider":"Unknown","firstParty":true,"retention":"Session","expires":1,"unit":"declSeconds","purpose":{"ro":""}},{"name":"_hjTLDTest","type":"http","domain":"bman.ro","path":"/","provider":"Unknown","firstParty":false,"retention":"Session","expires":1,"unit":"declSeconds","purpose":{"ro":""}},{"name":"docapp-coupon","type":"http","domain":"www.bman.ro","path":"/","provider":"Unknown","firstParty":true,"retention":"1 day(s)","expires":1,"unit":"declDays","purpose":{"ro":""}},{"name":"csrftoken","type":"http","domain":"oneclicksociallogin.devcloudsoftware.com","path":"/","provider":"Unknown","firstParty":false,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}},{"name":"sessionid","type":"http","domain":"oneclicksociallogin.devcloudsoftware.com","path":"/","provider":"Unknown","firstParty":false,"retention":"2 ","expires":2,"unit":"declSession","purpose":{"ro":""}},{"name":"_shopify_essential","type":"http","domain":"www.bman.ro","path":"/","provider":"Unknown","firstParty":true,"retention":"1 year(s)","expires":1,"unit":"declYears","purpose":{"ro":""}}]},"blocker":{"isActive":false,"googleConsentMode":{"id":"","analyticsId":"","adwordsId":"","isActive":true,"adStorageCategory":4,"analyticsStorageCategory":2,"personalizationStorageCategory":0,"functionalityStorageCategory":0,"customEvent":true,"securityStorageCategory":0,"redactData":true,"urlPassthrough":false,"dataLayerProperty":"groPulseGTMDatalayer","waitForUpdate":0,"useNativeChannel":false},"facebookPixel":{"id":"","isActive":false,"ldu":false},"microsoft":{},"rakuten":{"isActive":false,"cmp":false,"ccpa":false},"klaviyoIsActive":true,"gpcIsActive":false,"defaultBlocked":7,"patterns":{"whiteList":[],"blackList":{"1":[],"2":[],"4":[],"8":[]},"iframesWhiteList":[],"iframesBlackList":{"1":[],"2":[],"4":[],"8":[]},"beaconsWhiteList":[],"beaconsBlackList":{"1":[],"2":[],"4":[],"8":[]}}}}; 653 654 window.addEventListener('DOMContentLoaded', function(){ 655 const script = document.createElement('script'); 656 657 script.src = "https://cdn.shopify.com/extensions/01a11687-a319-7422-b9b0-51680bbe142b/gdpr-cookie-consent-419/assets/pandectes-core.js"; 658 659 script.defer = true; 660 document.body.appendChild(script); 661 }) 662 </script>
662 663 664 665 666 667 668 669 670<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 --> 671 672 673 674 675 676 677 678 679 680 681 682 683
683<script async src="https://static.klaviyo.com/onsite/js/XRSPQ9/klaviyo.js?company_id=XRSPQ9"></script>
683 684
684<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>
684 685 686 687 688 689 690 691
691<script> 692 window.klaviyoReviewsProductDesignMode = false 693 </script>
693 694 695 696 697 698 699 700 701 702 703<!-- END app block --><!-- BEGIN app block: shopify://apps/gtm-data-layer/blocks/gropulse-gtm/ec1066b4-8b00-4630-a216-c88f51204a28 --><!-- BEGIN app snippet: custom-event-selector --> 704 705<div id="gropulse-custom-event-selector-modal" class="gropulse-custom-event-modal"> 706 <div class="gropulse-custom-event-modal-content"> 707 <div class="gropulse-custom-event-modal-header"> 708 <p class="gropulse-modal-title">Custom Event Setup</p> 709 <span class="gropulse-custom-event-close">×</span> 710 </div> 711 <div class="gropulse-custom-event-modal-body"> 712 <p>Click on the elements you want to track as custom events. Selected elements will appear in the list below.</p> 713 714 <button id="gropulse-track-new-button" class="gropulse-track-new-button">Track New Element</button> 715 716 <div class="gropulse-selected-elements"> 717 <span class="gropulse-selected-elements-title">Selected Elements (0)</span> 718 <ul id="gropulse-selected-elements-list"></ul> 719 </div> 720 </div> 721 <div class="gropulse-custom-event-modal-footer"> 722 <button id="gropulse-finish-setup-button" class="gropulse-finish-setup-button">Finish Setup</button> 723 </div> 724 </div> 725</div> 726 727<style> 728.gropulse-custom-event-modal { 729 display: none; 730 position: fixed; 731 z-index: 99999; 732 left: 20px; 733 top: 20px; 734 width: 400px; 735 background-color: #fff; 736 border-radius: 8px; 737 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2); 738 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; 739 max-height: 90vh; 740 overflow-y: auto; 741} 742 743.gropulse-custom-event-modal-content { 744 width: 100%; 745} 746 747.gropulse-custom-event-modal-header { 748 padding: 15px 20px; 749 display: flex; 750 justify-content: space-between; 751 align-items: center; 752 border-bottom: 1px solid #e5e5e5; 753} 754 755.gropulse-custom-event-modal-header .gropulse-modal-title { 756 margin: 0; 757 font-size: 18px; 758 font-weight: 600; 759 color: #333; 760} 761 762.gropulse-custom-event-close { 763 color: #aaa; 764 font-size: 24px; 765 font-weight: bold; 766 cursor: pointer; 767} 768 769.gropulse-custom-event-close:hover { 770 color: #555; 771} 772 773.gropulse-custom-event-modal-body { 774 padding: 20px; 775} 776 777.gropulse-custom-event-modal-footer { 778 padding: 15px 20px; 779 border-top: 1px solid #e5e5e5; 780 text-align: right; 781} 782 783.gropulse-track-new-button, 784.gropulse-finish-setup-button { 785 padding: 10px 15px; 786 border-radius: 4px; 787 border: none; 788 font-size: 14px; 789 font-weight: 500; 790 cursor: pointer; 791} 792 793.gropulse-track-new-button { 794 background-color: #4CAF50; 795 color: white; 796 margin-top: 10px; 797} 798 799.gropulse-finish-setup-button { 800 background-color: #2196F3; 801 color: white; 802} 803 804.gropulse-selected-elements { 805 margin-top: 20px; 806} 807 808.gropulse-selected-elements-title { 809 display: block; 810 font-size: 16px; 811 margin-bottom: 10px; 812 font-weight: 500; 813} 814 815#gropulse-selected-elements-list { 816 list-style: none; 817 padding: 0; 818 margin: 0; 819 max-height: 200px; 820 overflow-y: auto; 821 border: 1px solid #e5e5e5; 822 border-radius: 4px; 823} 824 825#gropulse-selected-elements-list li { 826 padding: 10px; 827 border-bottom: 1px solid #e5e5e5; 828 display: flex; 829 justify-content: space-between; 830 align-items: center; 831} 832 833#gropulse-selected-elements-list li:last-child { 834 border-bottom: none; 835} 836 837.gropulse-element-info { 838 flex: 1; 839 font-size: 14px; 840 word-break: break-word; 841} 842 843.gropulse-remove-element { 844 color: #f44336; 845 cursor: pointer; 846 margin-left: 10px; 847} 848 849.gropulse-page-overlay { 850 position: fixed; 851 top: 0; 852 left: 0; 853 width: 100%; 854 height: 100%; 855 background-color: rgba(0, 0, 0, 0.3); 856 z-index: 99990; 857 pointer-events: none; 858} 859 860.gropulse-highlight-element { 861 position: absolute; 862 pointer-events: none; 863 background-color: rgba(76, 175, 80, 0.2); 864 border: 2px solid #4CAF50; 865 z-index: 99991; 866 box-sizing: border-box; 867} 868 869/* Make modal draggable */ 870.gropulse-custom-event-modal-header { 871 cursor: move; 872} 873 874/* Responsive styles */ 875@media screen and (max-width: 480px) { 876 .gropulse-custom-event-modal { 877 width: 90%; 878 left: 5%; 879 top: 5%; 880 } 881} 882</style> 883
884<script> 885document.addEventListener('DOMContentLoaded', function() { 886 // Parse URL parameters 887 const urlParams = new URLSearchParams(window.location.search); 888 const customEventParam = urlParams.get('customEvent'); 889 const redirectUrl = urlParams.get('redirectUrl'); 890 891 // Initialize session storage if customEvent param is present 892 if (customEventParam === '1') { 893 // Set flag in session storage to show the modal across page navigation 894 sessionStorage.setItem('gropulseCustomEventSetupActive', 'true'); 895 // Store redirect URL for later use 896 if (redirectUrl) { 897 sessionStorage.setItem('gropulseCustomEventRedirectUrl', redirectUrl); 898 } 899 } 900 901 // Don't proceed if setup mode is not active 902 if (sessionStorage.getItem('gropulseCustomEventSetupActive') !== 'true') return; 903 904 const modal = document.getElementById('gropulse-custom-event-selector-modal'); 905 const trackNewButton = document.getElementById('gropulse-track-new-button'); 906 const finishSetupButton = document.getElementById('gropulse-finish-setup-button'); 907 const closeButton = document.querySelector('.gropulse-custom-event-close'); 908 const selectedElementsList = document.getElementById('gropulse-selected-elements-list'); 909 const selectedElementsHeader = document.querySelector('.gropulse-selected-elements-title'); 910 911 let isSelectionMode = false; 912 let selectedElements = []; 913 let overlay = null; 914 let highlightElement = null; 915 916 // Load previously selected elements from session storage 917 const storedElements = sessionStorage.getItem('gropulseSelectedElements'); 918 if (storedElements) { 919 try { 920 selectedElements = JSON.parse(storedElements); 921 updateSelectedElementsList(); 922 } catch (error) { 923 console.error('Error loading stored elements:', error); 924 } 925 } 926 927 // Make the modal draggable 928 makeElementDraggable(modal, document.querySelector('.gropulse-custom-event-modal-header')); 929 930 // Show the modal 931 modal.style.display = 'block'; 932 933 // Click event handlers 934 trackNewButton.addEventListener('click', function() { 935 if (isSelectionMode) { 936 // Cancel selection mode if active 937 disableSelectionMode(); 938 } else { 939 // Enable selection mode 940 enableSelectionMode(); 941 } 942 }); 943 finishSetupButton.addEventListener('click', finishSetup); 944 closeButton.addEventListener('click', closeModal); 945 946 function makeElementDraggable(element, handle) { 947 let pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0; 948 949 // Try to get saved position from session storage 950 const savedPosition = getSavedModalPosition(); 951 if (savedPosition) { 952 element.style.top = savedPosition.top + "px"; 953 element.style.left = savedPosition.left + "px"; 954 } 955 956 handle.onmousedown = dragMouseDown; 957 958 function dragMouseDown(e) { 959 e.preventDefault(); 960 pos3 = e.clientX; 961 pos4 = e.clientY; 962 document.onmouseup = closeDragElement; 963 document.onmousemove = elementDrag; 964 } 965 966 function elementDrag(e) { 967 e.preventDefault(); 968 pos1 = pos3 - e.clientX; 969 pos2 = pos4 - e.clientY; 970 pos3 = e.clientX; 971 pos4 = e.clientY; 972 973 // Calculate new position ensuring it stays within viewport 974 let newTop = element.offsetTop - pos2; 975 let newLeft = element.offsetLeft - pos1; 976 977 // Get viewport dimensions 978 const viewportWidth = window.innerWidth; 979 const viewportHeight = window.innerHeight; 980 981 // Limit to viewport boundaries 982 newTop = Math.max(0, Math.min(newTop, viewportHeight - 100)); 983 newLeft = Math.max(0, Math.min(newLeft, viewportWidth - 100)); 984 985 element.style.top = newTop + "px"; 986 element.style.left = newLeft + "px"; 987 988 // Save position to session storage 989 saveModalPosition(newTop, newLeft); 990 } 991 992 function closeDragElement() { 993 document.onmouseup = null; 994 document.onmousemove = null; 995 996 // Save final position 997 saveModalPosition(element.offsetTop, element.offsetLeft); 998 } 999 } 1000 1001 // Save modal position to session storage 1002 function saveModalPosition(top, left) { 1003 try { 1004 sessionStorage.setItem('gropulseModalPosition', JSON.stringify({ top, left })); 1005 } catch (error) { 1006 console.error('Error saving modal position:', error); 1007 } 1008 } 1009 1010 // Get saved modal position from session storage 1011 function getSavedModalPosition() { 1012 try { 1013 const position = sessionStorage.getItem('gropulseModalPosition'); 1014 return position ? JSON.parse(position) : null; 1015 } catch (error) { 1016 console.error('Error getting modal position:', error); 1017 return null; 1018 } 1019 } 1020 1021 function enableSelectionMode() { 1022 if (isSelectionMode) return; 1023 1024 isSelectionMode = true; 1025 trackNewButton.textContent = 'Cancel Selection'; 1026 trackNewButton.style.backgroundColor = '#f44336'; 1027 1028 // Create overlay
1029 overlay = document.createElement('div'); 1030 overlay.className = 'gropulse-page-overlay'; 1031 document.body.appendChild(overlay); 1032 1033 // Create highlight element 1034 highlightElement = document.createElement('div'); 1035 highlightElement.className = 'gropulse-highlight-element'; 1036 document.body.appendChild(highlightElement); 1037 1038 // Add event listeners for element selection 1039 document.addEventListener('mouseover', highlightTargetElement); 1040 document.addEventListener('click', selectElement, true); 1041 } 1042 1043 function disableSelectionMode() { 1044 if (!isSelectionMode) return; 1045 1046 isSelectionMode = false; 1047 trackNewButton.textContent = 'Track New Element'; 1048 trackNewButton.style.backgroundColor = '#4CAF50'; 1049 1050 // Remove overlay and highlight 1051 if (overlay) { 1052 document.body.removeChild(overlay); 1053 overlay = null; 1054 } 1055 1056 if (highlightElement) { 1057 document.body.removeChild(highlightElement); 1058 highlightElement = null; 1059 } 1060 1061 // Remove event listeners 1062 document.removeEventListener('mouseover', highlightTargetElement); 1063 document.removeEventListener('click', selectElement, true); 1064 } 1065 1066 // Helper function to update the list of selected elements 1067 function updateSelectedElementsList() { 1068 // Clear existing list 1069 selectedElementsList.innerHTML = ''; 1070 1071 // Update the header count 1072 selectedElementsHeader.textContent = `Selected Elements (${selectedElements.length})`; 1073 1074 // Add each element to the list 1075 selectedElements.forEach(element => { 1076 const li = document.createElement('li'); 1077 li.dataset.id = element.id; 1078 1079 const elementInfo = document.createElement('div'); 1080 elementInfo.className = 'gropulse-element-info'; 1081 elementInfo.textContent = `"${element.text}" (${element.selector})`; 1082 1083 const removeButton = document.createElement('span'); 1084 removeButton.className = 'gropulse-remove-element'; 1085 removeButton.textContent = 'â'; 1086 removeButton.addEventListener('click', function() {
1087 removeElementFromList(element.id); 1088 }); 1089 1090 li.appendChild(elementInfo); 1091 li.appendChild(removeButton); 1092 selectedElementsList.appendChild(li); 1093 }); 1094 1095 // Save to session storage 1096 sessionStorage.setItem('gropulseSelectedElements', JSON.stringify(selectedElements)); 1097 } 1098 1099 function highlightTargetElement(e) { 1100 if (!isSelectionMode) return; 1101 1102 // Don't highlight elements in the modal itself 1103 if (e.target.closest('#gropulse-custom-event-selector-modal')) { 1104 if (highlightElement) { 1105 highlightElement.style.display = 'none'; 1106 } 1107 return; 1108 } 1109 1110 const rect = e.target.getBoundingClientRect(); 1111 highlightElement.style.display = 'block'; 1112 highlightElement.style.width = rect.width + 'px'; 1113 highlightElement.style.height = rect.height + 'px'; 1114 highlightElement.style.left = (window.pageXOffset + rect.left) + 'px'; 1115 highlightElement.style.top = (window.pageYOffset + rect.top) + 'px'; 1116 } 1117 1118 function selectElement(e) { 1119 if (!isSelectionMode) return; 1120 1121 // Don't select elements in the modal itself 1122 if (e.target.closest('#gropulse-custom-event-selector-modal')) { 1123 return; 1124 } 1125 1126 // Prevent default action (like following links) 1127 e.preventDefault(); 1128 e.stopPropagation(); 1129 1130 // Generate a selector for the clicked element 1131 const selector = generateSelector(e.target); 1132 1133 // Add to selected elements list 1134 addElementToList(e.target, selector); 1135 1136 // Disable selection mode 1137 disableSelectionMode(); 1138 } 1139 1140 function generateSelector(element) { 1141 // First try ID selector if available 1142 if (element.id) { 1143 return `#${element.id}`; 1144 } 1145 1146 // Try with classes 1147 if (element.className && typeof element.className === 'string') { 1148 const classes = element.className.trim().split(/\s+/); 1149 if (classes.length > 0) { 1150 const classSelector = `.${classes.join('.')}`; 1151 if (document.querySelectorAll(classSelector).length === 1) { 1152 return classSelector; 1153 } 1154 } 1155 } 1156 1157 // Use tag name with nth-child 1158 let path = ''; 1159 let parent = element; 1160 1161 while (parent) { 1162 if (parent === document.body) { 1163 path = 'body ' + path; 1164 break; 1165 } 1166 1167 let tag = parent.tagName.toLowerCase(); 1168 let siblings = Array.from(parent.parentNode.children).filter(child => child.tagName === parent.tagName); 1169 1170 if (siblings.length > 1) { 1171 let index = siblings.indexOf(parent) + 1; 1172 tag += `:nth-child(${index})`; 1173 } 1174 1175 path = tag + (path ? ' > ' + path : ''); 1176 parent = parent.parentNode; 1177 1178 // Stop at a certain depth to avoid overly complex selectors 1179 if (path.split('>').length > 5) { 1180 break; 1181 } 1182 } 1183 1184 return path.trim(); 1185 } 1186 1187 function addElementToList(element, selector) { 1188 // Create a unique ID for this element 1189 const elementId = 'element-' + Date.now(); 1190 1191 // Add to our array 1192 selectedElements.push({ 1193 id: elementId, 1194 selector: selector, 1195 text: element.textContent.trim().substring(0, 50) || element.tagName.toLowerCase() 1196 }); 1197 1198 // Update the display 1199 updateSelectedElementsList(); 1200 } 1201
1202 function removeElementFromList(id) { 1203 // Remove from array 1204 selectedElements = selectedElements.filter(el => el.id !== id); 1205 1206 // Update the display 1207 updateSelectedElementsList(); 1208 } 1209 1210 function closeModal() { 1211 disableSelectionMode(); 1212 modal.style.display = 'none'; 1213 1214 // Clear setup mode and data but keep the modal position 1215 sessionStorage.removeItem('gropulseCustomEventSetupActive'); 1216 sessionStorage.removeItem('gropulseSelectedElements'); 1217 // We intentionally don't remove gropulseModalPosition here to persist it across sessions 1218 } 1219 1220 function finishSetup() { 1221 1222 // Check if we have elements selected 1223 if (selectedElements.length > 0) { 1224 // Clean up our internal tracking but keep the modal position 1225 sessionStorage.removeItem('gropulseCustomEventSetupActive'); 1226 sessionStorage.removeItem('gropulseSelectedElements'); 1227 // We intentionally don't remove gropulseModalPosition to persist it 1228 1229 // Redirect back to the app with selected elements as a URL parameter 1230 const savedRedirectUrl = sessionStorage.getItem('gropulseCustomEventRedirectUrl') || redirectUrl; 1231 1232 if (savedRedirectUrl) { 1233 // Encode selected elements for URL 1234 const encodedElements = encodeURIComponent(JSON.stringify(selectedElements)); 1235 1236 // Determine if we need to add a ? or & for the parameter 1237 const separator = savedRedirectUrl.includes('?') ? '&' : '?'; 1238 1239 // Redirect to the app with the selected elements in the URL 1240 window.location.href = `${savedRedirectUrl}${separator}selectedElements=${encodedElements}`; 1241 } 1242 } else { 1243 alert('Please select at least one element to track.'); 1244 } 1245 } 1246}); 1247</script>
1247 1248<!-- END app snippet --> 1249<!-- Google Tag Manager Head Tag Code Start --> 1250
1250<script> 1251 sessionStorage.setItem('gropulseGTMId', "GTM-MP7SBCSF" ); 1252 sessionStorage.setItem('gropulseGTMPlanName', "monthly" ); 1253 sessionStorage.setItem("gropulseGTMEventListData", JSON.stringify({"trackingPurchase":true,"trackingAddToCart":true,"trackingRemoveFromCart":true,"trackingSingleProductPage":true,"trackingCollectionPage":true,"initiateCheckout":true,"serverEvents":{"serverPurchase":false,"serverAddToCart":false,"serverCollectionPage":false,"serverCheckout":false}})); 1254 sessionStorage.setItem("gropulseGTMServerType", "direct"); 1255 sessionStorage.setItem("gropulseGTMMeasurementId", "G-0T338NPF4H"); 1256 sessionStorage.setItem("gropulseGTMShopName", "bman-romania.myshopify.com"); 1257 sessionStorage.setItem("gropulseGTMLinkedInConfig", JSON.stringify(null)); 1258 sessionStorage.setItem("gropulseGTMConsentTrackingGiven", "false"); 1259 sessionStorage.setItem("gropulseGTMWebPixelActivated", "true");sessionStorage.setItem("gropulseGTMEnhancedConversion", JSON.stringify({"enabled":false,"events":{"purchase":true,"add_to_cart":false,"begin_checkout":false,"view_item":false,"page_view":false,"search":false},"ga4UserIdEnabled":true}));sessionStorage.setItem("gropulseGTMCustomEvents", "");window.groPulseGTMDatalayer = window.groPulseGTMDatalayer || []; 1260 1261 function gtmGtag(){ 1262 window.groPulseGTMDatalayer.push(arguments); 1263 }
vendor: 474 bytes, lines 1263-1278
1263 1264 1265 1266 1267 (function(w, d, s, l, i) { 1268 w[l] = w[l] || []; 1269 w[l].push({"gtm.start": new Date().getTime(), event: "gtm.js"}); 1270 var f = d.getElementsByTagName(s)[0], 1271 j = d.createElement(s), 1272 dl = l != "dataLayer" 1273 ? "&l=" + l 1274 : ""; 1275 j.async = true; 1276 j.src = "https://www.googletagmanager.com/gtm.js?id=" + i + dl; 1277 f.parentNode.insertBefore(j, f); 1278 })(window, document, "script", "groPulseGTMDatalayer", "
1278GTM-MP7SBCSF
vendor: 22 bytes, lines 1278-1282
1278"); 1279 1280 1281 1282
1282window.Shopify.loadFeatures([ 1283 { 1284 name: "consent-tracking-api", 1285 version: "0.1" 1286 } 1287 ], (error) => { 1288 if (error) { 1289 console.error("Error loading consent-tracking-api feature:", error); 1290 } 1291 1292 const consentTrackingGiven = false; 1293 1294 if(!consentTrackingGiven){ 1295 const event = new Event("gtm_start_tracking"); 1296 window.dispatchEvent(event); 1297 return; 1298 } 1299 1300 const trackingConsentStatus = Shopify?.customerPrivacy?.getTrackingConsent?.() ?? 'no_interaction'; 1301 const hasExplicitConsent = trackingConsentStatus !== 'no_interaction'; 1302 1303 // Only update consent and start tracking if user has explicitly interacted with consent banner 1304 if (hasExplicitConsent) { 1305 const marketingAllowed = Shopify?.customerPrivacy?.marketingAllowed() ?? false; 1306 const analyticsAllowed = Shopify?.customerPrivacy?.analyticsProcessingAllowed() ?? false; 1307 1308 gtmGtag('consent', 'update', { 1309 'ad_storage': marketingAllowed ? 'granted' : 'denied', 1310 'ad_user_data': marketingAllowed ? 'granted' : 'denied', 1311 'ad_personalization': marketingAllowed ? 'granted' : 'denied', 1312 'analytics_storage': analyticsAllowed ? 'granted' : 'denied' 1313 }); 1314 1315 // Start tracking only after user has previously consented 1316 const trackingEvent = new Event("gtm_start_tracking"); 1317 window.dispatchEvent(trackingEvent); 1318 } 1319 1320 document.addEventListener("visitorConsentCollected", (event) => { 1321 const marketingAllowed = event.detail.marketingAllowed; 1322 const analyticsAllowed = event.detail.analyticsAllowed; 1323 1324 gtmGtag('consent', 'update', { 1325 'ad_storage': marketingAllowed ? 'granted' : 'denied', 1326 'ad_user_data': marketingAllowed ? 'granted' : 'denied', 1327 'ad_personalization': marketingAllowed ? 'granted' : 'denied', 1328 'analytics_storage': analyticsAllowed ? 'granted' : 'denied' 1329 }); 1330 1331 // Start tracking after user interacts with consent banner 1332 const trackingEvent = new Event("gtm_start_tracking"); 1333 window.dispatchEvent(trackingEvent); 1334 }); 1335 }); 1336 </script>
1336 1337 <!-- Google Tag Manager Head Tag Code End --> 1338 1339 <!-- Google Tag Manager Noscript Code Start -->
vendor: 81 bytes, lines 1339-1342
1339 1340 <noscript> 1341 <iframe 1342 src="https://www.googletagmanager.com/ns.html?id=
1342GTM-MP7SBCSF
vendor: 106 bytes, lines 1342-1347
1342" 1343 height="0" 1344 width="0" 1345 style="display:none;visibility:hidden"></iframe> 1346 </noscript> 1347
1347<!-- Google Tag Manager Noscript Code End -->
1347<script> 1348 // Initialize dataLayer 1349 1350 1351 const linkedinConfig = null; 1352 1353 function getGA4ClientId() { 1354 try { 1355 const cookies = document.cookie.split(';'); 1356 for (const cookie of cookies) { 1357 const trimmedCookie = cookie.trim(); 1358 if (trimmedCookie.startsWith('_ga=')) { 1359 const parts = trimmedCookie.substring(4).split('.'); 1360 return parts.slice(2).join('.'); 1361 } 1362 } 1363 } catch(e) { 1364 console.error('Error getting GA4 client ID:', e); 1365 } 1366 return null; 1367 } 1368 1369 function getGA4SessionId(measurementId) { 1370 try { 1371 const normalizedId = measurementId.replace('G-', ''); 1372 const cookieName = `_ga_${normalizedId}`; 1373 1374 const cookies = document.cookie.split(';'); 1375 for (const cookie of cookies) { 1376 const trimmedCookie = cookie.trim(); 1377 if (trimmedCookie.startsWith(`${cookieName}=`)) { 1378 const cookieValue = trimmedCookie.substring(cookieName.length + 1); 1379 const sessionInfo = cookieValue.split('.')[2]; 1380 1381 if (sessionInfo) { 1382 return sessionInfo.split('$')[0].substring(1); 1383 } 1384 } 1385 } 1386 } catch(e) { 1387 console.error('Error getting GA4 session ID:', e); 1388 } 1389 return null; 1390 } 1391 1392 function collectGA4Data() { 1393 const measurementId = "G-0T338NPF4H"; 1394 const clientId = getGA4ClientId(); 1395 const sessionId = getGA4SessionId(measurementId); 1396 1397 if (clientId || sessionId) { 1398 localStorage.setItem('gropulse_gtm_sse', JSON.stringify({ 1399 client_id: clientId, 1400 session_id: sessionId, 1401 timestamp: Date.now() 1402 })); 1403 } 1404 } 1405 1406 function getCookie(name) { 1407 let cookie = {}; 1408 document.cookie.split(";").forEach(function (el) { 1409 let [k, v] = el.split("="); 1410 cookie[k.trim()] = v; 1411 }); 1412 return cookie[name]; 1413 } 1414 1415 function getFacebookBrowserParams() { 1416 let fbp = getCookie("_fbp") || null; 1417 let fbc = getCookie("_fbc") || null; 1418 1419 if (!fbc && window.location.search.includes("fbclid=")) { 1420 const urlParams = new URLSearchParams(window.location.search); 1421 const fbclidValue = urlParams.get("fbclid"); 1422 if (fbclidValue) { 1423 fbc = `fb.1.${Date.now()}.${fbclidValue}`; 1424 } 1425 } 1426 1427 return { fbp, fbc }; 1428 } 1429 1430 function getTiktokBrowserParams() { 1431 let ttp = getCookie("_ttp") || null; 1432 let ttclid = getCookie("ttclid") || null; 1433 1434 return { ttp, ttclid }; 1435 } 1436 1437 function getShopifyUniqueId() { 1438 let shopify_y = document.cookie 1439 .split(";") 1440 .filter((c) => c.includes("_shopify_y=")) 1441 .map((c) => c.split("_shopify_y=")[1]); 1442 1443 return (shopify_y.length && shopify_y[0]) || ""; 1444 } 1445 1446 function collectBrowserCookies() { 1447 const { fbp, fbc } = getFacebookBrowserParams(); 1448 const { ttp, ttclid } = getTiktokBrowserParams(); 1449 const shopifyUniqueId = getShopifyUniqueId(); 1450 1451 // Store browser cookies in localStorage for webpixel access 1452 if (fbp) localStorage.setItem("_fbp", fbp); 1453 if (fbc) localStorage.setItem("_fbc", fbc); 1454 if (ttp) localStorage.setItem("_ttp", ttp); 1455 if (ttclid) localStorage.setItem("ttclid", ttclid); 1456 if (shopifyUniqueId) localStorage.setItem("_shopify_y", shopifyUniqueId); 1457 } 1458 1459 window.addEventListener('load', () => { 1460 collectGA4Data(); 1461 collectBrowserCookies(); 1462 }); 1463 1464 window.isServerEventEnabled = function(event) { 1465 try { 1466 const gropulseGTMEventListData = {"trackingPurchase":true,"trackingAddToCart":true,"trackingRemoveFromCart":true,"trackingSingleProductPage":true,"trackingCollectionPage":true,"initiateCheckout":true,"serverEvents":{"serverPurchase":false,"serverAddToCart":false,"serverCollectionPage":false,"serverCheckout":false}}; 1467 if (!gropulseGTMEventListData?.serverEvents) return false; 1468 1469 const eventMapping = { 1470 "purchase": "serverPurchase", 1471 "begin_checkout": "serverCheckout", 1472 "add_to_cart": "serverAddToCart", 1473 "view_item_list": "serverCollectionPage" 1474 }; 1475 1476 const mappedEvent = eventMapping[event]; 1477 return mappedEvent ? !!gropulseGTMEventListData.serverEvents[mappedEvent] : false;
1478 } catch (error) { 1479 console.error("Error in isServerEventEnabled:", error); 1480 return false; 1481 } 1482 }; 1483 1484 window.generateEventId = function() { 1485 const key = 'gropulseGTMEventId'; 1486 1487 const eventId = `${Math.floor(Date.now())}_${Math.random().toString(36).slice(2, 8)}`; 1488 sessionStorage.setItem(key, eventId); 1489 1490 return eventId; 1491 }; 1492 1493 window.getLinkedInConversionIds = function(eventName) { 1494 return linkedinConfig?.conversionEvents?.[eventName] || ""; 1495 }// Customer data rendered server-side â null-safe defaults. 1496 window.gropulseGTMCustomerData = { 1497 email: "", 1498 phone: "", 1499 first_name: "", 1500 last_name: "", 1501 address1: "", 1502 city: "", 1503 province: "", 1504 province_code:"", 1505 zip: "", 1506 country_code: "" 1507 }; 1508 window.gropulseGTMCustomerId = ""; 1509 window.gropulseGTMShopDomain = "bman-romania.myshopify.com"; 1510 1511 window.gropulseGetEnhancedConversionConfig = function() { 1512 try { 1513 const raw = sessionStorage.getItem("gropulseGTMEnhancedConversion"); 1514 return raw ? JSON.parse(raw) : null; 1515 } catch (e) { 1516 return null; 1517 } 1518 }; 1519 1520 window.gropulseIsMarketingAllowed = function() { 1521 try { 1522 if (typeof window.Shopify?.customerPrivacy?.marketingAllowed === "function") { 1523 return window.Shopify.customerPrivacy.marketingAllowed(); 1524 } 1525 } catch (e) {} 1526 // If consent state is indeterminate, default to allow (matches existing tracking behaviour). 1527 return true; 1528 }; 1529 1530 window.gropulseBuildUserData = function(eventType) { 1531 try { 1532 const cfg = window.gropulseGetEnhancedConversionConfig(); 1533 if (!cfg || !cfg.enabled) return null; 1534 if (!cfg.events || !cfg.events[eventType]) return null; 1535 // Consent enforcement is delegated to Google Consent Mode v2 downstream. 1536 // Shopify's `marketingAllowed` returns false both when the customer 1537 // denied AND when they haven't interacted with the consent banner yet, 1538 // so gating here over-blocks. Google's tags respect `ad_user_data` / 1539 // `ad_personalization` signals and drop user_data on their own. 1540 1541 const c = window.gropulseGTMCustomerData || {}; 1542 const norm = function(v) { 1543 if (v == null) return null; 1544 const s = String(v).trim().toLowerCase(); 1545 return s.length ? s : null; 1546 }; 1547 const e164 = function(v) { 1548 if (!v) return null; 1549 const cleaned = String(v).replace(/\s|-|\(|\)/g, ""); 1550 return /^\+[1-9]\d{9,13}$/.test(cleaned) && cleaned.length >= 11 && cleaned.length <= 15 1551 ? cleaned 1552 : null; 1553 }; 1554 1555 const userData = {}; 1556 const email = norm(c.email); 1557 if (email) userData.email = email; 1558 const phone = e164(c.phone); 1559 if (phone) userData.phone_number = phone; 1560 1561 const address = {}; 1562 const firstName = norm(c.first_name); 1563 const lastName = norm(c.last_name); 1564 const street = norm(c.address1); 1565 const city = norm(c.city); 1566 const region = norm(c.province_code || c.province); 1567 const postalCode = norm(c.zip); 1568 const country = norm(c.country_code); 1569 if (firstName) address.first_name = firstName; 1570 if (lastName) address.last_name = lastName; 1571 if (street) address.street = street; 1572 if (city) address.city = city; 1573 if (region) address.region = region; 1574 if (postalCode) address.postal_code = postalCode; 1575 if (country) address.country = country; 1576 if (Object.keys(address).length) userData.address = address; 1577 1578 if (!userData.email && !userData.phone_number) return null; 1579 return userData; 1580 } catch (e) { 1581 return null; 1582 } 1583 }; 1584 1585 // GA4 user_id â SHA-256(shopDomain:customerId), first 16 hex, cached. 1586 window.gropulseGTMUserIdCache = null; 1587 (async function primeGropulseUserId() { 1588 try { 1589 if (!window.gropulseGTMCustomerId) return; 1590 if (!window.crypto || !window.crypto.subtle) return; 1591 const input = new TextEncoder().encode( 1592 window.gropulseGTMShopDomain + ":" + window.gropulseGTMCustomerId 1593 ); 1594 const buf = await window.crypto.subtle.digest("SHA-256", input); 1595 const hex = Array.from(new Uint8Array(buf)) 1596 .map(function(b) { return b.toString(16).padStart(2, "0"); }) 1597 .join(""); 1598 window.gropulseGTMUserIdCache = hex.slice(0, 16); 1599 } catch (e) {} 1600 })(); 1601 1602 window.gropulseGetUserId = function() { 1603 const cfg = window.gropulseGetEnhancedConversionConfig(); 1604 if (!cfg || cfg.ga4UserIdEnabled === false) return null; 1605 // Consent gate delegated to Google Consent Mode v2 downstream. 1606 return window.gropulseGTMUserIdCache || null; 1607 }; 1608 1609 window.gropulseAttachEnhancedConversionData = function(eventData, eventType) { 1610 const ud = window.gropulseBuildUserData(eventType); 1611 const uid = window.gropulseGetUserId(); 1612 if (ud) eventData.user_data = ud; 1613 if (uid) eventData.user_id = uid; 1614 return eventData; 1615 }; 1616 1617 window.sendToServerSideEndpoint = function (eventName, standardizedData, eventId) { 1618 const { fbp, fbc } = getFacebookBrowserParams(); 1619 const { ttp, ttclid } = getTiktokBrowserParams(); 1620 const shopifyUniqueId = getShopifyUniqueId(); 1621 1622 const sseData = JSON.parse(localStorage.getItem("gropulse_gtm_sse")); 1623 const requestBody = { 1624 event: eventName, 1625 event_id: eventId, 1626 shop_domain: "bman-romania.myshopify.com", 1627 timestamp: Math.floor(Date.now() / 1000), 1628 user_agent: navigator.userAgent, 1629 url: document.referrer || location.href, 1630 client_ip: null, // Will be set by server 1631 1632 // Browser/tracking data 1633 browser_data: { 1634 fbp: fbp, 1635 fbc: fbc, 1636 shopify_unique_id: shopifyUniqueId, 1637 ga4_client_id: sseData?.client_id, 1638 ga4_session_id: sseData?.session_id, 1639 ttp: ttp, 1640 ttclid: ttclid, 1641 }, 1642 1643 // Customer data (would be populated if available) 1644 customer_data: { 1645 email: "", 1646 first_name: "", 1647 last_name: "", 1648 phone: "", 1649 gender: "", 1650 date_of_birth: "", 1651 city: "", 1652 state: "", 1653 zip: "", 1654 country: "", 1655 }, 1656 1657 // Event-specific data in standardized format 1658 event_data: standardizedData, 1659 }; 1660 1661 fetch('https://gtm.gropulse.com/server-side-events', { 1662 method: "POST", 1663 headers: { 1664 "Content-Type": "application/json", 1665 }, 1666 mode: "cors", 1667 body: JSON.stringify(requestBody), 1668 }).catch((error) => { 1669 console.error("Error sending server-side event:", error); 1670 }); 1671 } 1672 1673</script>
vendor: 1 bytes, line 1673
1673
1674<script> 1675 function htSGTMCheckCart() { 1676 1677 /** 1678 * 1679 * @param {Array} dataList 1680 * @param {Object} singleData 1681 */ 1682 const isDataUseable = (dataList, checkData) => { 1683 if (dataList.length === 0) 1684 return checkData; 1685 1686 for (let index = 0; index < dataList.length; index++) { 1687 const singleData = dataList[index]; 1688 if (singleData.id === checkData.id) { 1689 if (checkData.quantity > singleData.quantity) { 1690 const newData = { 1691 ...checkData, 1692 quantity: checkData.quantity - singleData.quantity 1693 }; 1694 return newData; 1695 } else { 1696 return false; 1697 } 1698 } 1699 } 1700 return checkData; 1701 }; 1702 1703 /** 1704 * 1705 * @param {Array} localStoreData 1706 * @param {Array} newFetchData 1707 */ 1708 const checkAddToACart = (localStoreData, newFetchData) => { 1709 return newFetchData.map((singleFetchData) => isDataUseable(localStoreData, singleFetchData)).filter(Boolean); 1710 }; 1711 1712 /** 1713 * 1714 * @param {Array} localStoreData 1715 * @param {Array} newFetchData 1716 */ 1717 const checkRemoveFromACart = (localStoreData, newFetchData) => { 1718 return localStoreData.map((singleLocalStoreData) => isDataUseable(newFetchData, singleLocalStoreData)).filter(Boolean); 1719 }; 1720 1721 const addToCartFire = (cartData) => { 1722 const dataLayerItems = cartData.map((singleCartData, i) => { 1723 return { 1724 item_name: singleCartData.product_title, 1725 item_id: singleCartData.product_id, 1726 variant_id: singleCartData.variant_id, 1727 price: singleCartData.price / 100, 1728 currency: Shopify.currency.active, 1729 item_variant: singleCartData.variant_title, 1730 quantity: singleCartData.quantity, 1731 index: i + 1, 1732 item_brand: singleCartData.vendor, 1733 sku: singleCartData.sku 1734 }; 1735 }); 1736 1737 const eventName = "add_to_cart"; 1738 const eventId = window.generateEventId(); 1739 const eventData = { 1740 event: eventName, 1741 server_side_event: window.isServerEventEnabled(eventName) || false, 1742 event_id: eventId, 1743 linkedin_conversion_ids: window.getLinkedInConversionIds(eventName), 1744 ecommerce: { 1745 items: dataLayerItems 1746 } 1747 }; 1748 1749 window.gropulseAttachEnhancedConversionData(eventData, "add_to_cart"); 1750 1751 groPulseGTMDatalayer.push({ecommerce: null}); 1752 groPulseGTMDatalayer.push(eventData); 1753 }; 1754 1755 const removeFromCartFire = (cartData) => { 1756 const dataLayerItems = cartData.map((singleCartData, i) => { 1757 return { 1758 item_name: singleCartData.product_title, 1759 item_id: singleCartData.product_id, 1760 variant_id: singleCartData.variant_id, 1761 price: singleCartData.price / 100, 1762 currency: Shopify.currency.active, 1763 item_variant: singleCartData.variant_title, 1764 quantity: singleCartData.quantity, 1765 index: i + 1, 1766 item_brand: singleCartData.vendor, 1767 sku: singleCartData.sku 1768 }; 1769 }); 1770 1771 const eventName = "remove_from_cart"; 1772 const eventId = window.generateEventId(); 1773 const eventData = { 1774 event: eventName, 1775 server_side_event: window.isServerEventEnabled(eventName) || false, 1776 event_id: eventId, 1777 ecommerce: { 1778 items: dataLayerItems 1779 } 1780 }; 1781 groPulseGTMDatalayer.push({ecommerce: null}); 1782 groPulseGTMDatalayer.push(eventData); 1783 } 1784 1785 window.addEventListener("gtm_start_tracking", (event) => { 1786 setInterval(function() { 1787 fetch("/cart.js").then((response) => response.json()).then((data) => { 1788 const lsData = JSON.parse(localStorage.getItem("ht-sgtm-cart-data")) || []; 1789 const fetchData = data.items;const addToCart = checkAddToACart(lsData, fetchData); 1790 addToCart.length !== 0 && addToCartFire(addToCart);const removeFromCart = checkRemoveFromACart(lsData, fetchData); 1791 removeFromCart.length !== 0 && removeFromCartFire(removeFromCart);localStorage.setItem("ht-sgtm-cart-data", JSON.stringify(fetchData)); 1792 }); 1793 }, 3000); 1794 }); 1795 } 1796 const isGroPulseGTMWebPixelLoaded = Boolean(sessionStorage.getItem("isGroPulseGTMWebPixelLoaded")); 1797 1798 if(!isGroPulseGTMWebPixelLoaded) { 1799 htSGTMCheckCart() 1800 }; 1801 1802</script>
1802<script> 1803 function generateEventId() { 1804 return `${Date.now()}_${Math.random().toString(36).slice(2, 11)}`; 1805 } 1806 1807 function setupCustomEventTracking() { 1808 const customEventsStr = sessionStorage.getItem("gropulseGTMCustomEvents"); 1809 1810 if (!customEventsStr) return; 1811 1812 try { 1813 const customEvents = JSON.parse(customEventsStr); 1814 if (!customEvents || !Array.isArray(customEvents)) return; 1815 1816 customEvents.forEach(event => { 1817 if (!event.isActive) return; 1818 1819 const elements = document.querySelectorAll(event.selector); 1820 if (!elements || elements.length === 0) return; 1821 1822 elements.forEach(element => { 1823 element.addEventListener('click', function(e) { 1824 // Prevent default if it's a link or button 1825 if (element.tagName === 'A' || element.tagName === 'BUTTON') { 1826 e.preventDefault(); 1827 } 1828 1829 // Generate event ID for deduplication 1830 const eventId = generateEventId(); 1831 1832 // Create event parameters 1833 const eventParams = event.eventParameters || {}; 1834 1835 // Publish to web pixel for handling 1836 window.Shopify = window.Shopify || {}; 1837 window.Shopify.analytics = window.Shopify.analytics || {}; 1838 window.Shopify.analytics.publish = window.Shopify.analytics.publish || function() {}; 1839 1840 window.Shopify.analytics.publish("custom_event", { 1841 event_name: event.eventName, 1842 event_id: eventId, 1843 event_parameters: eventParams, 1844 timestamp: Date.now() 1845 }); 1846 1847 // If it was a link, navigate after a short delay 1848 if (element.tagName === 'A' && element.href) { 1849 setTimeout(() => { 1850 window.location.href = element.href; 1851 }, 300); 1852 } 1853 }); 1854 }); 1855 }); 1856 } catch (error) { 1857 console.error('Error setting up custom events:', error); 1858 } 1859 } 1860 1861 window.addEventListener("load", setupCustomEventTracking); 1862</script>
1862<script> 1863 window.isGroPulseCheckoutButtonClicked = false; 1864 window.addEventListener("gtm_start_tracking", (event) => { 1865 (function() { 1866 function fireInitiateCheckout(catData) { 1867 const eventId = window.generateEventId(); 1868 const eventName = "begin_checkout"; 1869 const eventData = { 1870 event: eventName, 1871 server_side_event: window.isServerEventEnabled(eventName) || false, 1872 event_id: eventId, 1873 linkedin_conversion_ids: window.getLinkedInConversionIds(eventName), 1874 ecommerce: { 1875 items: catData.items.map( 1876 (item, index) => ({ 1877 item_id: item.product_id, 1878 variant_id: item.variant_id, 1879 item_name: item.product_title, 1880 currency: catData.currency, 1881 index: index, 1882 item_variant: item.variant_title, 1883 price: item.price / 100, 1884 quantity: item.quantity, 1885 item_brand: item.vendor 1886 }) 1887 ) 1888 } 1889 }; 1890 1891 window.gropulseAttachEnhancedConversionData(eventData, "begin_checkout"); 1892 1893 groPulseGTMDatalayer.push({ecommerce: null}); 1894 groPulseGTMDatalayer.push(eventData); 1895 1896 if (window.isServerEventEnabled(eventName)) { 1897 const standardizedData = { 1898 type: "begin_checkout", 1899 currency: Shopify.currency.active || "USD", 1900 value: eventData.ecommerce.items.reduce( 1901 (total, item) => total + item.quantity * item.price, 1902 0 1903 ), 1904 products: eventData.ecommerce.items.map((item) => ({ 1905 ...item, 1906 id: item.item_id, 1907 name: item.item_name, 1908 brand: item.item_brand, 1909 })), 1910 coupon: "", 1911 total_quantity: eventData.ecommerce.items.reduce( 1912 (total, item) => total + item.quantity, 1913 0 1914 ), 1915 }; 1916 window.sendToServerSideEndpoint(eventName, standardizedData, eventId); 1917 } 1918 } 1919 1920 function checkoutButtonClickHandler() { 1921 const isGroPulseGTMWebPixelLoaded = Boolean(sessionStorage.getItem("isGroPulseGTMWebPixelLoaded")); 1922 if (!window.isGroPulseCheckoutButtonClicked && !isGroPulseGTMWebPixelLoaded) { 1923 window.isGroPulseCheckoutButtonClicked = true; 1924 fetch("/cart.js").then((response) => response.json()).then((data) => { 1925 fireInitiateCheckout(data); 1926 }); 1927 } 1928 1929 } 1930 1931 window.hso_checkoutButtonClickHandler = checkoutButtonClickHandler; 1932 1933 function setCheckoutButtonEvent() { 1934 if (document.querySelectorAll("[name='checkout']").length !== 0) { 1935 document.querySelectorAll("[name='checkout']").forEach(singleButton => { 1936 singleButton.addEventListener("click", checkoutButtonClickHandler); 1937 }) 1938 } 1939 if (document.querySelectorAll("[href='/checkout']").length !== 0) { 1940 document.querySelectorAll("[href='/checkout']").forEach(singleButton => { 1941 singleButton.addEventListener("click", checkoutButtonClickHandler); 1942 }) 1943 } 1944 1945 } 1946 1947 setCheckoutButtonEvent(); 1948 1949 const targetNode = document.body; 1950 const config = { 1951 attributes: true, 1952 childList: true, 1953 subtree: true 1954 }; 1955 const callback = function(mutationsList, observer) { 1956 setCheckoutButtonEvent() 1957 }; 1958 1959 const observer = new MutationObserver(callback); 1960 observer.observe(targetNode, config); 1961 1962 })(); 1963 }); 1964 </script>
1964<!-- END app block --><!-- BEGIN app block: shopify://apps/microsoft-clarity/blocks/clarity_js/31c3d126-8116-4b4a-8ba1-baeda7c4aeea -->
1965<script type="text/javascript"> 1966 (function (c, l, a, r, i, t, y) { 1967 c[a] = c[a] || function () { (c[a].q = c[a].q || []).push(arguments); }; 1968 t = l.createElement(r); t.async = 1; t.src = "https://www.clarity.ms/tag/" + i + "?ref=shopify"; 1969 y = l.getElementsByTagName(r)[0]; y.parentNode.insertBefore(t, y); 1970 1971 c.Shopify.loadFeatures([{ name: "consent-tracking-api", version: "0.1" }], error => { 1972 if (error) { 1973 console.error("Error loading Shopify features:", error); 1974 return; 1975 } 1976 1977 c[a]('consentv2', { 1978 ad_Storage: c.Shopify.customerPrivacy.marketingAllowed() ? "granted" : "denied", 1979 analytics_Storage: c.Shopify.customerPrivacy.analyticsProcessingAllowed() ? "granted" : "denied", 1980 source: 101, 1981 }); 1982 }); 1983 1984 l.addEventListener("visitorConsentCollected", function (e) { 1985 c[a]('consentv2', { 1986 ad_Storage: e.detail.marketingAllowed ? "granted" : "denied", 1987 analytics_Storage: e.detail.analyticsAllowed ? "granted" : "denied", 1988 source: 101, 1989 }); 1990 }); 1991 })(window, document, "clarity", "script", "w4fxkmo9a1"); 1992</script>
1992 1993 1994 1995 1996<!-- END app block --><meta property="og:image" content="https://cdn.shopify.com/s/files/1/0126/3357/1392/files/BMan_logo_-01.png?height=628&pad_color=ffffff&v=1613183238&width=1200" /> 1997<meta property="og:image:secure_url" content="https://cdn.shopify.com/s/files/1/0126/3357/1392/files/BMan_logo_-01.png?height=628&pad_color=ffffff&v=1613183238&width=1200" /> 1998<meta property="og:image:width" content="1200" /> 1999<meta property="og:image:height" content="628" /> 2000<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
2001<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: 12633571392,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 2001
2001
2002<script> 2003 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 2004</script>
vendor: 1 bytes, line 2004
2004
2005<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}
2005).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: 12633571392,storefrontBaseUrl: "https://www.bman.ro",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.bman.ro/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b"],webPixelsConfigList: [{"id":"4279959881","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"AW-859498888\\\"],\\\"target_country\\\":\\\"ZZ\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"AW-859498888\\\/YSy6CK-5-tccEIjT65kD\\\",\\\"AW-859498888\\\",\\\"G-0T338NPF4H\\\"]},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"AW-859498888\\\/t5H4COnkkdgcEIjT65kD\\\",\\\"AW-859498888\\\",\\\"G-0T338NPF4H\\\"]},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"AW-859498888\\\/sL47CObkkdgcEIjT65kD\\\",\\\"AW-859498888\\\",\\\"G-0T338NPF4H\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"AW-859498888\\\/DHq9CKy5-tccEIjT65kD\\\",\\\"AW-859498888\\\/dqfiCIed_ZwBEIjT65kD\\\",\\\"AW-859498888\\\",\\\"G-0T338NPF4H\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"AW-859498888\\\/vYbVCLW5-tccEIjT65kD\\\",\\\"AW-859498888\\\",\\\"G-0T338NPF4H\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"AW-859498888\\\/EYUQCOzkkdgcEIjT65kD\\\",\\\"AW-859498888\\\",\\\"G-0T338NPF4H\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"AW-859498888\\\/5R4fCLK5-tccEIjT65kD\\\",\\\"AW-859498888\\\",\\\"G-0T338NPF4H\\\"]}],\\\"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":"4260725065","configuration":"{\"businessId\":\"25C8AE82E809133E1E726B71\",\"environment\":\"production\",\"debug\":\"false\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"5a8ca3d2c8c198d27ce52b5826353789","type":"APP","apiClientId":861484,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"}
2005,{"id":"4196467017","configuration":"{\"swymApiEndpoint\":\"https:\/\/swymstore-v3pro-01.swymrelay.com\",\"swymTier\":\"v3pro-01\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"5b6f6917e306bc7f24523662663331c0","type":"APP","apiClientId":1350849,"privacyPurposes":["ANALYTICS","MARKETING","PREFERENCES"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"3653566793","configuration":"{\"shop\":\"bman-romania.myshopify.com\",\"apiKey\":\"29ae53b3b51f0c8439bc21cab5c28004\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"ca6e50fb91d8760604cebf1969119d7c","type":"APP","apiClientId":9876439041,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"3563061577","configuration":"{\"projectId\":\"w4fxkmo9a1\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"d8a2bb2ccbb513dc8e8b6937f4b8033e","type":"APP","apiClientId":240074326017,"privacyPurposes":[],"capabilities":["advanced_dom_events"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"3071181129","configuration":"{\"accountID\":\"XRSPQ9\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"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":"1664844105","configuration":"{\"pixelCode\":\"C7PQVJ5GL1ARI64QM7I0\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"22e92c2ad45662f435e4801458fb78cc","type":"APP","apiClientId":4383523,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1392050505","configuration":"{\"accountID\":\"1234\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"cc48da08b7b2a508fd870862c215ce5b","type":"APP","apiClientId":4659545,"privacyPurposes":["PREFERENCES"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"196378953","configuration":"{\"tagID\":\"2613677639655\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7ae565e198624b39e0856d352b9a6b4c","type":"APP","apiClientId":3009811,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"84443465","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"7","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"GTM"},{"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":"BMan.ro","paymentSettings":{"currencyCode":"RON"},"myshopifyDomain":"bman-romania.myshopify.com","countryCode":"RO","storefrontUrl":"https:\/\/www.bman.ro"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://www.bman.ro/cdn","7ec887c8w14f9f074p854094e1m1370c602",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"131581116575","themePublished":"true","eventMetadataId":"7c47a7bc-09bc-490b-bf4f-62ebf7332f91","pageType":"cart","shopId":"12633571392","storefrontBaseUrl":"https:\/\/www.bman.ro","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"7ec887c8w14f9f074p854094e1m1370c602","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
2005<script> 2006 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 2007 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 2008 window.ShopifyAnalytics.meta.currency = 'RON'; 2009 var meta = {"page":{"pageType":"cart","requestId":"66e87a31-d5d9-4c43-b174-11d6d243ea5d-1791406525"}}; 2010 for (var attr in meta) { 2011 window.ShopifyAnalytics.meta[attr] = meta[attr]; 2012 } 2013</script>
vendor: 1 bytes, line 2013
2013
2014<script class="analytics"> 2015 (function () { 2016 var customDocumentWrite = function(content) { 2017 var jquery = null; 2018 2019 if (window.jQuery) { 2020 jquery = window.jQuery; 2021 } else if (window.Checkout && window.Checkout.$) { 2022 jquery = window.Checkout.$; 2023 } 2024 2025 if (jquery) { 2026 jquery('body').append(content); 2027 } 2028 }; 2029 2030 var hasLoggedConversion = function(token) { 2031 if (token) { 2032 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 2033 } 2034 return false; 2035 } 2036 2037 var setCookieIfConversion = function(token) { 2038 if (token) { 2039 var twoMonthsFromNow = new Date(Date.now()); 2040 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 2041 2042 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 2043 } 2044 } 2045 2046 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 2047 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 2048 if (trekkie.integrations) { 2049 return; 2050 } 2051 trekkie.methods = [ 2052 'identify', 2053 'page', 2054 'ready', 2055 'track', 2056 'trackForm', 2057 'trackLink' 2058 ]; 2059 trekkie.factory = function(method) { 2060 return function() { 2061 var args = Array.prototype.slice.call(arguments); 2062 args.unshift(method); 2063 trekkie.push(args); 2064 if (method == 'track' || method == 'page') { 2065 var pageUrl; 2066 try { 2067 pageUrl = window.location.href; 2068 } catch (e) {} 2069 var pageReferrer; 2070 try { 2071 pageReferrer = document.referrer; 2072 } catch (e) {} 2073 try { 2074 if (window.__TREKKIE_SHIM_QUEUE == null) { 2075 window.__TREKKIE_SHIM_QUEUE = []; 2076 } 2077 window.__TREKKIE_SHIM_QUEUE.push({ 2078 from: 'trekkie-stub', 2079 method: method, 2080 args: args.slice(1), 2081 pageContext: { 2082 url: pageUrl, 2083 referrer: pageReferrer 2084 } 2085 }); 2086 } catch (e) { 2087 // no-op 2088 } 2089 } 2090 return trekkie; 2091 }; 2092 }; 2093 for (var i = 0; i < trekkie.methods.length; i++) { 2094 var key = trekkie.methods[i]; 2095 trekkie[key] = trekkie.factory(key); 2096 } 2097 trekkie.load = function(config) { 2098 trekkie.config = config || {}; 2099 trekkie.config.initialDocumentCookie = document.cookie; 2100 var first = document.getElementsByTagName('script')[0]; 2101var script = document.createElement('script'); 2102script.type = 'text/javascript'; 2103script.onerror = function(e) { 2104 var scriptFallback = document.createElement('script'); 2105 scriptFallback.type = 'text/javascript'; 2106 scriptFallback.onerror = function(error) { 2107 var Monorail = { 2108 produce: function produce(monorailDomain, schemaId, payload) { 2109 var currentMs = new Date().getTime(); 2110 var event = { 2111 schema_id: schemaId, 2112 payload: payload, 2113 metadata: { 2114 event_created_at_ms: currentMs, 2115 event_sent_at_ms: currentMs 2116 } 2117 }; 2118 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 2119 }, 2120 sendRequest: function sendRequest(endpointUrl, payload) { 2121 // Try the sendBeacon API 2122 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 2123 var blobData = new window.Blob([payload], { 2124 type: 'text/plain' 2125 }); 2126 2127 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 2128 return true; 2129 } // sendBeacon was not successful 2130 2131 } // XHR beacon 2132 2133 var xhr = new XMLHttpRequest(); 2134 2135 try { 2136 xhr.open('POST', endpointUrl); 2137 xhr.setRequestHeader('Content-Type', 'text/plain'); 2138 xhr.send(payload); 2139 } catch (e) { 2140 console.log(e); 2141 } 2142 2143 return false; 2144 }, 2145 isIos12: function isIos12() { 2146 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 2147 } 2148 }; 2149 Monorail.produce('monorail-edge.shopifysvc.com', 2150 'trekkie_storefront_load_errors/1.1', 2151 {shop_id: 12633571392, 2152 theme_id: 131581116575, 2153 app_name: "storefront", 2154 context_url: window.location.href, 2155 source_url: "//www.bman.ro/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js"}); 2156 2157 }; 2158 scriptFallback.async = true; 2159 scriptFallback.src = '//www.bman.ro/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js'; 2160 first.parentNode.insertBefore(scriptFallback, first); 2161}; 2162script.async = true; 2163script.src = '//www.bman.ro/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js'; 2164first.parentNode.insertBefore(script, first); 2165 2166 }; 2167 trekkie.load( 2168 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":12633571392,"isMerchantRequest":null,"themeId":131581116575,"themeCityHash":"7595672294542611010","contentLanguage":"ro","currency":"RON","eventMetadataId":"7c47a7bc-09bc-490b-bf4f-62ebf7332f91"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}} 2169 ); 2170 2171 var loaded = false;
2172 trekkie.ready(function() { 2173 if (loaded) return; 2174 loaded = true; 2175 2176 window.ShopifyAnalytics.lib = window.trekkie; 2177 2178 var originalDocumentWrite = document.write; 2179 document.write = customDocumentWrite; 2180 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 2181 document.write = originalDocumentWrite; 2182 2183 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 2184 var token = match? match[1]: undefined; 2185 if (!hasLoggedConversion(token)) { 2186 setCookieIfConversion(token); 2187 2188 } 2189 }); 2190 2191 window.ShopifyAnalytics.lib.page(null,{"pageType":"cart","requestId":"66e87a31-d5d9-4c43-b174-11d6d243ea5d-1791406525","shopifyEmitted":true}); 2192 2193 var eventsListenerScript = document.createElement('script'); 2194 eventsListenerScript.async = true; 2195 eventsListenerScript.src = "//www.bman.ro/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 2196 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 2197})();</script>
vendor: 1 bytes, line 2197
2197
2198<script 2199 defer 2200 src="https://www.bman.ro/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.6.min.js" 2201 data-application="storefront-renderer" 2202 data-shop-id="12633571392" 2203 data-render-region="gcp-us-west1" 2204 data-page-type="cart" 2205 data-theme-instance-id="131581116575" 2206 data-theme-name="BMAN Shopify" 2207 data-theme-version="1.0.0" 2208 data-monorail-region="shop_domain" 2209 data-resource-timing-sampling-rate="10" 2210 data-shs="true" 2211 data-shs-beacon="true" 2212 data-shs-export-with-fetch="true" 2213 data-shs-logs-sample-rate="1" 2214 data-shs-beacon-endpoint="https://www.bman.ro/api/collect" 2215></script>
2215 2216<meta name="shopify-y" content="0c9a59b4-7351-40c4-8e29-d9c8d446e420" data-expiration="1822964125000"><meta name="shopify-s" content="d37c4e08-7eb9-4355-95e9-3a7d8d39aeee" data-expiration="1791408325000"><meta name="new-cookie-storage-activated" content="t"> 2217</head> 2218 2219<body class="template-cart "> 2220 2221 2222 <div id="shopify-section-header" class="shopify-section"> 2223 2224 2225<!-- 2226 <div class="header-seller-benefits"> 2227 <ul> 2228 <li> 2229 Brand Românesc 2230 </li> 2231 <li> 2232 Ajustare GratuitÄ pe MÄrimea Ta 2233 </li> 2234 <li> 2235 Transport & Schimb Gratuit 2236 </li> 2237 </ul> 2238 </div> 2239 --> 2240 2241<div class="main-header"> 2242 2243 2244<style> 2245 .vm-sticky-top-bar .top-bar__content p { 2246 font-size: 15px; 2247 } 2248</style> 2249 2250 <div class="main-header__container"> 2251 <div class="main-header__logo"> 2252 <a href="https://www.bman.ro"> 2253 <i class="icon-bman_final_mm_3_logo-bman"></i> 2254 </a> 2255 </div> 2256 <div class="main-header__side-buttons"> 2257 <ul> 2258 <li class="main-header__menu-trigger"> 2259 <a href="#"> 2260 <span></span> 2261 <span></span> 2262 <span></span> 2263 </a> 2264 <div class="main-header__menu-trigger__overlay"></div> 2265 </li> 2266 <li class="main-header__search"> 2267 <a href="#"> 2268 <i class="icon-bman_final_mm_3_search"></i> 2269 </a> 2270 <div class="main-header__search__container"> 2271 <form action="/search" method="get"> 2272 <input type="search" name="q" placeholder="CautÄ produse..."> 2273 <input type="hidden" value="product"/> 2274 <button type="submit" class="search__container__button">CautÄ</button> 2275 </form> 2276 </div> 2277 <div class="main-header__search__overlay"></div> 2278 </li> 2279 <li> 2280 <a href="tel:+40720.55.77.99"> 2281 <i class="icon-bman_final_mm_3_telefon"></i> 2282 </a> 2283 </li> 2284 2285 <li class="main-header__account"> 2286 <a href="https://www.bman.ro/account/"> 2287 <i class="icon-bman_final_mm_3_account"></i> 2288 </a> 2289 <div class="main-header__account__dropdown"> 2290 <div class="main-header__account__inner"> 2291 2292 <div class="main-header__account__top"> 2293 <a href="https://www.bman.ro/account/login"> 2294 Autentificare 2295 </a> 2296 <a href="https://www.bman.ro/account/register"> 2297 Ãnregistrare 2298 </a> 2299 </div> 2300 2301 <div class="main-header__account__list"> 2302 <ul> 2303 2304 2305 <li> 2306 <a href="/account"> 2307 <i class="fas fa-user"></i> 2308 Contul meu 2309 </a> 2310 </li> 2311 <li> 2312 <a href="/account/orders"> 2313 <i class="fas fa-box-open"></i> 2314 Comenzile mele 2315 </a> 2316 </li> 2317 <li> 2318 <a href="#swym-wishlist"> 2319 <i class="fas fa-heart"></i> 2320 Produse favorite 2321 </a> 2322 </li> 2323 <!-- <li> 2324 <a href="/returnari"> 2325 <i class="fas fa-exchange-alt"></i> 2326 Returnari produse 2327 </a> 2328 </li> --> 2329 2330 2331 2332 </ul> 2333 </div> 2334 </div> 2335 2336 </div> 2337 </li> 2338 2339 <li> 2340 <a href="#swym-wishlist"> 2341 <i class="fas fa-heart"></i> 2342 </a> 2343 </li> 2344 2345 <li class="main-header__cart"> 2346 <a href="/cart">
2347 <span class="cart-count">0</span> 2348 <i class="icon-bman_final_mm_3_cos"></i> 2349 </a> 2350 <div class="main-header__cart__dropdown"> 2351 <div class="main-header__cart__inner"> 2352 <div class="main-header__cart__dropdown__success"> 2353 <p> 2354 <i class="fa fa-check-circle"></i> 2355 CoÈul tÄu de cumparaturi 2356 </p> 2357 </div> 2358 2359 <p id="empty-cart" class="main-header__cart__help"> 2360 Nu ai niciun produs în coÈ 2361 </p> 2362 2363 </div> 2364</div> 2365 </li> 2366 </ul> 2367 </div> 2368 2369 <div class="main-header__menu"> 2370 <ul> 2371 2372 2373 2374 2375 <li class="main-header__menu__item"> 2376 <a href="https://www.bman.ro/collections/noutati"> 2377 NoutÄÈi 2378 </a> 2379 </li> 2380 2381 <li class="main-header__menu__item"> 2382 2383 <a href="#" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/toate-produsele_2.png?19982);"> 2384 ImbrÄcÄminte & ÃncÄlÈÄminte 2385 </a> 2386 <ul class="main-header__menu__mega-menu"> 2387 <li> 2388 <ul> 2389 <li> 2390 <a href="#"> 2391 Alege categoria 2392 </a> 2393 <ul class="main-header__menu__simple-menu"> 2394 <li><a href="/collections/costume-barbati">Costume</a></li> 2395 <li><a href="/collections/sacouri-barbati">Sacouri</a></li> 2396 <li><a href="/collections/camasi-barbati">CÄmÄÈi</a></li> 2397 <li><a href="/collections/pantofi-din-piele">ÃncÄlÈÄminte</a></li> 2398 <li><a href="/collections/pantaloni-barbati">Pantaloni</a></li> 2399 <li><a href="/collections/blugi">Blugi</a></li> 2400 <li><a href="/collections/tricouri-barbati">Tricouri</a></li> 2401 <li><a href="/collections/pulovere-barbati">Pulovere</a></li> 2402 <li><a href="/collections/paltoane-barbati">Paltoane</a></li> 2403 <li><a href="/collections/geci-barbati">Geci</a></li> 2404 <li><a href="/collections/veste-barbati">Veste</a></li> 2405 <li><a href="/collections/promotie-sale-2024">Ultimele BucÄÈi</a></li> 2406 </ul> 2407 </li> 2408 2409 2410 2411 2412 2413 2414 2415 </ul> 2416 </li> 2417 </ul> 2418 </li> 2419 2420 <li class="shop-by-style main-header__menu__item"> 2421 <a href="#" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/shop-by-style_1.png?19982);"> 2422 Èinute Complete 2423 </a> 2424 <ul class="main-header__menu__mega-menu"> 2425 <li> 2426 <ul> 2427 <li> 2428 <a href="https://www.bman.ro/collections/tinute-barbati-2025"> 2429 Alege-Èi stilul 2430 </a> 2431 <ul class="main-header__menu__simple-menu"> 2432 2433 2434 <li><a href="https://www.bman.ro/collections/tinute-barbati-2024">Toate Èinutele</a></li> 2435 <li><a href="https://www.bman.ro/collections/tinute-noutati">Èinute VarÄ</a></li> 2436 <li><a href="https://www.bman.ro/collections/tinute-casual-smart-casual-zi-barbati">Casual & Smart</a></li> 2437 <li><a href="https://www.bman.ro/collections/tinute-elegante-nunta-barbati">Elegante</a></li> 2438 2439 <li><a href="https://www.bman.ro/collections/tinuta-office-business-birou-conferinte-barbati">Business</a></li> 2440 2441 <li><a href="https://www.bman.ro/collections/tinute-mire-nas-ceremonie-gala-barbati">Ceremonie</a></li> 2442 <li><a href="https://www.bman.ro/collections/garderoba-capsula-10-tinute-cu-10-produse">GarderobÄ CapsulÄ</a></li> 2443 <li><a href="https://www.bman.ro/collections/tinute-outlet">Èinute Reduse</a></li> 2444 </ul> 2445 </li> 2446 <li> 2447 <div class="row row--modifier-4-col"> 2448 <div class="col-sm-4 vertical-desktop--top"> 2449 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/toate_tinutele.jpg?v=1750082005);"> 2450 <a href="/collections/tinute-barbati-2024" class="cover-all"></a> 2451 <p>Toate Èinutele</p> 2452 </div> 2453 </div> 2454 <div class="col-sm-4 vertical-desktop--top"> 2455 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/bman_noutati.jpg?v=1750082568);"> 2456 <a href="/collections/tinute-noutati" class="cover-all"></a> 2457 <p>
2457NoutÄÈi</p> 2458 </div> 2459 </div> 2460 <div class="col-sm-4 vertical-desktop--top"> 2461 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/elegante.jpg?v=1750083041);"> 2462 <a href="/collections/tinute-elegante-nunta-barbati" class="cover-all"></a> 2463 <p>Elegante</p> 2464 </div> 2465 </div> 2466 <div class="col-sm-4 vertical-desktop--top"> 2467 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/casual_587ebffb-7010-4bef-9438-e9bb8d4277f5.jpg?v=1750083223);"> 2468 <a href="https://www.bman.ro/collections/tinute-casual-smart-casual-zi-barbati" class="cover-all"></a> 2469 <p>Casual</p> 2470 </div> 2471 </div> 2472 </div> 2473 </li> 2474 <li> 2475 <div class="row row--modifier-4-col"> 2476 <div class="col-sm-4 vertical-desktop--top"> 2477 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/business.jpg?v=1750083633);"> 2478 <a href="/collections/tinuta-office-business-birou-conferinte-barbati" class="cover-all"></a> 2479 <p>Business</p> 2480 </div> 2481 </div> 2482 <div class="col-sm-4 vertical-desktop--top"> 2483 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/ceremonie_d4a69af8-5a19-4efe-bea8-5542893b87b8.jpg?v=1750083929);"> 2484 <a href="/collections/tinute-mire-nas-ceremonie-gala-barbati" class="cover-all"></a> 2485 <p>Ceremonie</p> 2486 </div> 2487 </div> 2488 <div class="col-sm-4 vertical-desktop--top"> 2489 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/reduceri.jpg?v=1750084190);"> 2490 <a href="/collections/tinute-outlet" class="cover-all"></a> 2491 <p>Reduceri</p> 2492 </div> 2493 </div> 2494 </div> 2495 </li> 2496 </ul> 2497 </li> 2498 </ul> 2499 </li> 2500 2501 2502 2503 2504 2505 2506 2507 2508 <!-- <li class="main-header__menu__item has-img"><a href="/collections/sportwear-collection">ColecÈia Sport <img src="//www.bman.ro/cdn/shop/files/tinute-cat5_02_150x.png?v=5246465118631218061" alt="Colectia sport"></a></li> --> 2509 <!-- <li class="main-header__menu__item has-img"><a href="/collections/pachete-cadou">Pachete Cadou <img src="//www.bman.ro/cdn/shop/files/pachet-cadou-4_150x.png?v=7988430108811695685" alt="Pachete Cadou"></a></li> --> 2510 2511 2512 2513 2514 <li class="main-header__menu__item accesorii"> 2515 <a href="#" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/accesorii_2.png?19982);"> 2516 Accesorii 2517 </a> 2518 <ul class="main-header__menu__mega-menu"> 2519 <li> 2520 <ul> 2521 <li> 2522 <a href="/collections/toate-accesoriile"> 2523 Alege-Èi accesoriile 2524 </a> 2525 <ul class="main-header__menu__simple-menu"> 2526 <li><a href="https://www.bman.ro/collections/curele-barbati">Curele</a></li> 2527 <li><a href="https://www.bman.ro/collections/esarfe-fulare">Esarfe & Fular</a></li> 2528 <li><a href="https://www.bman.ro/collections/sapca-barbati">Sapca & Basca</a></li> 2529 <li><a href="https://www.bman.ro/collections/manusi-barbati">Manusi & Fes</a></li> 2530 <li><a href="https://www.bman.ro/collections/sosete-lungi">Èosete</a></li> 2531 <li><a href="https://www.bman.ro/collections/cravate">Cravate</a></li> 2532 <li><a href="https://www.bman.ro/collections/batiste">Batiste</a></li> 2533 <li><a href="https://www.bman.ro/collections/papioane">Papioane</a></li> 2534 <li><a href="https://www.bman.ro/collections/butoni">Butoni</a></li> 2535 <li><a href="https://www.bman.ro/collections/bretele-barbati">Bretele</a></li> 2536 </ul> 2537 </li> 2538 2539 2540 <li> 2541 <div class="row"> 2542 <div class="col-sm-12"> 2543 <div class="category-banner category-banner--large" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/curele.jpg?19936);"> 2544 <a href="https://www.bman.ro/collections/curele" class="cover-all"></a> 2545 <p> 2546 Curele 2547 </p> 2548 </div> 2549 </div> 2550 <div class="col-sm-12"> 2551 <div class="category-banner category-banner--large" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/11b-2.png?v=1692976868);"> 2552 <a href="https://www.bman.ro/collections/bretele-barbati" class="cover-all"></a> 2553 <p> 2554 Bretele BÄrbaÈi 2555 </p> 2556 </div> 2557 </div> 2558 <div class="col-sm-12"> 2559 <div class="category-banner category-banner--large" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/cravate_1.jpg?19936);"> 2560 <a href="https://www.bman.ro/collections/cravate" class="cover-all"></a> 2561 <p> 2562 Cravate 2563 </p> 2564 </div> 2565 </div> 2566 </div> 2567 </li> 2568 <li> 2569 <div class="row"> 2570 <div class="col-sm-6"> 2571 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/genti.jpg?19936);"> 2572 <a href="https://www.bman.ro/collections/genti" class="cover-all"></a> 2573 <p> 2574 GenÈi 2575 </p> 2576 </div> 2577 </div> 2578 <div class="col-sm-6"> 2579 <div class="category-banner" style="background-image: url(https://cdn.shopify.com/s/files/1/0126/3357/1392/files/batiste.jpg?19936);"> 2580 <a href="https://www.bman.ro/collections/batiste" class="cover-all"></a> 2581 <p> 2582 Batiste 2583 </p> 2584 </div> 2585 </div> 2586 </div> 2587 </li> 2588 </ul> 2589 </li> 2590 </ul> 2591 </li> 2592 2593 2594 2595 2596 2597 2598 <li class="main-header__menu__item"> 2599 <a href="/blogs/bman-club">Blog</a> 2600 </li> 2601 2602 <li class="main-header__search main-header__menu__item has-img"> 2603 <a href="#">CautÄ 2604 <i class="fas fa-search"></i> 2605 <img src="//www.bman.ro/cdn/shop/files/tinute-cat13_02_150x.png?v=8856972401694146048" alt="Cauta produse"> 2606 </a> 2607 <div class="main-header__search__container"> 2608 <form action="/search" method="get" class="main-header__search__form"> 2609 <input type="search" name="q" placeholder="Cauta produse..."> 2610 <input type="hidden" value="product"/> 2611 <button type="submit" class="search__container__button">Cauta</button> 2612 </form> 2613 </div> 2614 <div class="main-header__search__overlay"></div> 2615 </li> 2616 </ul> 2617 </div> 2618 </div> 2619</div> 2620 2621 2622 2623 2624</div> 2625 2626 2627 <div class="page-container" id="PageContainer"> 2628 <main class="main-content js-focus-hidden" id="MainContent" role="main" tabindex="-1"> 2629 2630 2631<div class="inverse-header-colors"></div> 2632<div class="header-space-holder"></div> 2633 2634 <div class="container"> 2635 <div class="main-cart"> 2636 <div class="row"> 2637 <div class="col-lg-8 offset-sm-2 col-xs-12"> 2638 <div class="main-cart__empty"> 2639 <div class="main-cart__empty__icon"><i class="fas fa-shopping-cart"></i></div> 2640 <i class="icon-bman_final_mm_3_cos"></i> 2641 <h1>CoÈul tÄu este gol</h1> 2642 <h2>Pentru a adauga produse in cos te rugam sa te intorci in magazin.</h2> 2643 <p></p> 2644 <p></p> 2645 <a href="https://www.bman.ro" class="bman-button bman-button--dark"> 2646 Intoarce-te in magazin 2647 </a> 2648 </div> 2649 </div> 2650 </div> 2651 </div> 2652 </div> 2653 2654 2655 2656 2657 2658 2659 2660 2661 <div id="shopify-section-footer" class="shopify-section"><footer class="main-footer main-footer--no-padding-top"> 2662 <style> 2663 @media (min-width: 576px) { 2664 .footer-5-col { 2665 flex: 0 0 20% !important; 2666 max-width: 20% !important; 2667 } 2668 } 2669 </style> 2670 <div class="main-footer__top-widgets"> 2671 <div class="container"> 2672 <div class="row"> 2673 <div class="col-sm-3 footer-5-col"> 2674 <aside class="widget widget--text"> 2675 <h3> 2676 PROGRAM MAGAZINE & ONLINE 2677 </h3> 2678 <ul> 2679 <li> 2680 <a href="https://www.bman.ro/pages/program-decembrie
2680-magazin-bman"> 2681 VEZI ORAR FUNCTIONARE 2682 </a> 2683 </li> 2684 </ul> 2685 2686 </aside> 2687 </div> 2688 <div class="col-sm-3 footer-5-col"> 2689 <aside class="widget widget--text"> 2690 <h3> 2691 CONTACT 2692 </h3> 2693 <p> 2694 <small> 2695 Comenzi Online: <a href="tel:40720557799"> +4 0720557799</a><br> 2696 Comenzi Online: <a href="tel:40728231319">+4 0728231319</a><br> 2697 Showroom Husi: <a href="tel:40728229186">+4 0728229186</a><br> 2698 Showroom Iasi: <a href="tel:40728227539">+4 0728227539</a><br> 2699 </small> 2700 </p> 2701 <p> 2702 ADRESE 2703 </p> 2704 <p> 2705 Showroom Iasi: <br /> 2706 <small>Str. Tanasescu 24, Complex Palas Campus, Iasi</small> 2707 </p> 2708 <p> 2709 Showroom Husi: <br /> 2710 <small>Str. General Teleman 17, Husi, Judetul Vaslui</small> 2711 </p> 2712 </aside> 2713 </div> 2714 <div class="col-sm-3 footer-5-col"> 2715 <aside class="widget"> 2716 <h3> 2717 AJUTOR 2718 </h3> 2719 <ul> 2720 2721 <li><a href="/pages/contact">CONTACT</a></li> 2722 2723 <li><a href="/pages/intrebari-frecvente">ÃNTREBÄRI FRECVENTE</a></li> 2724 2725 <li><a href="/pages/returnare-produse">RETURNARE PRODUSE</a></li> 2726 2727 <li><a href="/pages/modalitati-de-livrare-transport">PLATÄ, LIVRARE ÈI TRANSPORT</a></li> 2728 2729 <li><a href="/pages/comanda-produse">COMANDÄ PRODUSE</a></li> 2730 2731 </ul> 2732 </aside> 2733 </div> 2734 <div class="col-sm-3 footer-5-col"> 2735 <aside class="widget"> 2736 <h3> 2737 POLITICI 2738 </h3> 2739 <ul> 2740 2741 <li><a href="/pages/termene-si-conditii">TERMENI ÈI CONDIÈII</a></li> 2742 2743 <li><a href="/pages/protejarea-datelor">PROTEJAREA DATELOR</a></li> 2744 2745 <li><a href="/pages/politica-privind-modulele-cookie">POLITICA PRIVIND MODULELE COOKIE</a></li> 2746 2747 <li><a href="https://anpc.ro/">ANPC</a></li> 2748 2749 <li><a href="https://consumer-redress.ec.europa.eu/index_ro">SOL</a></li> 2750 2751 </ul> 2752 </aside> 2753 </div> 2754 <div class="col-sm-3 footer-5-col"> 2755 <aside class="widget"> 2756 <h3> 2757 COMPANIE 2758 </h3> 2759 <ul> 2760 2761 <li><a href="/pages/contact">B2B â VÃNZÄRI EN-GROSS</a></li> 2762 2763 <li><a href="/pages/presa">PRESÄ</a></li> 2764 2765 <li><a href="/pages/career-opportunities">CARIERE</a></li> 2766 2767 </ul> 2768 </aside> 2769 </div> 2770 </div> 2771 2772 <div class="footer-anpc"> 2773 <a target="blank" href="https://reclamatiisal.anpc.ro/"> 2774 <img src=" https://cdn.shopify.com/s/files/1/0126/3357/1392/files/sal_145x.png?v=1660909566" alt="anpc_sal"> 2775 </a> 2776 2777 <a target="blank" href="https://consumer-redress.ec.europa.eu/index_ro"> 2778 <img src="//cdn.shopify.com/s/files/1/0126/3357/1392/files/sol_145x.png?v=1660909680" alt="npc_sol"> 2779 </a> 2780 2781 <a class="footer-anpc__ecommerce" target="blank" href="https://www.raiffeisen.ro/corporatii/produse-si-servicii/acceptare-carduri/acceptare-carduri-prin-internet-e-commerce/"> 2782 <img src="https://cdn.shopify.com/s/files/1/0126/3357/1392/files/e-commerce_85_PX-01.jpg?v=1771610654" alt="e-commerce"> 2783 </a> 2784 </div> 2785 2786 </div> 2787 </div> 2788 <div class="main-footer__bottom"> 2789 <div class="container"> 2790 <p> 2791 2026 © BMAN - Wear Confidence. Toate drepturile rezervate. 2792 </p> 2793 </div> 2794 </div> 2795</footer> 2796</div> 2797 2798 </main> 2799 </div> 2800 2801 2802 2803 <ul hidden> 2804 <li id="a11y-refresh-page-message">Translation missing: ro.general.accessibility.refresh_page</li> 2805 </ul> 2806 2807 2808<link rel="dns-prefetch" href="https://swymstore-v3pro-01.swymrelay.com" crossorigin> 2809<link rel="dns-prefetch" href="//swymv3pro-01.azureedge.net/code/swym-shopify.js">
2810<link rel="preconnect" href="//swymv3pro-01.azureedge.net/code/swym-shopify.js">
2811<script id="swym-snippet"> 2812 window.swymLandingURL = document.URL; 2813 window.swymCart = {"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":"RON","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}; 2814 window.swymPageLoad = function(){ 2815 window.SwymProductVariants = window.SwymProductVariants || {}; 2816 window.SwymHasCartItems = 0 > 0; 2817 window.SwymPageData = {}, window.SwymProductInfo = {}; 2818 var unknown = {et: 0}; 2819 window.SwymPageData = unknown; 2820 2821 window.SwymPageData.uri = window.swymLandingURL; 2822 }; 2823 2824 if(window.selectCallback){ 2825 (function(){ 2826 // Variant select override 2827 var originalSelectCallback = window.selectCallback; 2828 window.selectCallback = function(variant){ 2829 originalSelectCallback.apply(this, arguments); 2830 try{ 2831 if(window.triggerSwymVariantEvent){ 2832 window.triggerSwymVariantEvent(variant.id); 2833 } 2834 }catch(err){ 2835 console.warn("Swym selectCallback", err); 2836 } 2837 }; 2838 })(); 2839 } 2840 window.swymCustomerId = null; 2841 window.swymCustomerExtraCheck = null; 2842 2843 var swappName = ("Wishlist" || "Wishlist"); 2844 var swymJSObject = { 2845 pid: "VpLWRAnpB2IukiVtO5zv6GY\/AraDF5jUAHEYi7QP3l8=" || "VpLWRAnpB2IukiVtO5zv6GY/AraDF5jUAHEYi7QP3l8=", 2846 interface: "/apps/swym" + swappName + "/interfaces/interfaceStore.php?appname=" + swappName 2847 }; 2848 window.swymJSShopifyLoad = function(){ 2849 if(window.swymPageLoad) swymPageLoad(); 2850 if(!window._swat) { 2851 (function (s, w, r, e, l, a, y) { 2852 r['SwymRetailerConfig'] = s; 2853 r[s] = r[s] || function (k, v) { 2854 r[s][k] = v; 2855 }; 2856 })('_swrc', '', window); 2857 _swrc('RetailerId', swymJSObject.pid); 2858 _swrc('Callback', function(){initSwymShopify();}); 2859 }else if(window._swat.postLoader){ 2860 _swrc = window._swat.postLoader; 2861 _swrc('RetailerId', swymJSObject.pid); 2862 _swrc('Callback', function(){initSwymShopify();}); 2863 }else{ 2864 initSwymShopify(); 2865 } 2866 } 2867 if(!window._SwymPreventAutoLoad) { 2868 swymJSShopifyLoad(); 2869 } 2870 window.swymGetCartCookies = function(){ 2871 var RequiredCookies = ["cart", "swym-session-id", "swym-swymRegid", "swym-email"]; 2872 var reqdCookies = {}; 2873 RequiredCookies.forEach(function(k){ 2874 reqdCookies[k] = _swat.storage.getRaw(k); 2875 }); 2876 var cart_token = window.swymCart.token; 2877 var data = { 2878 action:'cart', 2879 token:cart_token, 2880 cookies:reqdCookies 2881 }; 2882 return data; 2883 } 2884 2885 window.swymGetCustomerData = function(){ 2886 2887 return {status:1}; 2888 2889 } 2890</script>
2890 2891 2892<style id="safari-flasher-pre"></style>
2893<script> 2894 if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) { 2895 document.getElementById("safari-flasher-pre").innerHTML = '' 2896 + '#swym-plugin,#swym-hosted-plugin{display: none;}' 2897 + '.swym-button.swym-add-to-wishlist{display: none;}' 2898 + '.swym-button.swym-add-to-watchlist{display: none;}' 2899 + '#swym-plugin #swym-notepad, #swym-hosted-plugin #swym-notepad{opacity: 0; visibility: hidden;}' 2900 + '#swym-plugin #swym-notepad, #swym-plugin #swym-overlay, #swym-plugin #swym-notification,' 2901 + '#swym-hosted-plugin #swym-notepad, #swym-hosted-plugin #swym-overlay, #swym-hosted-plugin #swym-notification' 2902 + '{-webkit-transition: none; transition: none;}' 2903 + ''; 2904 window.SwymCallbacks = window.SwymCallbacks || []; 2905 window.SwymCallbacks.push(function(tracker){ 2906 tracker.evtLayer.addEventListener(tracker.JSEvents.configLoaded, function(){ 2907 // flash-preventer 2908 var x = function(){ 2909 SwymUtils.onDOMReady(function() { 2910 var d = document.createElement("div"); 2911 d.innerHTML = "<style id='safari-flasher-post'>" 2912 + "#swym-plugin:not(.swym-ready),#swym-hosted-plugin:not(.swym-ready){display: none;}" 2913 + ".swym-button.swym-add-to-wishlist:not(.swym-loaded){display: none;}" 2914 + ".swym-button.swym-add-to-watchlist:not(.swym-loaded){display: none;}" 2915 + "#swym-plugin.swym-ready #swym-notepad, #swym-plugin.swym-ready #swym-overlay, #swym-plugin.swym-ready #swym-notification," 2916 + "#swym-hosted-plugin.swym-ready #swym-notepad, #swym-hosted-plugin.swym-ready #swym-overlay, #swym-hosted-plugin.swym-ready #swym-notification" 2917 + "{-webkit-transition: opacity 0.3s, visibility 0.3ms, -webkit-transform 0.3ms !important;-moz-transition: opacity 0.3s, visibility 0.3ms, -moz-transform 0.3ms !important;-ms-transition: opacity 0.3s, visibility 0.3ms, -ms-transform 0.3ms !important;-o-transition: opacity 0.3s, visibility 0.3ms, -o-transform 0.3ms !important;transition: opacity 0.3s, visibility 0.3ms, transform 0.3ms !important;}" 2918 + "</style>"; 2919 document.head.appendChild(d); 2920 }); 2921 }; 2922 setTimeout(x, 10); 2923 }); 2924 }); 2925 } 2926</script>
2926 2927<style id="swym-product-view-defaults"> 2928 /* Hide when not loaded */ 2929 .swym-button.swym-add-to-wishlist-view-product:not(.swym-loaded){ 2930 display: none; 2931 } 2932</style> 2933 2934 2935
2935<script> 2936 window.onpageshow = function(event) { 2937 if (event.persisted) { 2938 window.location.reload() 2939 } 2940 }; 2941 2942 // Browser back on the right product 2943 function go_to_idp_hash() { 2944 if (window.location.hash) { 2945 if (window.location.hash.indexOf('idp') == 1) { 2946 2947 if (history.scrollRestoration === 'auto') { 2948 history.scrollRestoration = 'manual'; 2949 return; 2950 } 2951 2952 if ('scrollRestoration' in history) { 2953 history.scrollRestoration = 'manual'; 2954 } 2955 2956 var idp = window.location.hash.replace("#idp_", ""); 2957 window.location.hash = ''; 2958 history.pushState("", document.title, window.location.pathname + window.location.search); 2959 2960 setTimeout(function () { 2961 var element_top = $('.listing-produse-bman .item-for-ajax a[idp="' + idp + '"]') 2962 .closest('.item-for-ajax').offset().top - 120; 2963 jQuery(window).scrollTop(element_top); 2964 2965 setTimeout(function () { 2966 var element_top = $('.listing-produse-bman .item-for-ajax a[idp="' + idp + 2967 '"]').closest('.item-for-ajax').offset().top - 120; 2968 jQuery(window).scrollTop(element_top); 2969 console.log('second scroll'); 2970 }, 400); 2971 }, 400); 2972 } 2973 } 2974 } 2975 2976 function urlParam(name) { 2977 var results = new RegExp('[\?&]' + 'page' + '=([^]*)').exec(window.location.href); 2978 if (results == null) { 2979 return null; 2980 } else { 2981 return results[1] || 0; 2982 } 2983 } 2984 2985 2986 jQuery(document).ready(function () { 2987 go_to_idp_hash(); 2988 }); 2989 2990 jQuery('#center_column').on('click', '.listing-produse-bman .item-for-ajax a', function () { 2991 const is_hash = [] 2992 if (window.location.hash) { 2993 is_hash.push(window.location.hash.split('#idp_').pop()) 2994 } 2995 2996 var idp = jQuery(this).attr('idp'); 2997 var ppid = jQuery(this).attr('ppid'); 2998 var current_page = urlParam('page') ? urlParam('page') : 1; 2999 var current_url = ((idp && (idp !== is_hash[0]))) ? window.location.href.split('#')[0] : window.location.href; 3000 var next_url = current_url.replace('page=' + current_page, 'page=' + ppid); 3001 3002 if (idp && (idp !== is_hash[0])) { 3003 if (history.pushState) { 3004 history.pushState(null, null, next_url + '#idp_' + idp); 3005 } else { 3006 location.href = next_url; 3007 location.hash = '#idp_' + idp; 3008 } 3009 } 3010 }); 3011 3012 </script>
3012 3013 3014 <!-- Redirect dupa register / login --> 3015
3015<script type="text/javascript"> 3016 $(document).ready(function () { 3017 if ($('#create_customer').length > 0) { 3018 if (localStorage.getItem('ref-consiliere-marimi')) { 3019 3020 $('#create_customer [name="return_to"]').val(localStorage.getItem('ref-consiliere-marimi')); 3021 3022 } 3023 } else if ($('#g-recaptcha').length) { 3024 if (localStorage.getItem('ref-consiliere-marimi')) { 3025 var $newInput = $('<input type="hidden" name="return_to" value="' + localStorage.getItem( 3026 'ref-consiliere-marimi') + '" />'); 3027 $newInput.insertBefore($('.shopify-challenge__container input[type="submit"]')); 3028 } 3029 } 3030 }); 3031 </script>
3031 3032 <!-- End Redirect Script --> 3033 3034
3034<script type="text/javascript"> 3035var SOCIAL_LOGIN_CUSTOMER_LOGGED_IN = false; 3036</script>
3036 3037 3038 3039 <!-- Back in Stock helper snippet --> 3040 3041
3042<script id="back-in-stock-helper"> 3043 var _BISConfig = _BISConfig || {}; 3044 3045 3046 3047 3048</script>
3048 3049 3050 <!-- End Back in Stock helper snippet --> 3051 3052 <!-- **BEGIN** Hextom CTB Integration // Main Include - DO NOT MODIFY --> 3053 <!-- **BEGIN** Hextom CTB Integration // Main - DO NOT MODIFY -->
3054<script type="application/javascript"> 3055 window.hextom_ctb = { 3056 p1: [ 3057 3058 ], 3059 p2: { 3060 3061 } 3062 }; 3063</script>
3063 3064<!-- **END** Hextom CTB Integration // Main - DO NOT MODIFY --> 3065 <!-- **END** Hextom CTB Integration // Main Include - DO NOT MODIFY --> 3066<!-- Back in Stock helper snippet --> 3067 3068
3069<script id="back-in-stock-helper"> 3070 var _BISConfig = _BISConfig || {}; 3071 3072 3073 3074 3075</script>
3075 3076 3077<!-- End Back in Stock helper snippet --> 3078 3079<!-- <div class="shopify-chat__close-button" id="shopify-chat__close-button"> 3080 3081 <svg 3082 clip-rule="evenodd" 3083 fill-rule="evenodd" 3084 stroke-linejoin="round" 3085 stroke-miterlimit="2" 3086 viewBox="0 0 24 24" 3087 xmlns="http://www.w3.org/2000/svg" 3088 > 3089 <path d="m12 10.93 5.719-5.72c.146-.146.339-.219.531-.219.404 0 .75.324.75.749 0 .193-.073.385-.219.532l-5.72 5.719 5.719 5.719c.147.147.22.339.22.531 0 .427-.349.75-.75.75-.192 0-.385-.073-.531-.219l-5.719-5.719-5.719 5.719c-.146.146-.339.219-.531.219-.401 0-.75-.323-.75-.75 0-.192.073-.384.22-.531l5.719-5.719-5.72-5.719c-.146-.147-.219-.339-.219-.532 0-.425.346-.749.75-.749.192 0 .385.073.531.219z"/> 3090 </svg> 3091 3092</div> --> 3093<div id="shopify-block-Ad3lHck9Ccldkb2R1R__12526071353035850722" class="shopify-block shopify-app-block"> 3094
3094<script defer src="https://backinstock.useamp.com/widget/17635_1790064449.js?category=bis&v=6"></script>
3094 3095 3096
3097<script id="back-in-stock-helper-embedded"> 3098 var _BISConfig = _BISConfig || {}; 3099 3100 3101 3102 3103</script>
3103 3104
3105<script id="preorders-helper-embedded"> 3106 3107</script>
3107 3108
3109<script id="low-stock-helper-embedded"> 3110 3111</script>
3111 3112 3113 3114 3115
3116<script defer type="module" src="https://cdn.shopify.com/extensions/01a0ae82-28b0-715d-bb47-827eda8f44e3/back-in-stock-69/assets/wishlist.js"></script>
3116 3117 3118
3119<script defer type="module" src="https://cdn.shopify.com/extensions/01a0ae82-28b0-715d-bb47-827eda8f44e3/back-in-stock-69/assets/preorder-product-page-updater.js"></script>
3119 3120 3121 3122 3123 3124</div><div id="shopify-block-ASXJCWWEvMUE5L1VWd__5946647744298494267" class="shopify-block shopify-app-block"> 3125 3126 3127<!-- BEGIN app snippet: swymVersion -->
3127<script>var __SWYM__VERSION__ = '7.0.10';</script>
3127<!-- END app snippet --> 3128<!-- BEGIN app snippet: swymCustomCss --> 3129 3130 3131 3132 3133<style id="swym-custom-css"> 3134 3135</style> 3136 3137<!-- END app snippet --> 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149
3150<script> 3151 (function () { 3152 // Get CompanyLocation Metadata for B2B customer scenerios (SFS) 3153 3154 3155 // Put metafields in window variable 3156 const commonCustomizationSettings = ''; 3157 try { 3158 const parsedSettings = JSON.parse(commonCustomizationSettings); 3159 if (parsedSettings) { 3160 window.SwymWishlistCommonCustomizationSettings = parsedSettings[window.Shopify.theme.schema_name] || parsedSettings['global-settings']; 3161 } else { 3162 window.SwymWishlistCommonCustomizationSettings = {}; 3163 } 3164 } catch (e) { 3165 window.SwymWishlistCommonCustomizationSettings = {}; 3166 } 3167 3168 let enabledCommonFeatures = '{"multiple-wishlist":false}'; 3169 try { 3170 enabledCommonFeatures = JSON.parse(enabledCommonFeatures) || {}; 3171 } catch (e) { 3172 enabledCommonFeatures = {}; 3173 } 3174 // Storing COMMON FEATURES data in the window object for potential use in the storefront JS code. 3175 window.SwymEnabledCommonFeatures = enabledCommonFeatures; 3176 3177 // Ghost-Intent Configuration 3178 // Defaults to disabled (false). Only enabled when metafields explicitly set to "true". 3179 try { 3180 let ghostIntentConfig = { 3181 isExplicitConsentNeeded: false, 3182 isExplicitConsentNeededEvenForLocalStorage: false, 3183 askForPermissionOnFirstClick: true 3184 }; 3185 3186 3187 3188 window.SwymGhostIntentConfig = ghostIntentConfig; 3189 } catch(e) { 3190 window.SwymGhostIntentConfig = { 3191 isExplicitConsentNeeded: false, 3192 isExplicitConsentNeededEvenForLocalStorage: false, 3193 askForPermissionOnFirstClick: true 3194 }; 3195 } 3196 3197 // Education Layer Configuration 3198 // Reads from common enabled-features metafield first. Falls back to old standalone metafield for backward compatibility. 3199 3200 3201 window.SwymEducationLayerEnabled = enabledCommonFeatures?.["education-layer"] ?? true; 3202 3203 // Login Nudge Configuration 3204 // Reads from common enabled-features metafield first. Falls back to old standalone metafield for backward compatibility. 3205 3206 3207 window.SwymLoginNudgeEnabled = enabledCommonFeatures?.["login-nudge"] ?? true; 3208 3209 // Initialize or ensure SwymViewProducts exists 3210 if (!window.SwymViewProducts) { 3211 window.SwymViewProducts = {}; 3212 } 3213 3214 })(); 3215</script>
3215 3216 3217<!-- BEGIN app snippet: swymLoadConsentManager -->
3218<script> 3219 (function () { 3220 if (document.querySelector("script[data-swym-consent-manager]")) return; 3221 var swymConsentManagerScript = document.createElement("script"); 3222 swymConsentManagerScript.src = "https:\/\/cdn.shopify.com\/extensions\/01a117a8-87f5-7b2f-b200-6c3fdf4a33b5\/swym-relay-844\/assets\/swym-consent-manager.js"; 3223 swymConsentManagerScript.async = false; // run in insertion order once fetched, instead of whenever fetch resolves 3224 swymConsentManagerScript.setAttribute("data-swym-consent-manager", "true"); 3225 document.head.appendChild(swymConsentManagerScript); 3226 })(); 3227</script>
3227 3228<!-- END app snippet --> 3229
3230<script 3231 3232 id="wishlist-embed-init" 3233 defer 3234 async 3235> 3236 (function () { 3237 window.swymWishlistEmbedLoaded = true; 3238 var fullAssetUrl = "https://cdn.shopify.com/extensions/01a117a8-87f5-7b2f-b200-6c3fdf4a33b5/swym-relay-844/assets/apps.bundle.js"; 3239 var assetBaseUrl = fullAssetUrl?.substring(0, fullAssetUrl.lastIndexOf('/') + 1); 3240 var swymJsPath = '//procdn.swymrelay.com/code/swym-shopify.js'; 3241 var baseJsPath = swymJsPath?.substring(0, swymJsPath.lastIndexOf('/') + 1); 3242 window.SwymCurrentJSPath = baseJsPath; 3243 window.SwymAssetBaseUrl = assetBaseUrl; 3244 3245 window.SwymCurrentStorePath = "//swymstore-v3pro-01.swymrelay.com"; 3246 3247 function loadSwymShopifyScript() { 3248 var element = ""; 3249 var scriptSrc = ""; 3250 3251 3252 element = "swym-ext-shopify-script"; 3253 window.SwymShopifyCdnInUse = true; 3254 scriptSrc = "https://cdn.shopify.com/extensions/01a117a8-87f5-7b2f-b200-6c3fdf4a33b5/swym-relay-844/assets/swym-ext-shopify.js"; 3255 3256 3257 if (document.getElementById(element)) { 3258 return; 3259 } 3260 3261 var s = document.createElement("script"); 3262 s.id = element; 3263 s.type = "text/javascript"; 3264 s.async = true; 3265 s.defer = true; 3266 s.src = scriptSrc; 3267 3268 s.onerror = function() { 3269 console.warn("Failed to load Swym Shopify script: ", scriptSrc, " Continuing with default"); 3270 // Fallback logic here 3271 element = `swym-ext-shopify-script-${__SWYM__VERSION__}`; 3272 var fallbackJsPathVal = "\/\/procdn.swymrelay.com\/code\/swym-shopify.js"; 3273 var fallbackJsPathWithExt = fallbackJsPathVal.replace("swym-shopify", "swym-ext-shopify"); 3274 scriptSrc = fallbackJsPathWithExt + '?shop=' + encodeURIComponent(window.Shopify.shop) + '&v=' + __SWYM__VERSION__; 3275 3276 var fallbackScript = document.createElement("script"); 3277 fallbackScript.id = element; 3278 fallbackScript.type = "text/javascript"; 3279 fallbackScript.async = true; 3280 fallbackScript.defer = true; 3281 fallbackScript.src = scriptSrc; 3282 var y = document.getElementsByTagName("script")[0]; 3283 y.parentNode.insertBefore(fallbackScript, y); 3284 }; 3285 3286 var x = document.getElementsByTagName("script")[0]; 3287 x.parentNode.insertBefore(s, x); 3288 } 3289 3290 var consentAPICallbackInvoked = false; 3291 function checkConsentAndLoad() { 3292 // Allow app to load in design mode (theme editor) regardless of consent 3293 if (window.Shopify?.designMode) { 3294 loadSwymShopifyScript(); 3295 return; 3296 } 3297 3298 // Ghost-Intent: If merchant enabled explicit consent, block SDK until 3299 // consent is given through our Ghost-Intent flow (sync nudge accept). 3300 // This works on any store regardless of region (EU or non-EU). 3301 var ghostConfig = window.SwymGhostIntentConfig || {}; 3302 if (ghostConfig.isExplicitConsentNeeded || ghostConfig.isExplicitConsentNeededEvenForLocalStorage) { 3303 try { 3304 var consentKey = 'swym-ghost-consent-' + (window.Shopify && window.Shopify.shop || ''); 3305 if (localStorage.getItem(consentKey) === 'true') { 3306 // Consent was given through our flow â load SDK 3307 loadSwymShopifyScript(); 3308 return; 3309 } 3310 } catch(e) {} 3311 3312 // Check if Shopify native cookie consent was given via the cookie banner. 3313 // If user accepted cookies through Shopify's banner, load SDK normally 3314 // (Ghost-Intent is only needed when NO consent mechanism has been used). 3315 var shopifyConsentGiven = window.Shopify?.customerPrivacy?.preferencesProcessingAllowed?.(); 3316 if (shopifyConsentGiven) { 3317 loadSwymShopifyScript(); 3318 return; 3319 } 3320 3321 console.warn("[Swym Ghost-Intent] SDK blocked until explicit consent is given"); 3322 return; 3323 } 3324 3325 var isCookieBannerVisible = window.Shopify?.customerPrivacy?.shouldShowBanner?.(); 3326 if(!isCookieBannerVisible) { 3327 loadSwymShopifyScript(); 3328 return; 3329 } 3330 var shouldLoadSwymScript = window.Shopify?.customerPrivacy?.preferencesProcessingAllowed?.(); 3331 if (shouldLoadSwymScript) { 3332 loadSwymShopifyScript(); 3333 } else { 3334 console.warn("No customer consent to load Swym Wishlist Plus"); 3335 } 3336 } 3337 function initialiseConsentCheck() { 3338 document.addEventListener("visitorConsentCollected", (event) => { checkConsentAndLoad(); }); 3339 window.Shopify?.loadFeatures?.( 3340 [{name: 'consent-tracking-api', version: '0.1'}], 3341 error => { 3342 consentAPICallbackInvoked = true; 3343 if (error) { 3344 if(!window.Shopify?.customerPrivacy) { 3345 loadSwymShopifyScript(); 3346 return; 3347 } 3348 } 3349 checkConsentAndLoad(); 3350 } 3351 ); 3352 } 3353 function consentCheckFallback(retryCount) { 3354 if(!consentAPICallbackInvoked) { 3355 if (window.Shopify?.customerPrivacy) { 3356 checkConsentAndLoad(); 3357 } else if (retryCount >= 1) { 3358 console.warn("Shopify.loadFeatures unsuccessful on site, refer - https://shopify.dev/docs/api/customer-privacy#loading-the-customer-privacy-api. Proceeding with normal Swym Wishlist Plus load"); 3359 // Ghost-Intent: route through checkConsentAndLoad so SDK block is respected 3360 checkConsentAndLoad(); 3361 } else { 3362 setTimeout(() => consentCheckFallback(retryCount + 1), 1000); 3363 } 3364 } 3365 } 3366 if (document.readyState === "loading") { 3367 document.addEventListener("DOMContentLoaded", initialiseConsentCheck); 3368 window.addEventListener("load", () => consentCheckFallback(0)); 3369 } else { 3370 initialiseConsentCheck(); 3371 } 3372 3373 })(); 3374</script>
3374 3375 3376<!-- BEGIN app snippet: swymSnippet -->
3376<script defer> 3377 (function () { 3378 const currentSwymJSPath = '//procdn.swymrelay.com/code/swym-shopify.js'; 3379 const currentSwymStorePath = 'https://swymstore-v3pro-01.swymrelay.com'; 3380 const dnsPrefetchLink = `<link rel="dns-prefetch" href="${currentSwymStorePath}" crossorigin>`; 3381 const dnsPrefetchLink2 = `<link rel="dns-prefetch" href="${currentSwymJSPath}">`; 3382 const preConnectLink = `<link rel="preconnect" href="${currentSwymJSPath}">`; 3383 const swymSnippet = document.getElementById('wishlist-embed-init'); 3384 if(dnsPrefetchLink) {swymSnippet.insertAdjacentHTML('afterend', dnsPrefetchLink);} 3385 if(dnsPrefetchLink2) {swymSnippet.insertAdjacentHTML('afterend', dnsPrefetchLink2);} 3386 if(preConnectLink) {swymSnippet.insertAdjacentHTML('afterend', preConnectLink);} 3387 })() 3388</script>
vendor: 1 bytes, line 3388
3388
3389<script id="swym-snippet" type="text"> 3390 window.swymLandingURL = document.URL; 3391 window.swymCart = {"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":"RON","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}; 3392 window.swymPageLoad = function() { 3393 window.SwymProductVariants = window.SwymProductVariants || {}; 3394 window.SwymHasCartItems = 0 > 0; 3395 window.SwymPageData = {}, window.SwymProductInfo = {}; 3396 var unknown = {et: 0}; 3397 window.SwymPageData = unknown; 3398 3399 window.SwymPageData.uri = window.swymLandingURL; 3400 }; 3401 if(window.selectCallback){ 3402 (function(){ 3403 var originalSelectCallback = window.selectCallback; 3404 window.selectCallback = function(variant){ 3405 originalSelectCallback.apply(this, arguments); 3406 try{ 3407 if(window.triggerSwymVariantEvent){ 3408 window.triggerSwymVariantEvent(variant.id); 3409 } 3410 }catch(err){ 3411 console.warn("Swym selectCallback", err); 3412 } 3413 };})();} 3414 window.swymCustomerId =null; 3415 window.swymCustomerExtraCheck = 3416 null; 3417 var swappName = ("Wishlist" || "Wishlist"); 3418 var swymJSObject = { 3419 pid: "VpLWRAnpB2IukiVtO5zv6GY\/AraDF5jUAHEYi7QP3l8=", 3420 interface: "/apps/swym" + swappName + "/interfaces/interfaceStore.php?appname=" + swappName 3421 }; 3422 window.swymJSShopifyLoad = function(){ 3423 if(window.swymPageLoad) swymPageLoad(); 3424 if(!window._swat) { 3425 (function (s, w, r, e, l, a, y) { 3426 r['SwymRetailerConfig'] = s; 3427 r[s] = r[s] || function (k, v) { 3428 r[s][k] = v; 3429 }; 3430 })('_swrc', '', window); 3431 _swrc('RetailerId', swymJSObject.pid); 3432 _swrc('Callback', function(){initSwymShopify();}); 3433 }else if(window._swat.postLoader){ 3434 _swrc = window._swat.postLoader; 3435 _swrc('RetailerId', swymJSObject.pid); 3436 _swrc('Callback', function(){initSwymShopify();}); 3437 }else{ 3438 initSwymShopify();} 3439 } 3440 if(!window._SwymPreventAutoLoad) { 3441 swymJSShopifyLoad(); 3442 } 3443</script>
3443 3444 3445<style id="safari-flasher-pre"></style>
3446<script> 3447 if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) { 3448 document.getElementById("safari-flasher-pre").innerHTML = '' + '#swym-plugin,#swym-hosted-plugin{display: none;}' + '.swym-button.swym-add-to-wishlist{display: none;}' + '.swym-button.swym-add-to-watchlist{display: none;}' + '#swym-plugin #swym-notepad, #swym-hosted-plugin #swym-notepad{opacity: 0; visibility: hidden;}' + '#swym-plugin #swym-notepad, #swym-plugin #swym-overlay, #swym-plugin #swym-notification,' + '#swym-hosted-plugin #swym-notepad, #swym-hosted-plugin #swym-overlay, #swym-hosted-plugin #swym-notification' + '{-webkit-transition: none; transition: none;}' + ''; 3449 window.SwymCallbacks = window.SwymCallbacks || []; 3450 window.SwymCallbacks.push(function(tracker) { 3451 tracker.evtLayer.addEventListener(tracker.JSEvents.configLoaded, function() { 3452 var x = function() { 3453 SwymUtils.onDOMReady(function() { 3454 var d = document.createElement("div"); 3455 d.innerHTML = "<style id='safari-flasher-post'>" + "#swym-plugin:not(.swym-ready),#swym-hosted-plugin:not(.swym-ready){display: none;}" + ".swym-button.swym-add-to-wishlist:not(.swym-loaded){display: none;}" + ".swym-button.swym-add-to-watchlist:not(.swym-loaded){display: none;}" + "#swym-plugin.swym-ready #swym-notepad, #swym-plugin.swym-ready #swym-overlay, #swym-plugin.swym-ready #swym-notification," + "#swym-hosted-plugin.swym-ready #swym-notepad, #swym-hosted-plugin.swym-ready #swym-overlay, #swym-hosted-plugin.swym-ready #swym-notification" + "{-webkit-transition: opacity 0.3s, visibility 0.3ms, -webkit-transform 0.3ms !important;-moz-transition: opacity 0.3s, visibility 0.3ms, -moz-transform 0.3ms !important;-ms-transition: opacity 0.3s, visibility 0.3ms, -ms-transform 0.3ms !important;-o-transition: opacity 0.3s, visibility 0.3ms, -o-transform 0.3ms !important;transition: opacity 0.3s, visibility 0.3ms, transform 0.3ms !important;}" + "</style>"; 3456 document.head.appendChild(d); 3457 });}; 3458 setTimeout(x, 10); 3459 });});} 3460 window.SwymOverrideMoneyFormat = "{{amount_no_decimals}} lei"; 3461</script>
3461 3462<style id="swym-product-view-defaults"> .swym-button.swym-add-to-wishlist-view-product:not(.swym-loaded) { display: none; } </style><!-- END app snippet --> 3463
3464<script 3465 3466 id="swymSnippetCheckAndActivate" 3467> 3468 (function () { 3469 var duplicateProneIds = ['safari-flasher-pre', 'swym-product-view-defaults', 'swym-wrap-login-handler']; 3470 3471 function removeDuplicateIdNodes(id) { 3472 var nodes = document.querySelectorAll('#' + id); 3473 nodes.forEach(function (node, index) { 3474 if (index > 0) { 3475 node.remove(); 3476 } 3477 }); 3478 } 3479 3480 function cleanupDuplicateSnippetNodes(activeScript) { 3481 if (!activeScript) { 3482 return; 3483 } 3484 var allSwymSnippets = document.querySelectorAll('script#swym-snippet'); 3485 allSwymSnippets.forEach(function (scriptNode) { 3486 if (scriptNode !== activeScript) { 3487 scriptNode.remove(); 3488 } 3489 }); 3490 } 3491 3492 function cleanupDuplicateActivationGuards() { 3493 var guardScripts = document.querySelectorAll('script#swymSnippetCheckAndActivate'); 3494 guardScripts.forEach(function (scriptNode, index) { 3495 if (index > 0) { 3496 scriptNode.removeAttribute('id'); 3497 } 3498 }); 3499 } 3500 3501 function postDomLoad() { 3502 var activeScript = document.querySelector('script#swym-snippet:not([type="text"])'); 3503 if (!activeScript) { 3504 var inactiveScript = document.querySelector('script#swym-snippet[type="text"]'); 3505 if (inactiveScript) { 3506 inactiveScript.type = 'text/javascript'; 3507 new Function(inactiveScript.textContent)(); 3508 activeScript = inactiveScript; 3509 } 3510 } 3511 3512 cleanupDuplicateSnippetNodes(activeScript); 3513 cleanupDuplicateActivationGuards(); 3514 duplicateProneIds.forEach(removeDuplicateIdNodes); 3515 } 3516 3517 if (document.readyState === 'loading') { 3518 document.addEventListener('DOMContentLoaded', postDomLoad); 3519 } else { 3520 postDomLoad(); 3521 } 3522 })(); 3523</script>
3523 3524 3525 3526
3527<script> 3528 (function () { 3529 const themeSchemaName = window.Shopify.theme.schema_name; 3530 3531 if (!window.SwymCallbacks) { 3532 window.SwymCallbacks = []; 3533 } 3534 window.SwymCallbacks.push(swat => { 3535 if (!swat) { 3536 return; 3537 } 3538 3539 // Ghost-Intent: Sync local wishlist items to cloud when SDK loads after consent 3540 if (window.SwymLocalWishlist && window.SwymLocalWishlist.getSyncableItems().length > 0) { 3541 window.SwymLocalWishlist.syncToCloud(swat); 3542 } 3543 3544 if (window._SwymSDKOnlyMode) { 3545 return; 3546 } 3547 3548 // ENABLE COMMON FEATURES 3549 let swymEnabledCommonFeatures = window.SwymEnabledCommonFeatures; 3550 Object.keys(swymEnabledCommonFeatures).forEach(key => { 3551 if (!swymEnabledCommonFeatures[key]) return; 3552 3553 switch (key) { 3554 case 'add-to-wishlist-collections-button': 3555 // Check if app block is already handling the collections button 3556 if (window.SwymCollectionsConfig) { 3557 return; 3558 } 3559 3560 // Check if v2 default collections is handling it 3561 if (window.SwymAdvancedCollectionsWishlistConfig) { 3562 return; 3563 } 3564 3565 // Fallback to old v1 behavior if v2 config is not present 3566 swat?.collectionsApi?.setDefaultCustomizationOptions(); 3567 swat?.collectionsApi?.initializeCollections(swat, false, themeSchemaName); 3568 3569 break; 3570 case 'add-to-wishlist-pdp-button': 3571 // Check if app block is already handling the PDP button 3572 if (window.swymATWButtonConfig?.shopifyExtensionType === 'appblock') { 3573 return; 3574 } 3575 3576 if (!(window.SwymPageData && window.SwymPageData.et === 1)) { 3577 // Not initiating pdp button as it is not a product page 3578 return; 3579 } 3580 3581 // Inject addtowishlist.css into the document's <head> 3582 var head = document.head; 3583 var pdpButtonStylesheet = "https://cdn.shopify.com/extensions/01a117a8-87f5-7b2f-b200-6c3fdf4a33b5/swym-relay-844/assets/addtowishlistbutton.css"; 3584 var pdpButtonStylesheetTag = document.createElement('link'); 3585 pdpButtonStylesheetTag.id = `swym-pdp-button-stylesheet`; 3586 pdpButtonStylesheetTag.rel = 'stylesheet'; 3587 pdpButtonStylesheetTag.href = pdpButtonStylesheet; 3588 3589 if (!document.getElementById('swym-pdp-button-stylesheet')) { 3590 head.appendChild(pdpButtonStylesheetTag); 3591 } 3592 3593 var x = document.getElementsByTagName('script')[0]; 3594 function createAndInsertScript(id, src, onLoadCallback) { 3595 var scriptTag = document.createElement('script'); 3596 scriptTag.id = id; 3597 scriptTag.type = 'text/javascript'; 3598 scriptTag.src = src; 3599 scriptTag.onload = onLoadCallback; 3600 x.parentNode.insertBefore(scriptTag, x); 3601 } 3602 3603 var pdpButtonScript = "https://cdn.shopify.com/extensions/01a117a8-87f5-7b2f-b200-6c3fdf4a33b5/swym-relay-844/assets/addtowishlistbutton.js"; 3604 createAndInsertScript(`swym-pdp-button-script`, pdpButtonScript, function () { 3605 const pdpBtnApi = window.WishlistPlusPDPButtonAPI; 3606 if (pdpBtnApi) { 3607 pdpBtnApi.setDefaultCustomizationOptions(swat); 3608 pdpBtnApi.initializePDPButton(swat, true); 3609 } 3610 }); 3611 break; 3612 default: 3613 return; 3614 } 3615 }); 3616 }); 3617 })(); // IIFE to prevent polluting global scope 3618</script>
3618 3619 3620 3621
3622<script> 3623 (function () { 3624 // Get the settings from Shopify's Liquid variables and create the styles 3625 const isControlCentreEnabledFromMetafield = window?.SwymEnabledCommonFeatures?.["control-centre"]; 3626 const isCommonCustomizationEnabledFromMetafield = window?.SwymWishlistCommonCustomizationSettings && 3627 Object.keys(window.SwymWishlistCommonCustomizationSettings).length > 0; 3628 const isControlCentreEnabledFromBlockSettings = false; 3629 3630 if (!(isControlCentreEnabledFromMetafield && isCommonCustomizationEnabledFromMetafield) && !isControlCentreEnabledFromBlockSettings) { 3631 // Don't enable control centre if this is disabled and block settings are not enabled 3632 return; 3633 } 3634 3635 let borderRadius = 6; 3636 let drawerWidth = window?.SwymWishlistCommonCustomizationSettings?.storefrontLayoutDrawerWidth || 400; 3637 3638 // Check if block settings exist, use them, otherwise fall back to common settings 3639 let primaryBgColor = isControlCentreEnabledFromBlockSettings ? 3640 "#000000" : 3641 window.SwymWishlistCommonCustomizationSettings.primaryColor; 3642 3643 let primaryTextColor = isControlCentreEnabledFromBlockSettings ? 3644 "#ffffff" : 3645 window.SwymWishlistCommonCustomizationSettings.secondaryColor; 3646 3647 let secondaryBgColor = isControlCentreEnabledFromBlockSettings ? 3648 "#F4F8FE" : null; 3649 let secondaryTextColor = isControlCentreEnabledFromBlockSettings ? 3650 "#333333" : null; 3651 3652 // Only use color adjustment functions if we're using common settings 3653 if (!secondaryBgColor || !secondaryTextColor) { 3654 function adjustOpacity(color, opacity) { 3655 if (color[0] === '#') { 3656 color = color.slice(1); 3657 } 3658 3659 if (color.length === 3) { 3660 color = color.split('').map(char => char + char).join(''); 3661 } 3662 3663 const r = parseInt(color.slice(0, 2), 16); 3664 const g = parseInt(color.slice(2, 4), 16); 3665 const b = parseInt(color.slice(4, 6), 16); 3666 3667 return `rgba(${r}, ${g}, ${b}, ${opacity})`; 3668 } 3669 3670 function hexToRgb(color) { 3671 if (color[0] === '#') { 3672 color = color.slice(1); 3673 } 3674 if (color.length === 3) { 3675 color = color.split('').map(c => c + c).join(''); 3676 } 3677 3678 return { 3679 r: parseInt(color.slice(0, 2), 16), 3680 g: parseInt(color.slice(2, 4), 16), 3681 b: parseInt(color.slice(4, 6), 16) 3682 }; 3683 } 3684 3685 function getLuminance({ r, g, b }) { 3686 return 0.299 * r + 0.587 * g + 0.114 * b; 3687 } 3688 3689 function generateSecondaryColors(primaryBgColor, primaryTextColor) { 3690 const secondaryBgOpacity = 0.2; 3691 const secondaryTextOpacity = 0.8; 3692 3693 const secondaryBgColor = adjustOpacity(primaryBgColor, secondaryBgOpacity); 3694 3695 const bgRgb = hexToRgb(primaryBgColor); 3696 const bgLuminance = getLuminance(bgRgb); 3697 3698 // Determine whether to use dark or light text for contrast 3699 const lightText = adjustOpacity(primaryTextColor, secondaryTextOpacity); 3700 const darkText = adjustOpacity(primaryBgColor, secondaryTextOpacity); 3701 3702 const secondaryTextColor = bgLuminance > 186 ? darkText : lightText; 3703 3704 return { 3705 secondaryBgColor, 3706 secondaryTextColor 3707 }; 3708 } 3709 3710 const generatedColors = generateSecondaryColors(primaryBgColor, primaryTextColor); 3711 secondaryBgColor = secondaryBgColor || generatedColors.secondaryBgColor; 3712 secondaryTextColor = secondaryTextColor || generatedColors.secondaryTextColor; 3713 } 3714 3715 // Create the CSS rule 3716 let styles = ` 3717 .swym-storefront-layout-root-component { 3718 --swym-storefront-layout-ui-border-radius: ${borderRadius}px; 3719 --swym-storefront-layout-button-border-radius: ${borderRadius}px; 3720 --swym-storefront-layout-side-drawer-width: ${drawerWidth}px; 3721 --swym-storefront-layout-button-color-bg-primary: ${primaryBgColor}; 3722 --swym-storefront-layout-button-color-text-primary: ${primaryTextColor}; 3723 --swym-storefront-layout-button-color-bg-secondary: ${secondaryBgColor}; 3724 --swym-storefront-layout-button-color-text-secondary: ${secondaryTextColor}; 3725 } 3726 `; 3727 3728 // Create a <style> element and append the styles 3729 let styleSheet = document.createElement("style"); 3730 styleSheet.type = "text/css"; 3731 styleSheet.innerText = styles; 3732 document.head.appendChild(styleSheet); 3733 3734 if (typeof window.SwymStorefrontLayoutContext === 'undefined') { 3735 window.SwymStorefrontLayoutContext = {}; 3736 } 3737 if (typeof window.SwymStorefrontLayoutExtensions === 'undefined'){ 3738 window.SwymStorefrontLayoutExtensions = {}; 3739 } 3740 3741 // Expose block settings toggle state so ThemeCSSMapping can respect it. 3742 // When true, theme editor color pickers take priority over inherited theme CSS variables. 3743 SwymStorefrontLayoutContext.BlockSettingsEnabled = isControlCentreEnabledFromBlockSettings; 3744 3745 if (isControlCentreEnabledFromBlockSettings) { 3746 // If block settings are enabled, use them 3747 SwymStorefrontLayoutContext.Settings = { 3748 EnableStorefrontLayoutOnLauncher: true, 3749 EnableStorefrontLayoutNotification: window?.SwymWishlistCommonCustomizationSettings?.enableStorefrontLayoutNotification ?? true, 3750 StorefrontLayoutType: window?.SwymWishlistCommonCustomizationSettings?.storefrontLayoutType || "as-drawer", 3751 StorefrontLayoutDrawerPosition: "left", 3752 StorefrontLayoutAsSectionContainerId: "swym-wishlist-render-container", 3753 StorefrontLayoutAsSectionPageURL: "/pages/swym-wishlist", 3754 EnableStorefrontLayoutVariantSelector: true, 3755 StorefrontLayoutNotificationPosition: "left", 3756 StorefrontLayoutActionPopupPosition: "left", 3757 StorefrontLayoutNotificationDuration: 5000 3758 }; 3759 } else { 3760 // If only metafield is enabled but no block settings, use common settings 3761 SwymStorefrontLayoutContext.Settings = { 3762 EnableStorefrontLayoutOnLauncher: true, 3763 EnableStorefrontLayoutNotification: window?.SwymWishlistCommonCustomizationSettings?.enableStorefrontLayoutNotification ?? true, 3764 StorefrontLayoutType: window?.SwymWishlistCommonCustomizationSettings?.storefrontLayoutType || "as-drawer", 3765 StorefrontLayoutDrawerPosition: "left", 3766 StorefrontLayoutAsSectionContainerId: "swym-wishlist-render-container", 3767 StorefrontLayoutAsSectionPageURL: "/pages/swym-wishlist", 3768 EnableStorefrontLayoutVariantSelector: true, 3769 StorefrontLayoutNotificationPosition: "left", 3770 StorefrontLayoutActionPopupPosition: "left", 3771 StorefrontLayoutNotificationDuration: 5000 3772 }; 3773 } 3774 const storefrontLayoutCallback = (swat) =>{ 3775 SwymStorefrontLayoutContext.swat = swat; 3776 let isStoreOnPaidPlan = swat.getApp('Wishlist')?.['is-paid']; 3777 let isWishlistEnabled = swat.getApp('Wishlist')?.['enabled']; 3778 SwymStorefrontLayoutContext.Settings = { 3779 ...SwymStorefrontLayoutContext?.Settings, 3780 EnableStorefrontLayoutCollection: window?.SwymEnabledCommonFeatures?.["multiple-wishlist"] ?? false, 3781 EnableStorefrontLayout: isWishlistEnabled && (isControlCentreEnabledFromBlockSettings || isControlCentreEnabledFromMetafield), 3782 } 3783 3784 if(SwymStorefrontLayoutContext?.Settings?.EnableStorefrontLayout){ 3785 if(SwymStorefrontLayoutContext?.CustomEvents?.LayoutInitialized){ 3786 var event = new CustomEvent(SwymStorefrontLayoutContext.CustomEvents.LayoutInitialized, { 3787 detail: { settings: SwymStorefrontLayoutContext?.Settings } 3788 }); 3789 document.dispatchEvent(event); 3790 }else{ 3791 swat.utils.warn(`LayoutInitialized event is not defined.`); 3792 } 3793 }else{ 3794 swat.utils.warn(`Storefront Layout is disabled.`); 3795 document.getElementById("swym-storefront-layout-container")?.remove(); 3796 document.getElementById("swym-storefront-extention-render-container")?.remove(); 3797 } 3798 } 3799 3800 if (!window.SwymCallbacks) { 3801 window.SwymCallbacks = []; 3802 } 3803 window.SwymCallbacks.push(storefrontLayoutCallback); 3804 3805 SwymStorefrontLayoutContext.SwymCustomerData = { 3806 3807 name: null, 3808 email: null 3809 3810 };
3811 SwymStorefrontLayoutContext.isShopperLoggedIn = !!SwymStorefrontLayoutContext?.SwymCustomerData?.email; 3812 })(); 3813</script>
3813 3814 3815 3816 3817 3818</div>
3818<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
3818 3819</body>
3820<script> 3821 if (window.location.hostname === '127.0.0.1') { 3822 console.info('In Development Mode - Localhost'); 3823 3824 document.querySelectorAll('a').forEach(url => { 3825 url.href = url.href.replace('https://www.bman.ro/', 'http://127.0.0.1:9292/') 3826 }) 3827 } 3828</script>
3828 3829</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.