www.moodesigner.com
Open in
urlscan Pro
104.17.247.119
Public Scan
Submitted URL: http://moodesigner.com/
Effective URL: https://www.moodesigner.com/
Submission: On December 16 via manual from US — Scanned from AT
Effective URL: https://www.moodesigner.com/
Submission: On December 16 via manual from US — Scanned from AT
Form analysis
8 forms found in the DOM<form>
<input name="variant_id" type="hidden" value="${data.variants[0].id}">
<button type="button" class="product-snippet__quick-shop-icon" role="addToCart" data-quick-shop="${data.handle}" data-track-product-id="${data.id}" data-track="click" data-track-content="add_to_cart" data-track-source="quick_shop">
<svg class="" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
<path d="M8.6 1.9a.3.3 0 0 0-.3-.3h-.6a.3.3 0 0 0-.3.3v5.5H1.9a.3.3 0 0 0-.3.3v.6a.3.3 0 0 0 .3.3h5.5v5.5a.3.3 0 0 0 .3.3h.6a.3.3 0 0 0 .3-.3V8.6h5.5a.3.3 0 0 0 .3-.3v-.6a.3.3 0 0 0-.3-.3H8.6V1.9z" fill="currentColor"></path>
</svg>
</button>
</form>
GET /search
<form id="header_search_form_pc" class="header__search-form relative flex" action="/search" method="get">
<div class="md:flex-1 relative items-stretch">
<input @input-debounced="header_search_lightbox.open();header_search_predictive_render.rerender(data=event.value, redo=true);" class="header__search-input m-0 w-full type-text-font-family" autocomplete="off" type="text" name="q"
placeholder="Search products">
<button type="submit" class="header__search-icon absolute m-0 p-0 text-0 type-text-font-family cursor-pointer" tabindex="-1"><svg class="" width="18" height="18" xmlns="http://www.w3.org/2000/svg">
<path opacity=".01" fill="currentColor" d="M0 0h18v18H0z"></path>
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.41 13.885a6.923 6.923 0 1 1 .839-.728l3.412 3.413a.554.554 0 0 1-.783.783l-3.462-3.462a.383.383 0 0 1-.006-.006Zm1.713-5.577a5.815 5.815 0 1 1-11.63 0 5.815 5.815 0 0 1 11.63 0Z"
fill="currentColor"></path>
</svg></button>
<span onclick="header_search_form_pc.reset()" @tap="header_search_lightbox.close();" class="header__search-icon-close hidden items-center justify-center absolute m-0 p-0 type-text-font-family text-0 rounded-full cursor-pointer" tabindex="-2"><svg
class="" width="12" height="12" xmlns="http://www.w3.org/2000/svg">
<path
d="M2.746 1.992a.2.2 0 0 0-.283 0l-.471.471a.2.2 0 0 0 0 .283L5.245 6 1.992 9.25a.2.2 0 0 0 0 .283l.471.472a.2.2 0 0 0 .283 0L6 6.753l3.252 3.253a.2.2 0 0 0 .283 0l.472-.472a.2.2 0 0 0 0-.283L6.753 6l3.253-3.253a.2.2 0 0 0 0-.283l-.472-.471a.2.2 0 0 0-.283 0L6 5.245 2.746 1.992z"
fill="currentColor"></path>
</svg></span>
</div>
<button type="submit" class="header__search-submit-btn lg:hidden m-0 type-text-font-family">Search</button>
</form>
GET /search
<form id="header_search_form_md" class="header__search-form relative flex" action="/search" method="get">
<div class="md:flex-1 relative items-stretch">
<input @input-debounced="header_search_lightbox.open();header_search_predictive_render.rerender(data=event.value, redo=true);" class="header__search-input m-0 w-full type-text-font-family" autocomplete="off" type="text" name="q"
placeholder="Search products">
<button type="submit" class="header__search-icon absolute m-0 p-0 text-0 type-text-font-family cursor-pointer" tabindex="-1"><svg class="" width="18" height="18" xmlns="http://www.w3.org/2000/svg">
<path opacity=".01" fill="currentColor" d="M0 0h18v18H0z"></path>
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.41 13.885a6.923 6.923 0 1 1 .839-.728l3.412 3.413a.554.554 0 0 1-.783.783l-3.462-3.462a.383.383 0 0 1-.006-.006Zm1.713-5.577a5.815 5.815 0 1 1-11.63 0 5.815 5.815 0 0 1 11.63 0Z"
fill="currentColor"></path>
</svg></button>
<span onclick="header_search_form_md.reset()" @tap="header_search_lightbox.close();" class="header__search-icon-close hidden items-center justify-center absolute m-0 p-0 type-text-font-family text-0 rounded-full cursor-pointer" tabindex="-2"><svg
class="" width="12" height="12" xmlns="http://www.w3.org/2000/svg">
<path
d="M2.746 1.992a.2.2 0 0 0-.283 0l-.471.471a.2.2 0 0 0 0 .283L5.245 6 1.992 9.25a.2.2 0 0 0 0 .283l.471.472a.2.2 0 0 0 .283 0L6 6.753l3.252 3.253a.2.2 0 0 0 .283 0l.472-.472a.2.2 0 0 0 0-.283L6.753 6l3.253-3.253a.2.2 0 0 0 0-.283l-.472-.471a.2.2 0 0 0-.283 0L6 5.245 2.746 1.992z"
fill="currentColor"></path>
</svg></span>
</div>
<button type="submit" class="header__search-submit-btn lg:hidden m-0 type-text-font-family">Search</button>
</form>
POST
<form id="footer__newsletter__form" class="footer__newsletter__form type-text-font-family relative flex items-center md:w-full text-base" action-xhr="/api/customers/newsletters" method="POST" custom-validation="show-first-on-submit"
@submiterror="footer__newsletter__error-ajax.rerender(data=event);footer__newsletter__error-ajax.toggleClass(class='hidden', force=false);">
<input class="footer__newsletter__input clear flex-1 block lg:w-full px-4 lg:px-3" id="footer__newsletter__input" type="text" name="email" placeholder="Enter your email" required="" pattern="([A-Za-z0-9_\-.])+@([A-Za-z0-9_\-.])+\.([A-Za-z]{2,4})"
@input-debounced="footer__newsletter__error-ajax.toggleClass(class='hidden', force=true);">
<button class="footer__newsletter__btn type-text-font-family m-0 flex items-center border-none leading-none" type="submit">
<span class="md:hidden">Subscribe</span>
<svg class="lg:hidden" width="20" height="6" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
<path opacity=".01" fill="currentColor" d="M0 0h20v6H0z"></path>
<path fill="currentColor" d="M0 2h14v2H0z"></path>
<path fill-rule="evenodd" clip-rule="evenodd" d="m20 3-6 3V0l6 3Z" fill="currentColor"></path>
</svg>
</button>
<div class="footer__newsletter__error-tip" validation-for="footer__newsletter__input" visible-when-invalid="patternMismatch" hidden=""> Please enter a valid email address. </div>
<div class="footer__newsletter__error-tip" validation-for="footer__newsletter__input" visible-when-invalid="valueMissing" hidden=""> Please enter your email address. </div>
<spz-render id="footer__newsletter__error-ajax" class="footer__newsletter__error-tip hidden i-spzhtml-layout-container i-spzhtml-element i-spzhtml-notbuilt spz-notbuilt spz-unresolved i-spzhtml-unresolved" layout="container" manual=""
i-spzhtml-layout="container">
<template>
<div spz-if="${data.errors && data.errors.length > 0}"> ${data.errors && data.errors[0]} </div>
</template>
</spz-render>
<div class="footer__newsletter__success-tip flex-shrink-0 body-plus-2"> Thanks for subscribing </div>
</form>
<form>
<div class="quick-shop-content rounded-global-small">
<div class="quick-shop-inner-content">
<spz-variants name="quick-shop-variant" id="quick-shop-variants" class="pointer-events-none" layout="container" template="quick-shop-variant-template" spz-if="${product_options && product_options.length > 0}"
@mouseout="${mouse_out_event}" interact="hover" interference="" ${mouse_over_event}=""></spz-variants>
<button class="relative mt-5 lg:mt-6 button-primary flex items-center justify-center body-plus-2 type-text-font-family rounded-btn quick-shop_atc_btn" type="button" role="addToCart" data-track="click" data-track-content="add_to_cart"
data-track-source="add_to_cart">
<span role="content">${statusLan}</span>
<spz-render id="quick-shop-btn-price" layout="container" template="quick-shop-button-price-template" manual=""></spz-render>
<div class="loading items-center justify-center absolute inset-0" role="loading" show="">
<div class="loading-bounce"></div>
</div>
</button>
</div>
</div>
</form>
<form>
<div class="quick-shop-content rounded-global-small">
<div class="quick-shop-inner-content">
<spz-variants name="quick-shop-variant" id="quick-shop-variants" class="pointer-events-none" layout="container" template="quick-shop-variant-template" spz-if="${product_options && product_options.length > 0}"
@mouseout="${mouse_out_event}" interact="hover" interference="" ${mouse_over_event}=""></spz-variants>
<button class="relative mt-5 lg:mt-6 button-primary flex items-center justify-center body-plus-2 type-text-font-family rounded-btn quick-shop_atc_btn" type="button" role="addToCart" data-track="click" data-track-content="add_to_cart"
data-track-source="add_to_cart">
<span role="content">${statusLan}</span>
<spz-render id="quick-shop-btn-price" layout="container" template="quick-shop-button-price-template" manual=""></spz-render>
<div class="loading items-center justify-center absolute inset-0" role="loading" show="">
<div class="loading-bounce"></div>
</div>
</button>
</div>
</div>
</form>
<form class="">
<div class="zb-flex">
<a href="${product.url}?${toQuery({ aid: 'smart_recommend.2.' + data.id, ifb: product.ifb || '', cfb: product.cfb || '', scm: product.scm || data.scm || '', ssp: data.ssp || '' })}" impr="1" imprevt="1" class="zb-w-[132px] zb-mr-4 rtl:zb-ml-4 rtl:zb-mr-0" data-prdct="${product.id}" data-ifb="${product.ifb || ''}" data-cfb="${product.cfb || ''}" data-scm="${product.scm || data.scm || ''}" data-spm="${productIndex}"> <ljs-render layout="container" id="smart_cart_pop_image_${product.id}" template="smart_cart_pop_image_template" manual=""></ljs-render> </a>
<div class="zb-flex zb-flex-col zb-flex-grow zb-justify-between">
<div>
<div class="zb-line-clamp-2 zb-text-sm zb-mb-2">${product.title}</div> <ljs-render layout="container" id="smart_cart_pop_price_${product.id}" template="smart_cart_pop_price_template" manual=""></ljs-render>
</div>
<div>
<div class="zb-relative zb-w-full zb-cursor-pointer">
<div class="zb-border zb-border-solid zb-border-[#eee] zb-px-3 zb-py-[10px] zb-flex zb-items-center zb-justify-between zb-font-semibold zb-text-sm zb-rounded-sm"
@tap="smart_pop_variant-select-${product.id}.toggleClass(class=zb-rotate-180);smart_cart_pop_variant_${product.id}_mobile.toggleClass(class=zb-hidden);smart_cart_pop_variant_${product.id}_pc.toggleClass(class=smart_cart_pop_variant_pc_show,force=true);smart_cart_pop_variant_modal_${product.id}.open"
spz-if="${!!(product.options && product.options.length && product.options.length > 0) && data.config.variant_select_visible}"> <ljs-render manual="" layout="container" id="smart_cart_pop_variant_text_${product.id}"
template="smart_cart_pop_variant_text_template"></ljs-render> <svg id="smart_pop_variant-select-${product.id}" width="12" height="8" class="zb-ml-2" viewBox="0 0 12 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
d="M6.00002 7.06738C6.19244 7.06775 6.38498 6.99453 6.5318 6.84772C6.54504 6.83447 6.55769 6.82086 6.56973 6.8069L11.1251 2.25152C11.418 1.95863 11.418 1.48375 11.1251 1.19086C10.8322 0.897968 10.3573 0.897968 10.0645 1.19086L6.00003 5.25529L1.9356 1.19086C1.64271 0.897968 1.16784 0.897968 0.874943 1.19086C0.58205 1.48375 0.58205 1.95863 0.874943 2.25152L5.43033 6.8069C5.44237 6.82086 5.45502 6.83447 5.46826 6.84772C5.61507 6.99453 5.8076 7.06775 6.00002 7.06738Z"
fill="#0A1533"></path>
</svg> </div> <ljs-lightbox layout="nodisplay" disable-unmount="" class="smart_cart_pop_lightbox_pc" id="smart_cart_pop_variant_modal_${product.id}" @close="smart_pop_variant-select-${product.id}.toggleClass(class=zb-rotate-180);">
<div id="smart_cart_pop_variant_${product.id}_pc" class="zb-hidden"><ljs-variants id="smart_cart_pop_variants_${product.id}"
class="md:!zb-absolute md:zb-top-[50px] md:zb-w-full md:zb-left-0 md:zb-z-30 md:zb-bg-white zb-max-h-[280px] zb-overflow-y-auto md:zb-shadow-pop" layout="container" template="smart_cart_pop_variant_template"
onclick="event.stopPropagation()" disabled-dj-event="" interference=""> </ljs-variants></div>
</ljs-lightbox>
</div>
<div class="zb-mt-3"> <button product-id="${product.id}" id="smart_cart_pop_atc_btn_${product.id}"
class="zb-flex zb-items-center zb-justify-center zb-w-full zb-text-white zb-py-[10px] zb-h-9 zb-text-xs zb-font-normal zb-border-none zb-rounded-[4px] smart_cart_pop_atc_btn_bg" type="button" role="addToCart"
@tap="smart_cart_pop_loading_${product.id}.toggleClass(class=zb-hidden);smart_cart_pop_atc_${product.id}.toggleClass(class=zb-hidden);smart_cart_pop_atc_btn_${product.id}.toggleClass(class=zb-pointer-events-none);custom-func.addATCHook(activity_id='${data.id}',ifb='${product.ifb}',cfb='${product.cfb}',scm='${product.scm || data.scm}',ssp='${data.ssp}',spm='${data.spmBase}.${productIndex}')">
<ljs-render layout="container" id="smart_cart_pop_atc_${product.id}" template="smart_cart_pop_atc_template" mamual="" class="notranslate"> </ljs-render>
<div id="smart_cart_pop_added_${product.id}" class="zb-hidden"><span class="zb-flex zb-justify-center zb-gap-1"><svg width="14" height="15" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
d="M8 16.5006C3.58171 16.5006 0 12.9183 0 8.5C0 4.08171 3.58171 0.5 8 0.5C12.4183 0.5 16 4.08171 16 8.5C16 12.9183 12.4183 16.5006 8 16.5006ZM8 2.04344C4.21314 2.04344 1.54287 4.71371 1.54287 8.50057C1.54287 12.2874 4.21314 14.9577 8 14.9577C11.7869 14.9577 14.4571 12.2874 14.4571 8.50057C14.4571 4.71371 11.7869 2.04344 8 2.04344ZM7.26057 11.1909L7.12229 11.3286L7.09543 11.3017C7.02286 11.336 6.94286 11.3577 6.85714 11.3577C6.73543 11.3577 6.62857 11.3109 6.536 11.2463L6.52229 11.2594L6.45371 11.1909C6.45314 11.1903 6.45314 11.1903 6.45257 11.1897L4.09771 8.83486L4.90629 8.02686L6.85714 9.97771L11.1629 5.67143L11.9714 6.48L7.26171 11.1897C7.26114 11.1903 7.26114 11.1903 7.26057 11.1909Z"
fill="white"></path>
</svg>Added</span></div>
<div id="smart_cart_pop_loading_${product.id}" class="zb-hidden">
<div class="smart_cart_pop_loading"></div>
</div>
</button> </div>
</div>
</div>
</div>
<div id="smart_cart_pop_variant_${product.id}_mobile" class="zb-hidden md:zb-hidden"><ljs-variants id="smart_cart_pop_variants_${product.id}"
class="md:!zb-absolute md:zb-top-[50px] md:zb-w-full md:zb-left-0 md:zb-z-30 md:zb-bg-white zb-max-h-[280px] zb-overflow-y-auto md:zb-shadow-pop" layout="container" template="smart_cart_pop_variant_template" onclick="event.stopPropagation()"
disabled-dj-event="" interference=""> </ljs-variants></div>
</form>
<form class="animated modal__form-style_template_rebate_multi layers-3" id="modal__form"
style="image: none; background: linear-gradient(180deg, #ff704f, #ff274b, #ff274b) no-repeat scroll center center/cover; background1: #ff704f; background2: #ff274b; backgroundImageTemplate: linear-gradient(180deg, $bg1, $bg2, $bg2); ; width: 560px;">
<div class="modal__title"><span style="font-size: 32px; font-weight: 900; font-family: Lato, Lato-Black; color: #fefffe;" data-mce-style="font-size: 32px; font-weight: 900; font-family: Lato, Lato-Black; color: #fefffe;">SPECIAL OFFER</span></div>
<div class="modal__discount-layers layers-3" style="width: 500px;">
<div class="modal__discount-layer layer-0">
<div class="discount-layer__content d-flex flex-column justify-content-center align-items-center">
<div style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;" data-mce-style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;">
<div style="display: flex;justify-content: center;" data-mce-style="display: flex;justify-content: center;">
<span style="font-size: 44px; color: #ff2f4b;" data-mce-style="display: block;font-size: 44px; color: inherit;">15</span>
<div style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;" data-mce-style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;">
<span style="font-size: 26px;display: block;" data-mce-style="display: block;font-size: 26px; color: #ff2f4b;">%</span>
<span style="color:#ff2f4b;font-size: 12px;" data-mce-style="color:#ff2f4b;font-size: 12px;">OFF</span>
</div>
</div>
<div style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;" data-mce-style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;">FOR THE</div>
<div style="margin-top: 5px;font-size: 14px; color: #AE6002;" data-mce-style="margin-top: 5px;font-size: 14px; color: #AE6002;">2nd <span style="color: #AE6002;" data-mce-style="color: #AE6002;">ITEM</span></div>
</div>
</div>
<div class="discount-layer__content_hidden d-flex flex-column justify-content-center align-items-center">
<div style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;" data-mce-style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;">
<div style="display: flex;justify-content: center;" data-mce-style="display: flex;justify-content: center;">
<span style="font-size: 44px; color: #ff2f4b;" data-mce-style="display: block;font-size: 44px; color: inherit;">15</span>
<div style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;" data-mce-style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;">
<span style="font-size: 26px;display: block;" data-mce-style="display: block;font-size: 26px; color: #ff2f4b;">%</span>
<span style="color:#ff2f4b;font-size: 12px;" data-mce-style="color:#ff2f4b;font-size: 12px;">OFF</span>
</div>
</div>
<div style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;" data-mce-style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;">FOR THE</div>
<div style="margin-top: 5px;font-size: 14px; color: #AE6002;" data-mce-style="margin-top: 5px;font-size: 14px; color: #AE6002;">2nd <span style="color: #AE6002;" data-mce-style="color: #AE6002;">ITEM</span></div>
</div>
</div>
<svg class="modal__discount-bg" width="166" height="104" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<filter x="-8.7%" y="-12.5%" width="117.3%" height="129.5%" filterUnits="objectBoundingBox" id="a">
<feOffset dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="4" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 1 0 0 0 0 0 0 0 0 0 0.0980392157 0 0 0 0.5 0" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<path d="M150 0v8a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6H0v-6a5 5 0 000-10v-6a5 5 0 000-10v-6a5 5 0 000-10v-6a5 5 0 000-10v-6A5 5 0 000 8V0h150z" id="b"></path>
</defs>
<g fill="none" fill-rule="evenodd">
<g transform="translate(8 6)">
<use fill="#FFFBF2" xlink:href="#b"></use>
</g>
<path stroke="#AE6002" opacity=".196" stroke-dasharray="2.6" d="M142.5 12v76m-120-76v76"></path>
</g>
</svg>
</div>
<div class="modal__discount-layer layer-1">
<div class="discount-layer__content d-flex flex-column justify-content-center align-items-center">
<div style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;" data-mce-style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;">
<div style="display: flex;justify-content: center;" data-mce-style="display: flex;justify-content: center;">
<span style="font-size: 44px; color: #ff2f4b;" data-mce-style="display: block;font-size: 44px; color: inherit;">30</span>
<div style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;" data-mce-style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;">
<span style="font-size: 26px;display: block;" data-mce-style="display: block;font-size: 26px; color: #ff2f4b;">%</span>
<span style="color:#ff2f4b;font-size: 12px;" data-mce-style="color:#ff2f4b;font-size: 12px;">OFF</span>
</div>
</div>
<div style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;" data-mce-style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;">FOR THE</div>
<div style="margin-top: 5px;font-size: 14px; color: #AE6002;" data-mce-style="margin-top: 5px;font-size: 14px; color: #AE6002;">3rd <span style="color: #AE6002;" data-mce-style="color: #AE6002;">ITEM</span></div>
</div>
</div>
<div class="discount-layer__content_hidden d-flex flex-column justify-content-center align-items-center">
<div style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;" data-mce-style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;">
<div style="display: flex;justify-content: center;" data-mce-style="display: flex;justify-content: center;">
<span style="font-size: 44px; color: #ff2f4b;" data-mce-style="display: block;font-size: 44px; color: inherit;">30</span>
<div style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;" data-mce-style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;">
<span style="font-size: 26px;display: block;" data-mce-style="display: block;font-size: 26px; color: #ff2f4b;">%</span>
<span style="color:#ff2f4b;font-size: 12px;" data-mce-style="color:#ff2f4b;font-size: 12px;">OFF</span>
</div>
</div>
<div style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;" data-mce-style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;">FOR THE</div>
<div style="margin-top: 5px;font-size: 14px; color: #AE6002;" data-mce-style="margin-top: 5px;font-size: 14px; color: #AE6002;">3rd <span style="color: #AE6002;" data-mce-style="color: #AE6002;">ITEM</span></div>
</div>
</div>
<svg class="modal__discount-bg" width="166" height="104" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<filter x="-8.7%" y="-12.5%" width="117.3%" height="129.5%" filterUnits="objectBoundingBox" id="a">
<feOffset dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="4" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 1 0 0 0 0 0 0 0 0 0 0.0980392157 0 0 0 0.5 0" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<path d="M150 0v8a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6H0v-6a5 5 0 000-10v-6a5 5 0 000-10v-6a5 5 0 000-10v-6a5 5 0 000-10v-6A5 5 0 000 8V0h150z" id="b"></path>
</defs>
<g fill="none" fill-rule="evenodd">
<g transform="translate(8 6)">
<use fill="#FFFBF2" xlink:href="#b"></use>
</g>
<path stroke="#AE6002" opacity=".196" stroke-dasharray="2.6" d="M142.5 12v76m-120-76v76"></path>
</g>
</svg>
</div>
<div class="modal__discount-layer layer-2">
<div class="discount-layer__content d-flex flex-column justify-content-center align-items-center">
<div style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;" data-mce-style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;">
<div style="display: flex;justify-content: center;" data-mce-style="display: flex;justify-content: center;">
<span style="font-size: 44px; color: #ff2f4b;" data-mce-style="display: block;font-size: 44px; color: inherit;">50</span>
<div style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;" data-mce-style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;">
<span style="font-size: 26px;display: block;" data-mce-style="display: block;font-size: 26px; color: #ff2f4b;">%</span>
<span style="color:#ff2f4b;font-size: 12px;" data-mce-style="color:#ff2f4b;font-size: 12px;">OFF</span>
</div>
</div>
<div style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;" data-mce-style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;">FOR THE</div>
<div style="margin-top: 5px;font-size: 14px; color: #AE6002;" data-mce-style="margin-top: 5px;font-size: 14px; color: #AE6002;">4th <span style="color: #AE6002;" data-mce-style="color: #AE6002;">ITEM</span></div>
</div>
</div>
<div class="discount-layer__content_hidden d-flex flex-column justify-content-center align-items-center">
<div style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;" data-mce-style="color:#ff2f4b;font-family: Lato, Lato-Regular;white-space: nowrap;">
<div style="display: flex;justify-content: center;" data-mce-style="display: flex;justify-content: center;">
<span style="font-size: 44px; color: #ff2f4b;" data-mce-style="display: block;font-size: 44px; color: inherit;">50</span>
<div style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;" data-mce-style="margin-left: 5px;display: flex;flex-direction: column;justify-content: center;">
<span style="font-size: 26px;display: block;" data-mce-style="display: block;font-size: 26px; color: #ff2f4b;">%</span>
<span style="color:#ff2f4b;font-size: 12px;" data-mce-style="color:#ff2f4b;font-size: 12px;">OFF</span>
</div>
</div>
<div style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;" data-mce-style="margin-top: 5px;color: #AE6002;font-size: 12px;opacity: 0.3;">FOR THE</div>
<div style="margin-top: 5px;font-size: 14px; color: #AE6002;" data-mce-style="margin-top: 5px;font-size: 14px; color: #AE6002;">4th <span style="color: #AE6002;" data-mce-style="color: #AE6002;">ITEM</span></div>
</div>
</div>
<svg class="modal__discount-bg" width="166" height="104" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<filter x="-8.7%" y="-12.5%" width="117.3%" height="129.5%" filterUnits="objectBoundingBox" id="a">
<feOffset dy="2" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="4" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 1 0 0 0 0 0 0 0 0 0 0.0980392157 0 0 0 0.5 0" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<path d="M150 0v8a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6a5 5 0 100 10v6H0v-6a5 5 0 000-10v-6a5 5 0 000-10v-6a5 5 0 000-10v-6a5 5 0 000-10v-6A5 5 0 000 8V0h150z" id="b"></path>
</defs>
<g fill="none" fill-rule="evenodd">
<g transform="translate(8 6)">
<use fill="#FFFBF2" xlink:href="#b"></use>
</g>
<path stroke="#AE6002" opacity=".196" stroke-dasharray="2.6" d="M142.5 12v76m-120-76v76"></path>
</g>
</svg>
</div>
</div>
<div class="modal__button" style="background-color: #fff3be; border-color: #fff3be; "><span style="color: #FF0022; font-size: 16px; font-weight: bold;font-family: Lato, Lato-Regular;"
data-mce-style="color: #FF0022; font-size: 16px; font-weight: bold;font-family: Lato, Lato-Regular;">COLLECT ALL</span></div>
<div class="modal__close-icon d-block d-md-none">
<svg width="30" height="30" xmlns="http://www.w3.org/2000/svg">
<g fill="#FFF" fill-rule="nonzero">
<path d="M15 0c8.284 0 15 6.716 15 15 0 8.284-6.716 15-15 15-8.284 0-15-6.716-15-15C0 6.716 6.716 0 15 0zm0 2C7.82 2 2 7.82 2 15s5.82 13 13 13 13-5.82 13-13S22.18 2 15 2z"></path>
<path
d="M19.905 9.505a.7.7 0 01.073.903l-.073.087-4.211 4.209 4.21 4.21a.7.7 0 01-.903 1.064l-.086-.073-4.211-4.211-4.209 4.21a.7.7 0 01-1.064-.903l.074-.086 4.21-4.211-4.21-4.209a.7.7 0 01.903-1.064l.087.074 4.209 4.21 4.21-4.21a.7.7 0 01.99 0z">
</path>
</g>
</svg>
</div>
<svg class="modal__close-icon d-md-block d-none" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200">
<defs>
<style></style>
</defs>
<path d="M238.36 863.697L863.696 238.36a46.545 46.545 0 00-65.815-65.815L172.544 797.882a46.545 46.545 0 1065.815 65.815zM172.543 238.36l625.338 625.338a46.545 46.545 0 0065.815-65.815L238.36 172.544a46.545 46.545 0 10-65.815 65.815z"
fill="#fff"></path>
</svg>
<div class="modal__footer">
<span style="font-size: 14px; color: #ffffff;font-family: Lato, Lato-Regular;" data-mce-style="font-size: 14px; color: #fff;font-family: Lato, Lato-Regular;">*Discounts would automatically apply when placing an order</span>
</div>
</form>
Text Content
${(function(){ const get_random_six_digits = () => { return Math.random().toString().slice(-6) }; const wholesale_enabled = false; const setting_product_image_display = "133.33%"; const product_image = data.image; const secondary_image = data.secondImage; const image_width = product_image.width; let image_height = product_image.height; if(setting_product_image_display == '100%'){ image_height = image_width }else if(setting_product_image_display == '133.33%'){ image_height = image_width * 1.3333; }; const product_image_hover_on = true && !!secondary_image.src; const has_save_label = true && ((+data.compare_at_price) > (+data.price)); const is_single_variant = data.variants.length == 1; const min_price_variant_href = (data.min_price_variant && data.min_price_variant.available) ? data.min_price_variant.withinUrl : data.withinUrl; const retail_price_max = data.retail_price_max || data.compare_at_price_max; const THUMBNAILS_MAX_SIZE = 3; const thumbnails = data.thumbVariants.slice(0, THUMBNAILS_MAX_SIZE); const image_wrap_id = 'image_wrap_' + get_random_six_digits(); const image_carousel_id = 'image_carousel_' + get_random_six_digits(); const thumbnails_selector_id = 'thumbnails_selector_' + get_random_six_digits(); const form_id = 'form_' + get_random_six_digits(); const mixed_wholesale = data.mixed_wholesale; return ` ${ data.available ? `${ (+data.compare_at_price > +data.price) ? `Save ` : '' }` : "Sold out" } Mixed Lot ${DATA.TITLE} ${ data.price_min != data.price_max ? `From ` : ` ` } +${data.remainInvisibleThumbCount} ` })()} Free shipping on international order of $69+ Free shipping on international order of $69+ Search EUR * United States Dollars (USD) * Euro (EUR) * United Kingdom Pounds (GBP) * Canadian Dollars (CAD) * Log in * Create an account ${data.data && data.data.count} * Home * Ireland Travel * Scotland Travel * Cat 🐈 * Dog * 🕊️Peace🕊️ 🌹Syria Will Be Free🕊️ Lebanon Save Gaza MEN'S WE HOPE PEACE FOREVER VELVET KEEP WARM CASUAL HOODIE €55.24 * Classic Ethnic * Protected Species * More links ${(function(){ const formatLinks = (links) => { return links.map(link => { link.tag = tags[link.title.toUpperCase()] || {}; link.target_attr = link.target == '_blank' ? 'target="_blank"' : ''; link.href_attr = link.url ? `href="${link.url}"` : ''; if(link.children && link.children.length){ link.children = formatLinks(link.children); } return link; }) }; const tags = "{}"; let linkList = [ { id: 72096765, title: "Home", url: "\/", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096767, title: "Ireland Travel", url: "\/collections\/ireland-travel", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096769, title: "Scotland Travel", url: "\/collections\/scotland-travel-vintage-plaid", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096771, title: "Cat \ud83d\udc08", url: "\/collections\/cat-\ud83d\udc08", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096773, title: "Dog", url: "\/collections\/puppy", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096775, title: "\ud83d\udd4a\ufe0fPeace\ud83d\udd4a\ufe0f", url: "\/collections\/free-palestinian", target: "", levels: 1, product0: {"id":"34e1bd8e-efab-4094-8db6-03fa4080be0a","title":"Men's We Hope Peace Forever Velvet Keep Warm Casual Hoodie","brief":"","vendor":"","vendor_url":"","has_only_default_variant":false,"requires_shipping":true,"taxable":true,"published":true,"handle":"mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie","spu":"DZ-175425-LLQ","need_variant_image":true,"updated_at":"2024-10-24T08:16:24Z","created_at":"2024-10-24T08:16:24Z","mixed_wholesale":false,"min_price_variant":{"id":"f1c44462-5c24-4ff4-ae47-073a22148c1b","title":"Khaki-S","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-S","barcode":"","position":1,"option1":"Khaki","option2":"S","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":""},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=f1c44462-5c24-4ff4-ae47-073a22148c1b","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"S"}],"off_ratio":0},"tags":"\u6b27\u7f8e\u670d\u88c5,\u4e0a\u8863,POD,INS\u7537,\u5371\u9669\u7248,\u5df4\u52d2\u65af\u5766,\u53cd\u6218","available":true,"price_min":"57.99","price":"57.99","price_max":"57.99","compare_at_price_min":"0","compare_at_price":"0","compare_at_price_max":"0","retail_price_min":"0","retail_price_max":"0","url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie","published_at":"2024-10-24T08:16:24Z","image":{"src":"\/\/img.fantaskycdn.com\/4c274bb50f9f4daa9936369df94aed31.jpeg","path":"4c274bb50f9f4daa9936369df94aed31.jpeg","width":750,"height":1000,"alt":"","aspect_ratio":0.75},"options":[{"id":"82f243d8-f35a-43ac-b495-a4c1bb0e7d5a","name":"Color","position":1,"values":["Khaki"]},{"id":"c5fe5b33-14e8-457b-b16d-1ea918a2bb0b","name":"Size","position":2,"values":["S","M","L","XL","2XL","3XL","4XL","5XL"]}],"variants":[{"id":"f1c44462-5c24-4ff4-ae47-073a22148c1b","title":"Khaki-S","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-S","barcode":"","position":1,"option1":"Khaki","option2":"S","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=f1c44462-5c24-4ff4-ae47-073a22148c1b","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"c5b7da9d-7ab3-469b-92c0-aeb5914a085e","title":"Khaki-M","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-M","barcode":"","position":2,"option1":"Khaki","option2":"M","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=c5b7da9d-7ab3-469b-92c0-aeb5914a085e","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"c60495ab-3e54-48a0-a63c-7a8d7ca2e86c","title":"Khaki-L","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-L","barcode":"","position":3,"option1":"Khaki","option2":"L","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=c60495ab-3e54-48a0-a63c-7a8d7ca2e86c","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"c260e0e6-5615-4068-a964-7cb5b67e5b2e","title":"Khaki-XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-XL","barcode":"","position":4,"option1":"Khaki","option2":"XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=c260e0e6-5615-4068-a964-7cb5b67e5b2e","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"92edb151-89a8-47b7-a5cc-78660522fbd7","title":"Khaki-2XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-2XL","barcode":"","position":5,"option1":"Khaki","option2":"2XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=92edb151-89a8-47b7-a5cc-78660522fbd7","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"1b412b02-4397-4323-9bd8-11d6774ed59e","title":"Khaki-3XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-3XL","barcode":"","position":6,"option1":"Khaki","option2":"3XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=1b412b02-4397-4323-9bd8-11d6774ed59e","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"97000bbc-bc07-40e4-8daa-db16d7cadf8a","title":"Khaki-4XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-4XL","barcode":"","position":7,"option1":"Khaki","option2":"4XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=97000bbc-bc07-40e4-8daa-db16d7cadf8a","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"4XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"20afcdb7-e9f6-43a7-b5b1-f77ebaabfe21","title":"Khaki-5XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-5XL","barcode":"","position":8,"option1":"Khaki","option2":"5XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=20afcdb7-e9f6-43a7-b5b1-f77ebaabfe21","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"5XL"}],"off_ratio":0,"flashsale_info":[],"sales":null}],"images":[{"src":"\/\/img.fantaskycdn.com\/4c274bb50f9f4daa9936369df94aed31.jpeg","path":"4c274bb50f9f4daa9936369df94aed31.jpeg","width":750,"height":1000,"alt":"","aspect_ratio":0.75},{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1}],"retail_price":"0","off_ratio":0,"price_varies":true} || {}, children: [ { title: "\ud83c\udf39Syria Will Be Free\ud83d\udd4a\ufe0f", url: "\/collections\/\ud83c\udf39syria-will-be-free\ud83d\udd4a", target: "", levels: 0, children: [ ] }, { title: "Lebanon", url: "\/collections\/lebanon", target: "", levels: 0, children: [ ] }, { title: "Save Gaza", url: "\/collections\/save-gaza", target: "", levels: 0, children: [ ] }, ] }, { id: 72096783, title: "Classic Ethnic", url: "\/collections\/classic-ethnic", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096785, title: "Protected Species", url: "\/collections\/protect-elephants", target: "", levels: 0, product0: null || {}, children: [ ] }, ].slice(offset); linkList = formatLinks(linkList); const hasChild = linkList.some(link => !!(link.children && link.children.length || link.product0.id)); return ` * ${link.title} ${link.tag.label} * ${second_link.title} ${second_link.tag.label} ${third_links.title} ${third_links.tag.label} * ${link.title} ${link.tag.label} ` })()} * Home * Ireland Travel * Scotland Travel * Cat 🐈 * Dog * 🕊️Peace🕊️ 🌹Syria Will Be Free🕊️ Lebanon Save Gaza MEN'S WE HOPE PEACE FOREVER VELVET KEEP WARM CASUAL HOODIE €55.24 * Classic Ethnic * Protected Species * More links ${(function(){ const formatLinks = (links) => { return links.map(link => { link.tag = tags[link.title.toUpperCase()] || {}; link.target_attr = link.target == '_blank' ? 'target="_blank"' : ''; link.href_attr = link.url ? `href="${link.url}"` : ''; if(link.children && link.children.length){ link.children = formatLinks(link.children); } return link; }) }; const tags = "{}"; let linkList = [ { id: 72096765, title: "Home", url: "\/", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096767, title: "Ireland Travel", url: "\/collections\/ireland-travel", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096769, title: "Scotland Travel", url: "\/collections\/scotland-travel-vintage-plaid", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096771, title: "Cat \ud83d\udc08", url: "\/collections\/cat-\ud83d\udc08", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096773, title: "Dog", url: "\/collections\/puppy", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096775, title: "\ud83d\udd4a\ufe0fPeace\ud83d\udd4a\ufe0f", url: "\/collections\/free-palestinian", target: "", levels: 1, product0: {"id":"34e1bd8e-efab-4094-8db6-03fa4080be0a","title":"Men's We Hope Peace Forever Velvet Keep Warm Casual Hoodie","brief":"","vendor":"","vendor_url":"","has_only_default_variant":false,"requires_shipping":true,"taxable":true,"published":true,"handle":"mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie","spu":"DZ-175425-LLQ","need_variant_image":true,"updated_at":"2024-10-24T08:16:24Z","created_at":"2024-10-24T08:16:24Z","mixed_wholesale":false,"min_price_variant":{"id":"f1c44462-5c24-4ff4-ae47-073a22148c1b","title":"Khaki-S","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-S","barcode":"","position":1,"option1":"Khaki","option2":"S","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":""},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=f1c44462-5c24-4ff4-ae47-073a22148c1b","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"S"}],"off_ratio":0},"tags":"\u6b27\u7f8e\u670d\u88c5,\u4e0a\u8863,POD,INS\u7537,\u5371\u9669\u7248,\u5df4\u52d2\u65af\u5766,\u53cd\u6218","available":true,"price_min":"57.99","price":"57.99","price_max":"57.99","compare_at_price_min":"0","compare_at_price":"0","compare_at_price_max":"0","retail_price_min":"0","retail_price_max":"0","url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie","published_at":"2024-10-24T08:16:24Z","image":{"src":"\/\/img.fantaskycdn.com\/4c274bb50f9f4daa9936369df94aed31.jpeg","path":"4c274bb50f9f4daa9936369df94aed31.jpeg","width":750,"height":1000,"alt":"","aspect_ratio":0.75},"options":[{"id":"82f243d8-f35a-43ac-b495-a4c1bb0e7d5a","name":"Color","position":1,"values":["Khaki"]},{"id":"c5fe5b33-14e8-457b-b16d-1ea918a2bb0b","name":"Size","position":2,"values":["S","M","L","XL","2XL","3XL","4XL","5XL"]}],"variants":[{"id":"f1c44462-5c24-4ff4-ae47-073a22148c1b","title":"Khaki-S","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-S","barcode":"","position":1,"option1":"Khaki","option2":"S","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=f1c44462-5c24-4ff4-ae47-073a22148c1b","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"c5b7da9d-7ab3-469b-92c0-aeb5914a085e","title":"Khaki-M","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-M","barcode":"","position":2,"option1":"Khaki","option2":"M","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=c5b7da9d-7ab3-469b-92c0-aeb5914a085e","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"M"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"c60495ab-3e54-48a0-a63c-7a8d7ca2e86c","title":"Khaki-L","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-L","barcode":"","position":3,"option1":"Khaki","option2":"L","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=c60495ab-3e54-48a0-a63c-7a8d7ca2e86c","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"L"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"c260e0e6-5615-4068-a964-7cb5b67e5b2e","title":"Khaki-XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-XL","barcode":"","position":4,"option1":"Khaki","option2":"XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=c260e0e6-5615-4068-a964-7cb5b67e5b2e","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"92edb151-89a8-47b7-a5cc-78660522fbd7","title":"Khaki-2XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-2XL","barcode":"","position":5,"option1":"Khaki","option2":"2XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=92edb151-89a8-47b7-a5cc-78660522fbd7","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"2XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"1b412b02-4397-4323-9bd8-11d6774ed59e","title":"Khaki-3XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-3XL","barcode":"","position":6,"option1":"Khaki","option2":"3XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=1b412b02-4397-4323-9bd8-11d6774ed59e","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"3XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"97000bbc-bc07-40e4-8daa-db16d7cadf8a","title":"Khaki-4XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-4XL","barcode":"","position":7,"option1":"Khaki","option2":"4XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=97000bbc-bc07-40e4-8daa-db16d7cadf8a","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"4XL"}],"off_ratio":0,"flashsale_info":[],"sales":null},{"id":"20afcdb7-e9f6-43a7-b5b1-f77ebaabfe21","title":"Khaki-5XL","weight_unit":"g","inventory_quantity":1,"sku":"DZ-175425-LLQ-Khaki-5XL","barcode":"","position":8,"option1":"Khaki","option2":"5XL","option3":"","image":{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":57.99,"min_quantity":1}],"weight":"300","compare_at_price":"0","price":"57.99","retail_price":"0","available":true,"url":"\/products\/mens-we-hope-peace-forever-velvet-keep-warm-casual-hoodie?variant=20afcdb7-e9f6-43a7-b5b1-f77ebaabfe21","available_quantity":999999999,"options":[{"name":"Color","value":"Khaki"},{"name":"Size","value":"5XL"}],"off_ratio":0,"flashsale_info":[],"sales":null}],"images":[{"src":"\/\/img.fantaskycdn.com\/4c274bb50f9f4daa9936369df94aed31.jpeg","path":"4c274bb50f9f4daa9936369df94aed31.jpeg","width":750,"height":1000,"alt":"","aspect_ratio":0.75},{"src":"\/\/img.fantaskycdn.com\/bd5a138205d864e367bc17abe532c5d0.jpeg","path":"bd5a138205d864e367bc17abe532c5d0.jpeg","width":1128,"height":1128,"alt":"","aspect_ratio":1}],"retail_price":"0","off_ratio":0,"price_varies":true} || {}, children: [ { title: "\ud83c\udf39Syria Will Be Free\ud83d\udd4a\ufe0f", url: "\/collections\/\ud83c\udf39syria-will-be-free\ud83d\udd4a", target: "", levels: 0, children: [ ] }, { title: "Lebanon", url: "\/collections\/lebanon", target: "", levels: 0, children: [ ] }, { title: "Save Gaza", url: "\/collections\/save-gaza", target: "", levels: 0, children: [ ] }, ] }, { id: 72096783, title: "Classic Ethnic", url: "\/collections\/classic-ethnic", target: "", levels: 0, product0: null || {}, children: [ ] }, { id: 72096785, title: "Protected Species", url: "\/collections\/protect-elephants", target: "", levels: 0, product0: null || {}, children: [ ] }, ].slice(offset); linkList = formatLinks(linkList); const hasChild = linkList.some(link => !!(link.children && link.children.length || link.product0.id)); return ` * ${link.title} ${link.tag.label} * ${second_link.title} ${second_link.tag.label} ${third_links.title} ${third_links.tag.label} * ${link.title} ${link.tag.label} ` })()} EUR * United States Dollars (USD) * Euro (EUR) * United Kingdom Pounds (GBP) * Canadian Dollars (CAD) * Log in * Create an account ${data.data && data.data.count} Search * Home * Ireland Travel * Scotland Travel * Cat 🐈 * Dog * 🕊️Peace🕊️ * 🌹Syria Will Be Free🕊️ * Lebanon * Save Gaza * Classic Ethnic * Protected Species ${(function(){ if (data === undefined || typeof data !== 'string' || data == '') return ''; const keyword = encodeURIComponent(data); return ` View more Your search for '${data}' did not yield any results. ` })()} (function(){ let w = window.innerWidth; function setHeaderCssVar() { const headerEle = document.getElementById('shoplaza-section-header'); if(!headerEle){ return }; document.body.style.setProperty('--window-height', `${window.innerHeight}px`); document.body.style.setProperty('--header-height', `${headerEle.clientHeight}px`); const mdScorllHideEle = headerEle.querySelector('.header__mobile .header__scroll_hide'); if (mdScorllHideEle) { document.body.style.setProperty('--header-scroll-hide-height-md', `${mdScorllHideEle.clientHeight}px`); } const pcScorllHideEle = headerEle.querySelector('.header__desktop .header__scroll_hide'); if (pcScorllHideEle) { document.body.style.setProperty('--header-scroll-hide-height-pc', `${pcScorllHideEle.clientHeight}px`); } } function handlResize() { if(w == window.innerWidth){return}; w = window.innerWidth; setHeaderCssVar(); }; function init(){ setHeaderCssVar(); window.removeEventListener('resize', window._theme_header_listener) window._theme_header_listener = handlResize; window.addEventListener('resize', window._theme_header_listener); } init(); })(); ${Array(data.total || 0).fill().map((val, idx) => idx).map((val, idx) => ` * `).join('')} * * ${function() { return ` ` }()} 🕊️I HOPE PEACE FOREVER🕊️ HOPE PEACE FOREVER SYRIAN REVOLUTION FREEDOM INSPIRED WASHED SWEATSHIRT €22.85 +2 FREE SYRIAN ARMY MAP & FLAG NECKLACE From €8.56 SYRIA FREEDOM FLAG SYRIAN REVOLUTION INSPIRED WOMEN'S HOODIE €24.75 +3 SYRIA MAP PRINT VINTAGE WASHED HAT €12.37 HOPE PEACE FOREVER SYRIAN REVOLUTION FLAG INSPIRED SHORT SLEEVES T-SHIRT €18.09 +2 SYRIA FREEDOM FLAG SYRIAN REVOLUTION INSPIRED PATTERN VINTAGE COZY HOODIE €24.75 HOPE PEACE DOVE FOREVER PRAYS FOR SYRIAN VINTAGE T-SHIRT €18.09 HOPE PEACE FOREVER SYRIAN REVOLUTION FLAG INSPIRED PATTERN ZIP HOODIE €30.47 HOPE PEACE FOREVER SYRIAN REVOLUTION FREEDOM INSPIRED WASHED SWEATSHIRT €22.85 +2 FREE SYRIAN ARMY MAP & FLAG NECKLACE From €8.56 SYRIA FREEDOM FLAG SYRIAN REVOLUTION INSPIRED WOMEN'S HOODIE €24.75 +3 SYRIA MAP PRINT VINTAGE WASHED HAT €12.37 HOPE PEACE FOREVER SYRIAN REVOLUTION FLAG INSPIRED SHORT SLEEVES T-SHIRT €18.09 +2 SYRIA FREEDOM FLAG SYRIAN REVOLUTION INSPIRED PATTERN VINTAGE COZY HOODIE €24.75 HOPE PEACE DOVE FOREVER PRAYS FOR SYRIAN VINTAGE T-SHIRT €18.09 HOPE PEACE FOREVER SYRIAN REVOLUTION FLAG INSPIRED PATTERN ZIP HOODIE €30.47 View more ❤️WE ARE ONE HUMAN RACE No Borders,No Nations,Only People Shop now 1 ITEM PURCHASED = 1 DONATION FOR GAZA We are firmly committed to supporting the Palestinian cause. That's why we have chosen to donate 10% of every purchase on our site to Caravanes Solidaires, an organization dedicated to Palestinian humanitarian aid. Thanks to their presence on the ground, the contribution you make through your purchase helps provide basic food, hygiene and medical kits to the residents of Gaza. This commitment reflects our desire to be directly involved through your consumption choices, actively participating in supporting our brothers and sisters in Palestine. START FREE PALESTINIAN MEN'S WE HOPE PEACE FOREVER VELVET KEEP WARM CASUAL HOODIE €55.24 WE WILL BE FREE AND PEACE FOREVER PRINT LINEN BLEND PANTS €27.61 MEN'S WE HOPE PEACE FOREVER VELVET KEEP WARM CASUAL HOODIE COAT €55.24 MEN'S FREE PALESTINE INSPIRED ART T SHIRT €18.09 I HOPE PEACE FOREVER LINEN V-NECK SHIRT €24.75 MEN'S HOPE PEACE FOREVER INSPIRED PRINT COMFORT PLUSH HOODED COAT €55.24 MEN'S HOPE PEACE FOREVER INSPIRED COMFORT PLUSH HOODED COAT €55.24 HOPE PEACE FOREVER LINEN V-NECK SHIRT €24.75 MEN'S WE HOPE PEACE FOREVER VELVET KEEP WARM CASUAL HOODIE €55.24 WE WILL BE FREE AND PEACE FOREVER PRINT LINEN BLEND PANTS €27.61 MEN'S WE HOPE PEACE FOREVER VELVET KEEP WARM CASUAL HOODIE COAT €55.24 MEN'S FREE PALESTINE INSPIRED ART T SHIRT €18.09 I HOPE PEACE FOREVER LINEN V-NECK SHIRT €24.75 MEN'S HOPE PEACE FOREVER INSPIRED PRINT COMFORT PLUSH HOODED COAT €55.24 MEN'S HOPE PEACE FOREVER INSPIRED COMFORT PLUSH HOODED COAT €55.24 HOPE PEACE FOREVER LINEN V-NECK SHIRT €24.75 View more LEBANON MEN'S WE HOPE PEACE FOREVER LEBANON FLAG MAG EMBROIDERY STAND COLLAR BUTTON SWEATSHIRT €27.61 +2 MEN'S WE HOPE PEACE FOREVER FREE LEBANON CEDAR EMBROIDERY STAND COLLAR BUTTON SWEATSHIRT €27.61 +2 MEN'S RETRO WE HOPE PEACE FOREVER LEBANON FLAG PATTERN INSPIRED PRINT HOODED SWEATSHIRT €24.75 WE HOPE PEACE FOREVER LEBANON FLAG MAG EMBROIDERY COMFY T SHIRT €18.09 +2 WE HOPE PEACE FOREVER LEBANON FLAG MAG EMBROIDERY COMFY T SHIRT €18.09 MEN'S RETRO PEACE LEBANON PATTERN CREW NECK COMFY T SHIRT €18.09 WE HOPE PEACE FOREVER LEBANON CEDAR ART COMFY T SHIRT €18.09 WE HOPE PEACE FOREVER LEBANON CEDAR EMBROIDERY COMFY T SHIRT €18.09 +2 MEN'S WE HOPE PEACE FOREVER LEBANON FLAG MAG EMBROIDERY STAND COLLAR BUTTON SWEATSHIRT €27.61 +2 MEN'S WE HOPE PEACE FOREVER FREE LEBANON CEDAR EMBROIDERY STAND COLLAR BUTTON SWEATSHIRT €27.61 +2 MEN'S RETRO WE HOPE PEACE FOREVER LEBANON FLAG PATTERN INSPIRED PRINT HOODED SWEATSHIRT €24.75 WE HOPE PEACE FOREVER LEBANON FLAG MAG EMBROIDERY COMFY T SHIRT €18.09 +2 WE HOPE PEACE FOREVER LEBANON FLAG MAG EMBROIDERY COMFY T SHIRT €18.09 MEN'S RETRO PEACE LEBANON PATTERN CREW NECK COMFY T SHIRT €18.09 WE HOPE PEACE FOREVER LEBANON CEDAR ART COMFY T SHIRT €18.09 WE HOPE PEACE FOREVER LEBANON CEDAR EMBROIDERY COMFY T SHIRT €18.09 +2 View more ${function() { return ` ` }()} VINTAGE ETHNIC PATTERN SLIP DRESS €27.61 CLASSIC ETHNIC Shop now WINTER BIRD ON BERRY BRANCH EMBROIDERED COZY SWEATER €28.56 BIRD ON BERRY BRANCH SNOWY EMBROIDERED COZY SWEATER €28.56 WINTER BIRDS ON BRANCHES EMBROIDERED COZY HOODIE €24.75 VINTAGE BIRD BOTANICAL ART EMBROIDERY COZY KNIT SWEATER €28.56 ALZHEIMER'S AWARENESS EMBROIDERED FLORAL V-NECK SWEATER €28.56 CLASSY BLUE BIRD & FLORAL EMBROIDERED COZY SWEATER €28.56 EMBROIDERED FLOWER AND BIRD ART PRINT ROUND NECK CASUAL SWEATSHIRT €22.85 CUTE CHICKADEE FELT ART COZY KNIT SWEATER €28.56 BIRDS ON BRANCH EMBROIDERY PATTERN COZY KNIT SWEATER €26.66 WINTER BIRDS ON BRANCHES FELT ART COZY SWEATER €28.56 BIRDS ON BERRY BRANCHES GLITTER BEADED EMBROIDERED COZY SWEATER €28.56 BIRD ON PINE BRANCH SNOWY BEADED EMBROIDERED COZY SWEATER €28.56 WINTER BIRD ON BERRY BRANCH EMBROIDERED COZY SWEATER €28.56 BIRD ON BERRY BRANCH SNOWY EMBROIDERED COZY SWEATER €28.56 WINTER BIRDS ON BRANCHES EMBROIDERED COZY HOODIE €24.75 VINTAGE BIRD BOTANICAL ART EMBROIDERY COZY KNIT SWEATER €28.56 ALZHEIMER'S AWARENESS EMBROIDERED FLORAL V-NECK SWEATER €28.56 CLASSY BLUE BIRD & FLORAL EMBROIDERED COZY SWEATER €28.56 🙏FOR GOD'S SAKE SAVE GAZA! Wearing this Shirt means preventing our brothers and sisters suffering in Palestine from being forgotten. Nature & Art CUSTOMER REVIEWS 4 Reviews Kira Soft and comfy. Great print! Monica Ruiz top ! I highly recommend Sarah Reyes Thank you! Excited to show my support with this beautiful textile. Raquelle Reeves I love the fabric and it got send really easy Subscribe today to hear first about our sales Subscribe Please enter a valid email address. Please enter your email address. ${data.errors && data.errors[0]} Thanks for subscribing Menu * Home * Ireland Travel * Scotland Travel * Cat 🐈 * Dog * 🕊️Peace🕊️ * Classic Ethnic * Protected Species Menu * Home * Ireland Travel * Scotland Travel * Cat 🐈 * Dog * 🕊️Peace🕊️ * Classic Ethnic * Protected Species Company Info * About us * Contact us Company Info * About us * Contact us Support * Size Guide * FAQ Support * Size Guide * FAQ Footer menu * Shipping&Delivery * Terms of Service * Privacy Statement * Returns & Refund Policy Footer menu * Shipping&Delivery * Terms of Service * Privacy Statement * Returns & Refund Policy We accept * American Express * Apple Pay * Mastercard * PayPal * Visa We accept * American Express * Apple Pay * Mastercard * PayPal * Visa © 2024 moodesigner © 2023 moodesigner COPYRIGHT © 2023 MOODESIGNER.COM. ALL RIGHTS RESERVED. View Cart ${function(){ const productData = data.product; let product_change_event = '', mouse_over_event = ' '; mouse_out_event = ''; const product_options = productData.options.filter(Boolean) || []; for (let opt of product_options) { product_change_event = product_change_event + `quick-shop-selected-variant-${opt.name}.rerender(data=event.selectedValues.${opt.name});`; mouse_out_event = mouse_out_event + `quick-shop-selected-variant-${opt.name}.rerender(data=event.selectData.${opt.name});`; mouse_over_event = mouse_over_event + `@${opt.name}Mouseover="quick-shop-selected-variant-${opt.name}.rerender(data=event);"`; } const selectedVariant = productData.variants.find(v => v.available) || productData.variants[0]; const statusLan = ((selectedVariant && !selectedVariant.available) || (!selectedVariant && !productData.available)) ? "Sold out" : "Add to cart"; return ` ${statusLan} ` }()} ${function(){ const currentSelectVariant = data.variant; const defaultVariant = (data.product && data.product.variants && data.product.variants[0]); const variantData = currentSelectVariant || defaultVariant || data; const retail_price = variantData.retail_price || 0; return ` Retail ` }()} ${function(){ const wholesale_enabled = false; const qty = data.quantity || 1; const currentSelectVariant = data.variant; const defaultVariant = (data.product && data.product.variants && data.product.variants[0]); const productVariant = null; const variantData = currentSelectVariant || defaultVariant || productVariant; const wholesale_price = variantData.wholesale_price || []; if(wholesale_enabled && wholesale_price.length > 0) { let wholesaleIndex = wholesale_price.findIndex(item => { return item.min_quantity > qty; }); if(wholesaleIndex < 0){ wholesaleIndex = wholesale_price.length - 1; }else if(wholesaleIndex > 0){ wholesaleIndex = wholesaleIndex - 1; } const wholesalePrice = wholesale_price[wholesaleIndex] || ''; return ` ` }else { const price = variantData && variantData.price; return price != undefined ? ` ` : ''; } }()} ${function() { let variantImageShowed = false; const currentProduct = data.product; return (currentProduct.options || []).map((option, index) => { const optionName = option.name || ''; const position = `option${index + 1}`; let isThumbImage = false; if (currentProduct.need_variant_image && !variantImageShowed) { const variantNames = ["color"] || []; for (let i = 0, len = variantNames.length; i < len; i++) { const name = variantNames[i].toLowerCase(); if (name === optionName.toLowerCase()) { isThumbImage = true; variantImageShowed = true; } } } const variantType = "button"; const thumbStyle = "image_with_text"; return ` ${optionName}: ${option.values.map((value, idx) => { const selected = data.selectedValues[optionName] == value ? 'checked' : ''; let thumbImage = null; if (isThumbImage) { const variants = currentProduct.variants; for (let i = 0, len = variants.length; i < len; i++) { const variant = variants[i]; if (variant[position] == value && thumbImage == null) { thumbImage = variant.image; break; } } } return ` ${value} ` }).join('')} ${optionName} ${option.values.map(value => { const selected = data.selectedValues[optionName] == value ? 'selected' : ''; return `${value}` }).join('')} ` }).join(''); }()} ${data.originData && data.originData.value || data.value} View Cart ${function(){ const productData = data.product; let product_change_event = '', mouse_over_event = ' '; mouse_out_event = ''; const product_options = productData.options.filter(Boolean) || []; for (let opt of product_options) { product_change_event = product_change_event + `quick-shop-selected-variant-${opt.name}.rerender(data=event.selectedValues.${opt.name});`; mouse_out_event = mouse_out_event + `quick-shop-selected-variant-${opt.name}.rerender(data=event.selectData.${opt.name});`; mouse_over_event = mouse_over_event + `@${opt.name}Mouseover="quick-shop-selected-variant-${opt.name}.rerender(data=event);"`; } const selectedVariant = productData.variants.find(v => v.available) || productData.variants[0]; const statusLan = ((selectedVariant && !selectedVariant.available) || (!selectedVariant && !productData.available)) ? "Sold out" : "Add to cart"; return ` ${statusLan} ` }()} ${function(){ const currentSelectVariant = data.variant; const defaultVariant = (data.product && data.product.variants && data.product.variants[0]); const variantData = currentSelectVariant || defaultVariant || data; const retail_price = variantData.retail_price || 0; return ` Retail ` }()} ${function(){ const wholesale_enabled = false; const qty = data.quantity || 1; const currentSelectVariant = data.variant; const defaultVariant = (data.product && data.product.variants && data.product.variants[0]); const productVariant = null; const variantData = currentSelectVariant || defaultVariant || productVariant; const wholesale_price = variantData.wholesale_price || []; if(wholesale_enabled && wholesale_price.length > 0) { let wholesaleIndex = wholesale_price.findIndex(item => { return item.min_quantity > qty; }); if(wholesaleIndex < 0){ wholesaleIndex = wholesale_price.length - 1; }else if(wholesaleIndex > 0){ wholesaleIndex = wholesaleIndex - 1; } const wholesalePrice = wholesale_price[wholesaleIndex] || ''; return ` ` }else { const price = variantData && variantData.price; return price != undefined ? ` ` : ''; } }()} ${function() { let variantImageShowed = false; const currentProduct = data.product; return (currentProduct.options || []).map((option, index) => { const optionName = option.name || ''; const position = `option${index + 1}`; let isThumbImage = false; if (currentProduct.need_variant_image && !variantImageShowed) { const variantNames = ["color"] || []; for (let i = 0, len = variantNames.length; i < len; i++) { const name = variantNames[i].toLowerCase(); if (name === optionName.toLowerCase()) { isThumbImage = true; variantImageShowed = true; } } } const variantType = "button"; const thumbStyle = "image_with_text"; return ` ${optionName}: ${option.values.map((value, idx) => { const selected = data.selectedValues[optionName] == value ? 'checked' : ''; let thumbImage = null; if (isThumbImage) { const variants = currentProduct.variants; for (let i = 0, len = variants.length; i < len; i++) { const variant = variants[i]; if (variant[position] == value && thumbImage == null) { thumbImage = variant.image; break; } } } return ` ${value} ` }).join('')} ${optionName} ${option.values.map(value => { const selected = data.selectedValues[optionName] == value ? 'selected' : ''; return `${value}` }).join('')} ` }).join(''); }()} ${data.originData && data.originData.value || data.value} 111 GIFTS POINTS Item has been added ${(function(){ const products = data.products; const getDefaultVariant = function(product){ if (product.min_price_variant.available){ return product.min_price_variant; }else { const avail_variants = product.variants.filter(function(variant){ return variant.available; }); if (avail_variants.length) { return avail_variants[0]; } } }; const toQuery = obj => Object.keys(obj) .map(k => Array.isArray(obj[k]) ? obj[k].map(v => `${k}[]=${encodeURIComponent(v)}`).join('&') : `${k}=${encodeURIComponent(obj[k])}` ) .join('&'); const getDefaultTrackParams = function(product, index){ const variant = getDefaultVariant(product); const params = { aid: 'smart_recommend.2.' + data.id, scm: product.scm || data.scm || '', spm: data.spmBase + '.' + index, ssp: data.ssp || '', }; const trackParams = Object.keys(params).map(function(key){ return params[key]; }).join('__'); return trackParams; }; const hasMore = (data.products.length - data.target_top_product_num - data.page * data.limit) === 0; return ` ${(function(){ return ` ${data.config.pop_title} ${data.rebate_tips || ''} `; })()} ${product.title} Added `; })()} class SpzCustomComponent extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.container_ = null; this._atcLineItem = {}; this.cart_ = {}; this.top_product_ids_ = []; this.products_ = []; this.activityId_ = null; this.rendered_ = false; this.myInterceptor_ = null; this.i18n_ = {}; this.config_ = {}; this.page_ = 1; this.limit_ = 10; this.loading_ = false; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.templates_ = SPZServices.templatesForDoc(this.element); this.setAction_(); } mountCallback() { console.log('pop mounted'); this.i18n_ = window.smartRecommendI18n && window.smartRecommendI18n[document.documentElement.lang || 'en-US'] || {}; const cartPopRenderEl = document.getElementById("smart_cart_pop_render"); const modalEl = document.getElementById("smart_cart_pop_modal"); const spmBase = `smart_recommend_2`; const extra = { spmBase: spmBase, i18n: this.i18n_, }; const that = this; document.addEventListener('dj.addToCart', (event) => { try { const e = event.detail; if (e.source === 'buy_now' || window.__upsell_block || this.rendered_) return; that.fetchActivityData({product_id: e.product_id, variant_id: e.variant_id}).then(data => { if (!data || !data.products || !data.products.length) return; that.config_ = data.config; const recommendStyle = document.createElement('style'); recommendStyle.innerHTML = ` #plugin_recommend_atc_pop { display: none !important; } `; document.head.appendChild(recommendStyle); if (data.config.pop_frequency === 'once' && window.sessionStorage.getItem('smart_pop_times') > 0) return; SPZ.whenApiDefined(cartPopRenderEl).then(function(api){ api.render(Object.assign({}, data, extra), true).then(function() { that.rendered_ = true; if (data.products.length) { const headEl = document.getElementById("smart_cart_pop_head_render"); if (headEl) { SPZ.whenApiDefined(headEl).then(function(head){ head.render({ data: data }); }); } SPZ.whenApiDefined(modalEl).then(function(api){ that.impressListen('#smart_cart_pop_activity', function(){ that.trackPluginImpression_(data); }); api.open(); const intersectionObserver = new IntersectionObserver( function (entries) { if (entries[0].intersectionRatio > 0){ !that.loading_ && (that.products_.length - that.target_top_product_num_) === that.page_ * that.limit_ && that.viewMore(); } }, { threshold: [0.1] } ); intersectionObserver.observe( document.querySelector('#smart_cart_pop_view_more_text') ); }); } }) }); }) } catch (e) { console.error(e); } }); } unmountCallback() { } viewMore () { const cartPopRenderEl = document.getElementById("smart_cart_pop_render"); const that = this; const data = {}; SPZ.whenApiDefined(cartPopRenderEl).then(function(api){ that.fetchActivityData({ page: that.page_ + 1, limit: that.limit_ }).then(function(data) { data.products = that.products_; data.target_top_product_num = that.target_top_product_num_; data.i18n = that.i18n_; data.spmBase = `smart_recommend_2`; api.render(data); }) }) } fetchActivityData(data) { const that = this; if (data.product_id) { that._atcLineItem = data; } that.loading_ = true; return that.getCart().then(cart => { that.cart_ = cart.cart; return fetch(window.C_SETTINGS.routes.root + "/api/possum/recommend_activities", { method: "POST", headers: { "Content-Type": "application/json", "store-id": window.C_SETTINGS.shop.shop_id, }, body: JSON.stringify({ "show_type": 2, "line_item": { "product_id": that._atcLineItem.product_id, "variant_id": that._atcLineItem.variant_id, }, line_items: cart.cart.line_items, "page": data.page || 1, "limit": data.limit || 10, }) }).then(function(res){ if(res.ok){ return res.json(); } }).then(function(data){ data.cart = cart.cart; if (data.page === 1) { that.target_top_product_num_ = data.target_top_product_num || 0; } that.products_ = that.products_.concat(data.products || []); that.page_ = data.page || 1; that.limit_ = data.limit || 10; return data; }).catch(function(e){ console.log(e); }).finally(function(){ that.loading_ = false; }) }); }; setAction_() { this.registerAction('changeBannerColor', (data) => { if (!data.args.data || !data.args.data.data || !data.args.data.data.data) return false; const config = data.args.data.data.data.config; const bannerBgEl = document.querySelector('.smart_cart_pop_banner_bg'); if (bannerBgEl && config) { bannerBgEl.style.background = config.banner_bg_color; bannerBgEl.style.color = config.banner_text_color; } }); this.registerAction('handleProductChange', (data) => { const that = this; const imageEl = document.getElementById(`smart_cart_pop_image_${data.args.data.product_id}`); SPZ.whenApiDefined(imageEl).then(function(api){ api.render({ data: data.args.data, config: that.config_ }); }); const atcTextEl = document.getElementById(`smart_cart_pop_atc_${data.args.data.product_id}`); SPZ.whenApiDefined(atcTextEl).then(function(api){ api.render({ data: data.args.data, defaultText: data.args.defaultText, soldOutText: that.i18n_.sold_out }); }); if (data.args.data.variant.available) { document.getElementById(`smart_cart_pop_atc_btn_${data.args.data.product_id}`).classList.remove('zb-pointer-events-none'); } else { document.getElementById(`smart_cart_pop_atc_btn_${data.args.data.product_id}`).classList.add('zb-pointer-events-none'); } }); this.registerAction('handleProduct', (detail) => { const that = this; this.renderProductsForm_(detail.args.data.data); }); this.registerAction('addATCHook', (data) => { const params = data.args; this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({ event: 'dj.addToCart', params: { aid: 'smart_recommend.2.' + params.activity_id, ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm: `..${window.C_SETTINGS.meta.page.template_name}.${params.spm}`, }, once: true }); }); this.registerAction('handleAtcSuccess', (detail) => { detail.args.data.product = detail.args.data.product || {}; detail.args.data.variant = detail.args.data.variant || {}; const defParams = detail.args.product.split('__'); const product_id = detail.args.data.product.id; const product_title = detail.args.data.product.title; const variant_id = detail.args.data.variant.id; const price = detail.args.data.variant.price; const aid = defParams[0]; const ifb = detail.args.data.product.ifb; const cfb = detail.args.data.product.cfb; const scm = defParams[1]; const spm = defParams[2]; const ssp = defParams[3]; const params = { id: product_id, product_id: product_id, number: 1, name: product_title, variant_id: variant_id, childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid: aid, ifb: ifb, cfb: cfb, scm: scm, spm: `..${window.C_SETTINGS.meta.page.template_name}.${spm}`, ssp: ssp, } }; const activity_id = `${detail.args.activity_id}`; const target_drive_way = detail.args.target_drive_way; document.getElementById(`smart_cart_pop_loading_${product_id}`).classList.add('zb-hidden'); document.getElementById(`smart_cart_pop_added_${product_id}`).classList.remove('zb-hidden'); setTimeout(() => { document.getElementById(`smart_cart_pop_added_${product_id}`).classList.add('zb-hidden'); document.getElementById(`smart_cart_pop_atc_${product_id}`).classList.remove('zb-hidden'); document.getElementById(`smart_cart_pop_atc_btn_${product_id}`).classList.remove('zb-pointer-events-none'); }, 1000); this.tranckAddToCart(params); if (target_drive_way === 'rebate') { const bannerEl = document.getElementById(`smart_cart_pop_banner`); this.getRecommendInfo(activity_id).then(res => { if (res && res.rebate_tips) { bannerEl.innerHTML = res.rebate_tips; } }) } }); this.registerAction('handleCartSummary', (event) => { const that = this; const checkoutButtonEle = document.getElementById("smart_cart_pop_checkout_button"); if (checkoutButtonEle) { SPZ.whenApiDefined(checkoutButtonEle).then(function(api){ api.render({ i18n: that.i18n_ }, false); }); } const tipEl = document.getElementById("smart_cart_pop_tip_info"); const cart = event && event.args && event.args.data && event.args.data.data; if (!tipEl || !cart) return; let total_price = cart.total_price; if (!total_price) { SPZ.whenApiDefined(tipEl).then(function(api){ api.render({ total_price: total_price, i18n: that.i18n_ }, false); }); } else { this.getBindDiscount_(cart.line_items).then(res => { if (res && res.discount_code){ const total = cart.line_price - cart.total_discount - res.bundle_discount_value; if (total > 0) { total_price = total; } else { total_price = 0; } } SPZ.whenApiDefined(tipEl).then(function(api){ api.render({ total_price: total_price, i18n: that.i18n_ }, false); }); }) } }); this.registerAction('open', () => { window.sessionStorage.setItem('smart_pop_times', Number(window.sessionStorage.getItem('smart_pop_times')) + 1); }); this.registerAction('close', () => { this.rendered_ = false; this.products_ = []; window.djInterceptors && window.djInterceptors.track.eject(this.myInterceptor_); }); } getCart() { return fetch(`${window.C_SETTINGS.routes.root || ''}/api/cart`, { method: 'GET', headers: { 'Content-Type': 'application/json; charset=UTF-8', }, }).then(res => res.json()) } getRecommendInfo (activity_id) { return this.getCart().then(cart => { this.cart_ = cart.cart; return fetch(`${window.C_SETTINGS.routes.root || ''}/api/possum/recommend_info`, { method: 'POST', headers: { 'Content-Type': 'application/json; charset=UTF-8', }, body: JSON.stringify({ show_type: 2, rule_id: `${activity_id}`, line_items: cart.cart.line_items, line_item: this._atcLineItem, }) }).then(res => res.json()) }) } renderProductsForm_(data) { const products = data.products; const listPopRenderEl = document.getElementById("smart_cart_pop_render"); if (!listPopRenderEl) return; listPopRenderEl.querySelectorAll('.smart_cart_pop_atc_btn_bg').forEach(function(el){ el.style.background = data.config.add_to_cart_button_color; }); products.forEach(function(product){ const productId = product.id; const productFormEls = listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"]`); let variantsEl = listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"] #smart_cart_pop_variant_${productId}_mobile ljs-variants`); if (window.innerWidth > 768) { variantsEl = listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"] #smart_cart_pop_variant_${productId}_pc ljs-variants`); } productFormEls.forEach(function(el){ SPZ.whenApiDefined(el).then(function(api){ api.setProduct(product); }); }); variantsEl.forEach(function(el){ SPZ.whenApiDefined(el).then(function(api){ api.handleRender(product); }); }) }); } tranckAddToCart(detail) { if (window.$) { window.$(document.body).trigger('dj.addToCart', detail); } } trackPluginImpression_(rule){ if (window.sa && window.sa.track) { window.sa.track("module_impressions", { aid: `smart_recommend.2.${rule.id}` }); } } getBindDiscount_(carts) { let bundle_sale_ids = []; try { bundle_sale_ids = sessionStorage['bundle_sale_ids'] && JSON.parse(sessionStorage['bundle_sale_ids']).filter((item, index, arr) => arr.indexOf(item, 0) === index).slice(-5); } catch (err) { console.error(err); } if (!carts.length) { Promise.resolve(); } return fetch(`${window.C_SETTINGS.routes.root || ''}/api/bundle-sales/cart`, { method: 'POST', headers: { 'Content-Type': 'application/json; charset=UTF-8', 'store-id': window.C_SETTINGS.shop.shop_id, }, body: JSON.stringify({ cart: carts, action_type: 'cart', bundle_sale_ids }) }).then(res => res.json()) } impressListen(selector, cb) { const el = document.querySelector(selector); const onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el && !el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart', SpzCustomComponent); ${function(){ return ` ${data.data.rebate_tips || ''} `; }()} ${function(){ const getImageHeight = function(image){ const width = image.width || 500; const height = image.height || 500; const image_size = data.config.image_size || 0; let ratio = 0; if(image_size == 0){ ratio = (height / width).toFixed(2); }else if(image_size == 1){ ratio = 1.5; } return 132 * ratio; }; const image = data.data.variant.image || data.data.product.image; return ` `; }()} ${(function(){ const product = data.product; const avail_variants = product.variants.filter(function(variant){ return variant.available; }); const selected_variant = product.min_price_variant.available ? product.min_price_variant : avail_variants.length && avail_variants[0]; return ` ${option.name} ${ option.values.map(function(value, index){ const checked = selected_variant["option"+option.position] == value ? "checked": ""; return ` ${value} ` }).join("") } ` })()} ${(function(){ const variant = data.variant; return ` `; })()} ${(function(){ const variant = data.variant; return ` ${ variant.options.map(function(option){ return option.value; }).join("/") || 'Not exist' } `; })()} ${(function(){ const variant = data.data && data.data.variant; const defaultText = data.defaultText || 'Add To Cart'; const text = (!variant || variant.available) ? defaultText: data.soldOutText; return ` ${text} `; })()} ${(function(){ let cart = data; if(data.data) { cart = data.data; } return ` ${cart.item_count >=0 ? cart.item_count : '..'} `; })()} ${(function(){ return ` ${data.i18n.checkout} `; })()} SPECIAL OFFER 15 % OFF FOR THE 2nd ITEM 15 % OFF FOR THE 2nd ITEM 30 % OFF FOR THE 3rd ITEM 30 % OFF FOR THE 3rd ITEM 50 % OFF FOR THE 4th ITEM 50 % OFF FOR THE 4th ITEM COLLECT ALL *Discounts would automatically apply when placing an order