โœจ Fantasy Magic Mystery Box โœจ๐ŸŒ™

โœจ Fantasy Magic Mystery Box โœจ๐ŸŒ™

๊ฐ ๋ฐ•์Šค๋Š” ์ตœ์†Œ 59,999์› ์ด์ƒ์˜ ์ œํ’ˆ ๊ฐ€์น˜๋ฅผ ๋ณด์žฅํ•˜๋ฉฐ, ์Šคํ‹ฐ์ปค, ์Šคํ‹ฐ์ปค๋ถ, ์™€์‹œ ํ…Œ์ดํ”„, ๋ฐ์ฝ” ํŽ˜์ดํผ ๋“ฑ ๋‹ค์–‘ํ•œ ์ €๋„๋ง ์†Œ์žฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํŒํƒ€์ง€ ๋งˆ๋ฒ• ๊ฐ์„ฑ์—์„œ ์˜๊ฐ์„ ๋ฐ›์•„ ๋งˆ๋ฒ•์„œ, ๋ณ„, ๋‹ฌ, ํฌ์…˜, ๋งˆ๋ฒ• ์‹ฌ๋ณผ, ๋งˆ๋ฒ•์˜ ์ˆฒ ๋“ฑ ์‹ ๋น„๋กœ์šด ์š”์†Œ๋“ค์„ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•ฝ 30%์˜ ์•„์ดํ…œ์€ ๋‹จํ’ˆ์œผ๋กœ ํŒ๋งค๋˜์ง€ ์•Š๋Š” ํ•œ์ • ์ œํ’ˆ์œผ๋กœ, ๊ฐ ๋ฐ•์Šค๋ฅผ ๋”์šฑ ํŠน๋ณ„ํ•˜๊ณ  ๋†€๋ผ์›€ ๊ฐ€๋“ํ•˜๊ฒŒ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค.

๊ฐ ๋ฐ•์Šค๋Š” ์ตœ์†Œ 59,999์› ์ด์ƒ์˜ ์ œํ’ˆ ๊ฐ€์น˜๋ฅผ ๋ณด์žฅํ•˜๋ฉฐ, ์Šคํ‹ฐ์ปค, ์Šคํ‹ฐ์ปค๋ถ, ์™€์‹œ ํ…Œ์ดํ”„, ๋ฐ์ฝ” ํŽ˜์ดํผ ๋“ฑ ๋‹ค์–‘ํ•œ ์ €๋„๋ง ์†Œ์žฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํŒํƒ€์ง€ ๋งˆ๋ฒ• ๊ฐ์„ฑ์—์„œ ์˜๊ฐ์„ ๋ฐ›์•„ ๋งˆ๋ฒ•์„œ, ๋ณ„, ๋‹ฌ, ํฌ์…˜, ๋งˆ๋ฒ• ์‹ฌ๋ณผ, ๋งˆ๋ฒ•์˜ ์ˆฒ ๋“ฑ ์‹ ๋น„๋กœ์šด ์š”์†Œ๋“ค์„ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•ฝ 30%์˜ ์•„์ดํ…œ์€ ๋‹จํ’ˆ์œผ๋กœ ํŒ๋งค๋˜์ง€ ์•Š๋Š” ํ•œ์ • ์ œํ’ˆ์œผ๋กœ, ๊ฐ ๋ฐ•์Šค๋ฅผ ๋”์šฑ ํŠน๋ณ„ํ•˜๊ณ  ๋†€๋ผ์›€ ๊ฐ€๋“ํ•˜๊ฒŒ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค.

โ‚ฉ85,799
class SpzCustomDiscountFlashsale extends SPZ.BaseElement { constructor(element) { super(element); this.xhr_ = SPZServices.xhrFor(this.win); this.getFlashSaleApi = "\/api\/storefront\/promotion\/flashsale\/display_setting\/product_setting"; this.timer = null; this.variantId = "7f76a5ad-3a9f-4f75-a450-90db2b78340b"; // ไฟƒ้”€ๆดปๅŠจๆ•ฐๆฎ this.flashsaleData = {} } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.templates_ = SPZServices.templatesForDoc(); this.viewport_ = this.getViewport(); // ๆŒ‚่ฝฝbindๅ‡ฝๆ•ฐ ่งฃๅ†ณthisๆŒ‡ๅ‘้—ฎ้ข˜ this.render = this.render.bind(this); this.resize = this.resize.bind(this); this.switchVariant = this.switchVariant.bind(this); } mountCallback() { // ่Žทๅ–ๆ•ฐๆฎ this.getData(); this.element.onclick = (e) => { const cur = this.win.document.querySelector(".app_discount_flashsale_desc"); const setting = this.flashsaleData.product_setting; const landingUrl = `/promotions/discount-default/${this.flashsaleData.discount_info.id}`; const finalUrl = appDiscountUtils.resolveDiscountHref(setting, landingUrl); if (finalUrl && appDiscountUtils.inProductBody(this.element) && e.target !== cur) { this.win.open(finalUrl, '_blank', 'noopener'); } } // ็ป‘ๅฎš this.viewport_.onResize(this.resize); // ็›‘ๅฌๅญๆฌพๅผๅˆ‡ๆข๏ผŒ้‡ๆ–ฐๆธฒๆŸ“ this.win.document.addEventListener('dj.variantChange', this.switchVariant); } unmountCallback() { // ่งฃ็ป‘ this.viewport_.removeResize(this.resize); this.win.document.removeEventListener('dj.variantChange', this.switchVariant); // ๆธ…้™คๅฎšๆ—ถๅ™จ if (this.timer) { clearTimeout(this.timer); this.timer = null; } } resize() { if (this.timer) { clearTimeout(this.timer) this.timer = null; } this.timer = setTimeout(() => { this.render(); }, 200) } switchVariant(event) { const variant = event.detail.selected; if (variant.product_id == 'ac794107-124c-4fa4-920c-ae1fafbe3d3a' && variant.id != this.variantId) { this.variantId = variant.id; this.getData(); } } getData() { const reqBody = { product_id: "ac794107-124c-4fa4-920c-ae1fafbe3d3a", product_type: "default", variant_id: this.variantId } this.flashsaleData = {}; this.win.fetch(this.getFlashSaleApi, { method: "POST", body: JSON.stringify(reqBody), headers: { "Content-Type": "application/json" } }).then(async (response) => { if (response.ok) { this.flashsaleData = await response.json(); this.render(); } else { this.clearDom(); } }).catch(err => { this.clearDom(); }); } clearDom() { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); } render() { this.templates_ .findAndRenderTemplate(this.element, { isMobile: appDiscountUtils.judgeMobile(), isRTL: appDiscountUtils.judgeRTL(), inProductDetail: appDiscountUtils.inProductBody(this.element), flashsaleData: this.flashsaleData, image_domain: this.win.SHOPLAZZA.image_domain, }) .then((el) => { this.clearDom(); this.element.appendChild(el); }) } } SPZ.defineElement('spz-custom-discount-flashsale', SpzCustomDiscountFlashsale);
const TAG = "spz-custom-product-automatic"; class SpzCustomProductAutomatic extends SPZ.BaseElement { constructor(element) { super(element); this.variant_id = '7f76a5ad-3a9f-4f75-a450-90db2b78340b'; this.isRTL = SPZ.win.document.dir === 'rtl'; this.isAddingToCart_ = false; // ๅŠ ่ดญไธญ็Šถๆ€ } static deferredMount() { return false; } buildCallback() { this.action_ = SPZServices.actionServiceForDoc(this.element); this.templates_ = SPZServices.templatesForDoc(this.element); this.xhr_ = SPZServices.xhrFor(this.win); this.setupAction_(); this.viewport_ = this.getViewport(); } mountCallback() { this.init(); // ็›‘ๅฌไบ‹ไปถ this.bindEvent_(); } async init() { this.handleFitTheme(); const data = await this.getDiscountList(); this.renderApiData_(data); } async getDiscountList() { const productId = 'ac794107-124c-4fa4-920c-ae1fafbe3d3a'; const variantId = this.variant_id; const productType = 'default'; const reqBody = { product_id: productId, variant_id: variantId, discount_method: "DM_AUTOMATIC", customer: { customer_id: window.C_SETTINGS.customer.customer_id, email: window.C_SETTINGS.customer.customer_email }, product_type: productType } const url = `/api/storefront/promotion/display_setting/text/list`; const data = await this.xhr_.fetchJson(url, { method: "post", body: reqBody }).then(res => { return res; }).catch(err => { this.setContainerDisabled(false); }) return data; } async renderDiscountList() { this.setContainerDisabled(true); const data = await this.getDiscountList(); this.setContainerDisabled(false); // ้‡ๆ–ฐๆธฒๆŸ“ ๆŠ–ๅŠจ้—ฎ้ข˜ๅค„็† this.renderApiData_(data); } clearDom() { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); } async renderApiData_(data) { const parentDiv = document.querySelector('.automatic_discount_container'); const newTplDom = await this.getRenderTemplate(data); if (parentDiv) { parentDiv.innerHTML = ''; parentDiv.appendChild(newTplDom); } else { console.log('automatic_discount_container is null'); } } doRender_(data) { const renderData = data || {}; return this.templates_ .findAndRenderTemplate(this.element, renderData) .then((el) => { this.clearDom(); this.element.appendChild(el); }); } async getRenderTemplate(data) { const renderData = data || {}; return this.templates_ .findAndRenderTemplate(this.element, { ...renderData, isRTL: this.isRTL }) .then((el) => { this.clearDom(); return el; }); } setContainerDisabled(isDisable) { const automaticDiscountEl = document.querySelector('.automatic_discount_container_outer'); if(isDisable) { automaticDiscountEl.setAttribute('disabled', ''); } else { automaticDiscountEl.removeAttribute('disabled'); } } // ็ป‘ๅฎšไบ‹ไปถ bindEvent_() { window.addEventListener('click', (e) => { let containerNodes = document.querySelectorAll(".automatic-container .panel"); let bool; Array.from(containerNodes).forEach((node) => { if(node.contains(e.target)){ bool = true; } }) // ๆ˜ฏๅฆpopover้ขๆฟ็‚นๅ‡ป่Œƒๅ›ด if (bool) { return; } if(e.target.classList.contains('drowdown-icon') || e.target.parentNode.classList.contains('drowdown-icon')){ return; } const nodes = document.querySelectorAll('.automatic-container'); Array.from(nodes).forEach((node) => { node.classList.remove('open-dropdown'); }) // ๅ…ผๅฎนไธป้ข˜ this.toggleProductSticky(true); }) // ็›‘ๅฌๅ˜ไฝ“ๅ˜ๅŒ– document.addEventListener('dj.variantChange', async(event) => { // ้‡ๆ–ฐๆธฒๆŸ“ const variant = event.detail.selected; if (variant.product_id == 'ac794107-124c-4fa4-920c-ae1fafbe3d3a' && variant.id != this.variant_id) { this.variant_id = variant.id; this.renderDiscountList(); } }); } // ๅ…ผๅฎนไธป้ข˜ handleFitTheme() { // top ๅฑžๆ€งๅฝฑๅ“ๆŠ–ๅŠจ let productInfoEl = null; if (window.SHOPLAZZA.theme.merchant_theme_name === 'Wind' || window.SHOPLAZZA.theme.merchant_theme_name === 'Flash') { productInfoEl = document.querySelector('.product-info-body .product-sticky-container'); } else if (window.SHOPLAZZA.theme.merchant_theme_name === 'Hero') { productInfoEl = document.querySelector('.product__info-wrapper .properties-content'); } if(productInfoEl){ productInfoEl.classList.add('force-top-auto'); } } // ๅ…ผๅฎน wind/flash /hero ไธป้ข˜ (stickyๅฑžๆ€งๅฝฑๅ“ popover ๅฑ‚็บงๅฑ•็คบ, ไผš่ขซๅ…ถไป–ๅ…ƒ็ด ่ฆ†็›–) toggleProductSticky(isSticky) { let productInfoEl = null; if (window.SHOPLAZZA.theme.merchant_theme_name === 'Wind' || window.SHOPLAZZA.theme.merchant_theme_name === 'Flash') { productInfoEl = document.querySelector('.product-info-body .product-sticky-container'); } else if (window.SHOPLAZZA.theme.merchant_theme_name === 'Hero') { productInfoEl = document.querySelector('.product__info-wrapper .properties-content'); } if(productInfoEl){ if(isSticky) { // ่ฟ˜ๅŽŸ่ฏฅไธป้ข˜ๅŽŸๆœ‰็š„stickyๅฑžๆ€งๅ€ผ productInfoEl.classList.remove('force-position-static'); return; } productInfoEl.classList.toggle('force-position-static'); } } setupAction_() { this.registerAction('handleDropdown', (invocation) => { const discount_id = invocation.args.discount_id; const nodes = document.querySelectorAll('.automatic-container'); Array.from(nodes).forEach((node) => { if(node.getAttribute('id') != `automatic-${discount_id}`) { node.classList.remove('open-dropdown'); } }) const $discount_item = document.querySelector(`#automatic-${discount_id}`); $discount_item && $discount_item.classList.toggle('open-dropdown'); // ๅ…ผๅฎนไธป้ข˜ this.toggleProductSticky(); }); // ๅŠ ่ดญไบ‹ไปถ this.registerAction('handleAddToCart', (invocation) => { // ้˜ปๆญขไบ‹ไปถๅ†’ๆณก const event = invocation.event; if (event) { event.stopPropagation(); event.preventDefault(); } // ๅฆ‚ๆžœๆญฃๅœจๅŠ ่ดญไธญ๏ผŒ็›ดๆŽฅ่ฟ”ๅ›ž if (this.isAddingToCart_) { return; } const quantity = invocation.args.quantity || 1; this.addToCart(quantity); }); } // ๅŠ ่ดญๆ–นๆณ• async addToCart(quantity) { // ่ฎพ็ฝฎๅŠ ่ดญไธญ็Šถๆ€ this.isAddingToCart_ = true; const productId = 'ac794107-124c-4fa4-920c-ae1fafbe3d3a'; const variantId = this.variant_id; const url = '/api/cart'; const reqBody = { product_id: productId, variant_id: variantId, quantity: quantity }; try { const data = await this.xhr_.fetchJson(url, { method: 'POST', body: reqBody }); // ่งฆๅ‘ๅŠ ่ดญๆˆๅŠŸๆ็คบ this.triggerAddToCartToast_(); return data; } catch (error) { error.then(err=>{ this.showToast_(err?.message || err?.errors?.[0] || 'Unknown error'); }) } finally { // ๆ— ่ฎบๆˆๅŠŸๅคฑ่ดฅ๏ผŒ้ƒฝ้‡็ฝฎๅŠ ่ดญ็Šถๆ€ this.isAddingToCart_ = false; } } showToast_(message) { const toastEl = document.querySelector("#apps-match-drawer-add_to_cart_toast"); if (toastEl) { SPZ.whenApiDefined(toastEl).then((apis) => { apis.showToast(message); }); } } // ่งฆๅ‘ๅŠ ่ดญๆˆๅŠŸๆ็คบ triggerAddToCartToast_() { // ๅฆ‚ๆžœไธป้ข˜ๆœ‰่‡ชๅทฑ็š„ๅŠ ่ดญๆ็คบ๏ผŒๅˆ™ไธๆ˜พ็คบ const themeAddToCartToastEl = document.querySelector('#add-cart-event-proxy'); if (themeAddToCartToastEl) return; // ๆ˜พ็คบๅบ”็”จ็š„ๅŠ ่ดญๆˆๅŠŸๆ็คบ this.showToast_("์„ฑ๊ณต์ ์œผ๋กœ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค"); } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, `${ TAG }.${ name }`, data || {}); this.action_.trigger(this.element, name, event); } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } } SPZ.defineElement(TAG, SpzCustomProductAutomatic);
class SpzCustomDiscountBundle extends SPZ.BaseElement { constructor(element) { super(element); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } mountCallback() {} unmountCallback() {} setupAction_() { this.registerAction('showAddToCartToast', () => { const themeAddToCartToastEl = document.querySelector('#add-cart-event-proxy') if(themeAddToCartToastEl) return const toastEl = document.querySelector('#apps-match-drawer-add_to_cart_toast') SPZ.whenApiDefined(toastEl).then((apis) => { apis.showToast("์„ฑ๊ณต์ ์œผ๋กœ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค"); }); }); } buildCallback() { this.setupAction_(); }; } SPZ.defineElement('spz-custom-discount-toast', SpzCustomDiscountBundle);
Color: MH-2026SZH-004
์ˆ˜๋Ÿ‰
์ƒํ’ˆ์ด ์žฌ๊ณ ๊ฐ€ ์—†์„ ๋•Œ๋งŒ ํ‘œ์‹œ๋˜๋ฉฐ, ํ˜„์žฌ๋Š” ๋ฏธ๋ฆฌ๋ณด๊ธฐ์šฉ์œผ๋กœ๋งŒ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
๋‚˜์—๊ฒŒ ์•Œ๋ ค์ฃผ์„ธ์š”
(function(){ function $(selector){ return document.querySelector(selector); } const EMAIL_REG = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; // ่Žทๅ–domๆ•ฐๆฎ const doms = { button: $('#app-arrival-reminder-button'), previewBox: $('#app-arrival-reminder-preview-box'), toast: $('#app-arrival-reminder-toast'), lightbox: $('#arrival-lightbox'), datalist: $('#app-arrival-reminder-email-list'), imgRender: $('#app-arrival-reminder-product-image-render'), productVariant: $('#app-arrival-reminder-product-variant'), emailInput: $('#app-arrival-reminder-form .reminder-email-input'), emailWarn: $('#app-arrival-reminder-form .reminder-email-warn-wrap'), emailWarnText: $('#app-arrival-reminder-form .reminder-email-warn-text'), submitButton: $('#app-arrival-reminder-submit-button') }; // ้€‰ไธญ็š„skuๆ•ฐๆฎ let selectedVariant = {"id":"7f76a5ad-3a9f-4f75-a450-90db2b78340b","product_id":"ac794107-124c-4fa4-920c-ae1fafbe3d3a","title":"MH-2026SZH-004","weight_unit":"kg","inventory_quantity":996,"sku":"MH-2026SZH-004","barcode":"","position":1,"option1":"MH-2026SZH-004","option2":"","option3":"","note":"","image":{"src":"\/\/img.staticdj.com\/7a363615868561a5e61c9ac573fb5072.png","path":"7a363615868561a5e61c9ac573fb5072.png","width":1254,"height":1254,"alt":"\u2728 Fantasy Magic Mystery Box \u2728\ud83c\udf19","aspect_ratio":1},"wholesale_price":[{"price":85799,"min_quantity":1}],"weight":"1","compare_at_price":"85799","price":"85799","retail_price":"85799","available":true,"url":"\/products\/\u2728-fantasy-magic-mystery-box-\u2728\ud83c\udf19?variant=7f76a5ad-3a9f-4f75-a450-90db2b78340b","available_quantity":999999999,"options":[{"name":"Color","value":"MH-2026SZH-004"}],"off_ratio":"0","flashsale_info":{"variant_id":"7f76a5ad-3a9f-4f75-a450-90db2b78340b","product_id":"","quantity":0,"discount_id":"","limit_time":0,"limit_buy":0,"user_limit_buy":0,"discount_sales":0,"discount_sales_rate":"","discount_stock":0,"ends_at":0,"starts_at":0,"allow_oversold":"","allocation_method":"","price":"85799","compare_at_price":"","discount_price":"85799","customary_saved_price":"","customary_off_ratio":"","discount_saved_price":"","discount_off_ratio":"0","use_before_price":false,"before_price":"","title":"","properties":"","color_setting_promotional_copy":"","discount_quantity":0,"is_need_split":false},"sales":2}; // ไธŠๆŠฅ function reportData(params){ // ็ผ–่พ‘/้ข„่งˆไธไธŠๆŠฅ if(false){ return; } window.sa.track(params.event_name, { business_type: 'product_plugin', function_name: 'Back_in_Stock', plugin_name: "Back_in_Stock", template_name: "product", template_type: 1, module: "apps", module_type: "Back_in_Stock", event_info: JSON.stringify({ action_type: 'Back_in_Stock' }), ...params }); } // ๆŒ‰้’ฎๆ›ๅ…‰ไธŠๆŠฅ function buttonPVReport(){ reportData({ event_name: 'function_expose', event_type: 'expose', event_desc: 'ๆ— ่ดงๅ•†ๅ“ๆ—ถ่งฆๅ‘' }); } // ๅผน็ช—ๆ›ๅ…‰ไธŠๆŠฅ function popupPVReport(){ reportData({ event_name: 'function_expose', event_type: 'popup_expose', event_desc: 'ๅผน็ช—ๆ›ๅ…‰ๆ—ถ่งฆๅ‘' }); } // submitๆŒ‰้’ฎ็‚นๅ‡ปไธŠๆŠฅ function submitClickReport(){ reportData({ event_name: 'function_click', event_type: 'popup_click', event_desc: 'ๅกซๅ…ฅ้‚ฎ็ฎฑไน‹ๅŽ๏ผŒ็‚นๅ‡ปnotify ่งฆๅ‘', event_info: JSON.stringify({ action_type: 'email_click' }), }); } // -----------------------ๅˆๅง‹ๅŒ–----------------- init(); // ๅˆๅง‹ๅŒ–ๆ“ไฝœ function init(){ // ไธบ็กฎไฟwindowๆœ‰ๅŽ้ขๆทปๅŠ ็š„ๅ€ผไพ‹ๅฆ‚window.sa ้œ€่ฆๅœจDOMContentLoadedๅ›ž่ฐƒไบ‹ไปถไธญๆ‰ง่กŒ้€ป่พ‘ document.addEventListener("DOMContentLoaded", function() { // ่ฎพ็ฝฎ้‚ฎไปถ่”ๆƒณ setDataList(); if(!true){ // ๅˆๅง‹ๆ— ่ดง ๆŒ‰้’ฎpvไบ‹ไปถๅŸ‹็‚นไธŠๆŠฅ buttonPVReport(); } }); } // ่ฎพ็ฝฎ้‚ฎไปถ่”ๆƒณ function setDataList(){ const customer_email = window.C_SETTINGS.customer.customer_email; if(customer_email){ const options = document.createElement('option'); options.setAttribute('value', customer_email); doms.datalist.appendChild(options); } } // -----------------------ไบ‹ไปถๆ“ไฝœ---------------- // ็›‘ๅฌskuๅ˜ๅŒ–ไบ‹ไปถ document.addEventListener('dj.variantChange', variantChange); // ็›‘ๅฌๆ้†’ๆŒ‰้’ฎ็‚นๅ‡ปไบ‹ไปถ doms.button.addEventListener('click', reminderButtonClick); // ็›‘ๅฌๆไบคๆŒ‰้’ฎ็‚นๅ‡ปไบ‹ไปถ doms.submitButton.addEventListener('click', submit); // ็›‘ๅฌinputๅ…ƒ็ด ็š„keydownไบ‹ไปถ doms.emailInput.addEventListener('keydown', function(e) { // ๅˆคๆ–ญๆ˜ฏๅฆๆŒ‰ไธ‹ไบ†Enter้”ฎ if (e.keyCode === 13 || e.key === 'Enter') { submit(); } }); // ๆ˜พ็คบๆญฃๅธธๆŒ‰้’ฎ function showReminderButton(){ doms.button.classList.remove('app-arrival-hidden'); doms.previewBox.classList.add('app-arrival-preview-hidden'); buttonPVReport(); } // ๅฑ•็คบ้ข„่งˆๆŒ‰้’ฎ function showPreviewButton(){ doms.button.classList.remove('app-arrival-hidden'); doms.previewBox.classList.remove('app-arrival-preview-hidden'); } // ้š่—ๆŒ‰้’ฎ function hiddenReminderButton(){ doms.button.classList.add('app-arrival-hidden'); doms.previewBox.classList.add('app-arrival-preview-hidden'); } // ๆไบคๆ•ฐๆฎ, ่ฏทๆฑ‚ๆŽฅๅฃ function submit(){ // ่Žทๅ–้‚ฎ็ฎฑๆ•ฐๆฎ const email = doms.emailInput.value.trim(); if(!email){ doms.emailWarnText.innerText = "\uc774\uba54\uc77c \uc8fc\uc18c\ub97c \uc785\ub825\ud558\uc138\uc694"; doms.emailWarn.classList.remove('app-arrival-hidden'); return; } if(!EMAIL_REG.test(email)){ doms.emailWarnText.innerText = "\uc720\ud6a8\ud55c \uc774\uba54\uc77c \uc8fc\uc18c\ub97c \uc785\ub825\ud558\uc138\uc694"; doms.emailWarn.classList.remove('app-arrival-hidden'); return; } // ้‚ฎ็ฎฑๆ ก้ชŒๆˆๅŠŸ doms.emailWarn.classList.add('app-arrival-hidden'); // ้ข„่งˆๆ—ถไธ่ฐƒๆŽฅๅฃ if(false){ SPZ.whenApiDefined(doms.toast).then(apis => { apis.showToast("\ud604\uc7ac \ubbf8\ub9ac\ubcf4\uae30 \ud398\uc774\uc9c0\uc785\ub2c8\ub2e4. \uad6c\ub3c5\uc740 \ud14c\uc2a4\ud2b8\uc6a9\uc73c\ub85c\ub9cc \uc81c\uacf5\ub429\ub2c8\ub2e4.", 3000); }); return; } // ๅŠ ๅ…ฅloadingๆ ทๅผ doms.submitButton.classList.add('reminder-submit-button-loading'); // ๆไบคๆ•ฐๆฎ่ฏทๆฑ‚ๆŽฅๅฃ let quantity = 1; const quantityDom = $('#app-arrival-reminder-quantity-render ljs-quantity'); if(quantityDom){ quantity = Number(quantityDom.getAttribute('value')) || 1; } const params = { customer_email: email, product_num: quantity, product_id: selectedVariant.product_id, product_variant_id: selectedVariant.id }; fetch(`${window.C_SETTINGS.routes.root}/api/front/gobbler/v1/subscribe`, { method: 'POST', body: JSON.stringify(params), headers: { 'Content-Type': 'application/json' } }).then((res)=>res.json()).then((res)=>{ /* ๅŽ็ซฏ้”™่ฏฏๆ็คบ */ if(res.errors && res.errors.length){ SPZ.whenApiDefined(doms.toast).then(apis=>{ apis.showToast(res.errors[0], 3000); }); return; } /* code * 0 SUCCESS ่ฎข้˜…ๆˆๅŠŸ * 1 PRODUCT_OFFLINE ๅ•†ๅ“ไธ‹ๆžถ * 2 INVENTORY_NOT_EMPTY ๅ•†ๅ“ๅบ“ๅญ˜ไธไธบ็ฉบ * 3 REPEAT_SUBSCRIBE ้‡ๅค่ฎข้˜… * 4 EMAIL_EMPTY ้‚ฎไปถไธบ็ฉบ * 5 EMAIL_WRONG_FORMAT ้‚ฎไปถๆ ผๅผ้”™่ฏฏ * 99999 INVALID_PARAMS ๅ…ถไป–ๅ‚ๆ•ฐ้”™่ฏฏ */ const codeMap = { SUCCESS: ()=>{ SPZ.whenApiDefined(doms.lightbox).then(apis=>{ apis.close(); }); SPZ.whenApiDefined(doms.toast).then(apis=>{ apis.showToast("\uad6c\ub3c5\ud574 \uc8fc\uc154\uc11c \uac10\uc0ac\ud569\ub2c8\ub2e4! \uc81c\ud488\uc774 \uc7ac\uc785\uace0\ub418\ub294 \ub300\ub85c \uc54c\ub824\ub4dc\ub9ac\uaca0\uc2b5\ub2c8\ub2e4!", 3000); }); }, INVENTORY_NOT_EMPTY: ()=>{ SPZ.whenApiDefined(doms.lightbox).then(apis=>{ apis.close(); }); SPZ.whenApiDefined(doms.toast).then(apis=>{ apis.showToast("\uc0c1\ud488\uc740 \uc774\ubbf8 \uc7ac\uace0\uac00 \uc788\uc73c\uba70, \uad6c\ub3c5\uc5d0 \uc2e4\ud328\ud588\uc2b5\ub2c8\ub2e4. \uc9c1\uc811 \uad6c\ub9e4\ud574 \uc8fc\uc2dc\uae30 \ubc14\ub78d\ub2c8\ub2e4.", 3000); }); setTimeout(()=>{ window.location.reload(); }, 3000); }, REPEAT_SUBSCRIBE: ()=>{ SPZ.whenApiDefined(doms.toast).then(apis=>{ apis.showToast("\uc774\ubbf8 \uc774 \uc81c\ud488\uc744 \uad6c\ub3c5\ud558\uc168\uc2b5\ub2c8\ub2e4. \uc7ac\uc785\uace0\ub418\ub294 \ub300\ub85c \uc54c\ub824\ub4dc\ub9ac\uaca0\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \uc81c\ud488\ub3c4 \uc0b4\ud3b4\ubcf4\uc138\uc694.", 3000); }); }, EMAIL_EMPTY: ()=>{ SPZ.whenApiDefined(doms.toast).then(apis=>{ apis.showToast("\uc774\uba54\uc77c \uc8fc\uc18c\ub97c \uc785\ub825\ud558\uc138\uc694", 3000); }); }, EMAIL_WRONG_FORMAT: ()=>{ SPZ.whenApiDefined(doms.toast).then(apis=>{ apis.showToast("\uc720\ud6a8\ud55c \uc774\uba54\uc77c \uc8fc\uc18c\ub97c \uc785\ub825\ud558\uc138\uc694", 3000); }); } }; codeMap.PRODUCT_OFFLINE = codeMap.SUCCESS; codeMap[res.code] && codeMap[res.code](); }).finally(()=>{ doms.submitButton.classList.remove('reminder-submit-button-loading'); }); // submit็‚นๅ‡ปไธŠๆŠฅ submitClickReport(); } // ้‡ๆ–ฐๆธฒๆŸ“dialog function refreshRenderDialog(){ console.log('selectedVariant', selectedVariant); const images = selectedVariant.image || {"src":"\/\/img.staticdj.com\/61807e06789d1e1aab2a6c452e3fb58a.png","path":"61807e06789d1e1aab2a6c452e3fb58a.png","width":1254,"height":1254,"alt":"\u2728 Fantasy Magic Mystery Box \u2728\ud83c\udf19","aspect_ratio":1}; const imagePosition = images.aspect_ratio > 1 ? 'left top' : 'center center'; // ้‡ๆ–ฐๆธฒๆŸ“ๅ›พ็‰‡ SPZ.whenApiDefined(doms.imgRender).then((apis)=>{ apis.render({ images, imagePosition }); }); // ้‚ฎไปถ้”™่ฏฏๆ็คบ็ฝฎ็ฉบ doms.emailWarn.classList.add('app-arrival-hidden'); // ้‡ๆ–ฐๆธฒๆŸ“ๆฌพๅผ่ฏดๆ˜Ž if(selectedVariant.title){ doms.productVariant.innerText = selectedVariant.title.split('-').join('/'); } // ่กจๅ•ๆ•ฐๆฎ็ฝฎ็ฉบ doms.emailInput.value = ''; } // skuๅ˜ๅŒ– ๅ•ไธ€ๆฌพๅผไธไผš่งฆๅ‘ function variantChange(e){ const selected = e.detail.selected; // ๅญๆฌพๅผๆฒกๅ˜ไธๆ‰ง่กŒๆ“ไฝœ ไพ‹ๅฆ‚ๆ•ฐ้‡ๅ˜ๅŒ– if(selected.id === selectedVariant.id){ return; } selectedVariant = selected; console.log('selectedVariant', selectedVariant); // ๆ•ฐ้‡ๅ˜ๅŒ– if(selected.available || selected.product_id === undefined){ // ๆœ‰ๅบ“ๅญ˜ ็ผ–่พ‘ๆ—ถๅฑ•็คบ้ข„่งˆๆŒ‰้’ฎ ๅฆๅˆ™้š่—ๆŒ‰้’ฎ if(false){ showPreviewButton(); }else { hiddenReminderButton(); } }else{ // ๆ— ๅบ“ๅญ˜ ๆ˜พ็คบๆญฃๅธธๆŒ‰้’ฎ showReminderButton(); } } // ๆ้†’ๆŒ‰้’ฎ็‚นๅ‡ป function reminderButtonClick(){ refreshRenderDialog(); // ๅผน็ช—ๆ›ๅ…‰ไธŠๆŠฅ popupPVReport(); } document.body.appendChild(doms.toast); document.body.appendChild(doms.lightbox.parentElement); })();
์ œํ’ˆ์ด ํ’ˆ์ ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
์ œํ’ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
์˜ˆ์ƒ ๋ฐฐ์†ก: Jun-22 - Jun-30
๋ฌด๋ฃŒ ๋ฐ˜ํ’ˆ

๋ฒˆ๊ฑฐ๋กœ์›€ ์—†๋Š” ๋ฐ˜ํ’ˆ ์ •์ฑ…์œผ๋กœ ์•ˆ์‹ฌํ•˜๊ณ  ์‡ผํ•‘ํ•˜์„ธ์š”. ๊ตฌ๋งคํ•˜์‹  ์ƒํ’ˆ์— ๋งŒ์กฑํ•˜์‹ค ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

์ง€์† ๊ฐ€๋Šฅํ•˜๊ฒŒ ์ œ์ž‘๋จ

์ง€๊ตฌ๋ฅผ ์ƒ๊ฐํ•˜๋ฉฐ ๋””์ž์ธ๋œ ๋ชจ๋“  ์ œํ’ˆ์€ ์ง€์† ๊ฐ€๋Šฅํ•œ ๋ฐฉ์‹์œผ๋กœ ์ œ์ž‘๋ฉ๋‹ˆ๋‹ค.

์•ˆ์ „ํ•œ ๊ฒฐ์ œ

์ตœ์ฒจ๋‹จ ์•”ํ˜ธํ™” ๊ฒฐ์ œ ๋ณด์•ˆ์œผ๋กœ ๊ท€ํ•˜์˜ ๊ฒฐ์ œ ์ •๋ณด๋Š” ํ•ญ์ƒ ์•ˆ์ „ํ•˜๊ฒŒ ๋ณดํ˜ธ๋ฉ๋‹ˆ๋‹ค.

์„ค๋ช…

๋ณ„์ด ๋ฐ˜์ง์ด๊ณ  ๋งˆ๋ฒ•์ด ๊นจ์–ด๋‚˜๋ฉฐ ์ƒ์ƒ์ด ํ˜„์‹ค์ด ๋˜๋Š” ํ™˜์ƒ์ ์ธ ์„ธ๊ณ„๋กœ ์—ฌ๋Ÿฌ๋ถ„์„ ์ดˆ๋Œ€ํ•ฉ๋‹ˆ๋‹ค. Fantasy Magic Mystery Gift Box๋Š” ๋งˆ๋ฒ•์˜ ์ˆฒ, ๋งˆ๋ฒ•์„œ, ํฌ์…˜, ๋‹ฌ๊ณผ ๋ณ„, ๊ทธ๋ฆฌ๊ณ  ์‹ ๋น„๋กœ์šด ์ƒ์ง•์—์„œ ์˜๊ฐ์„ ๋ฐ›์•„ ์ •์„ฑ์Šค๋Ÿฝ๊ฒŒ ๊ตฌ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ชฝํ™˜์ ์ธ ์ €๋„๋ง ์†Œ์žฌ ์ปฌ๋ ‰์…˜์œผ๋กœ, ๋ชจ๋“  ์ฐฝ์ž‘์„ ์‹ ๋น„๋กญ๊ณ  ๋งˆ๋ฒ• ๊ฐ™์€ ์ด์•ผ๊ธฐ๋กœ ๋ฐ”๊ฟ”์ค๋‹ˆ๋‹ค.

๐Ÿ–ค ๊ฐ ๋ฐ•์Šค๋Š” ์ตœ์†Œ 59,999์› ์ด์ƒ์˜ ๊ฐ€์น˜๋ฅผ ์ง€๋‹ˆ๋ฉฐ, ์Šคํ‹ฐ์ปค, ์Šคํ‹ฐ์ปค๋ถ, ์™€์‹œ ํ…Œ์ดํ”„, ๋ฐ์ฝ” ํŽ˜์ดํผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์•ฝ 30%์˜ ์†Œ์žฌ๋Š” ๋‹จ๋… ํŒ๋งค๋˜์ง€ ์•Š๋Š” ํŠน๋ณ„ ์•„์ดํ…œ์œผ๋กœ, ๊ฐ ๋ฐ•์Šค๋ฅผ ๋”์šฑ ์œ ๋‹ˆํฌํ•˜๊ณ  ๋†€๋ผ์›€ ๊ฐ€๋“ํ•˜๊ฒŒ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค โœจ๐ŸŒ™

๐Ÿ“– ๋‹ค์ด์–ด๋ฆฌ ๊พธ๋ฏธ๊ธฐ, ์Šคํฌ๋žฉ๋ถ ์ œ์ž‘, ํŒํƒ€์ง€ ๊ฐ์„ฑ ์ฝœ๋ผ์ฃผ ์ž‘์—…, ๋˜๋Š” ํŠน๋ณ„ํ•œ ์ข…์ด ์†Œ์žฌ ์ˆ˜์ง‘์„ ์ฆ๊ธฐ๋Š” ๋ถ„๋“ค๊ป˜ ์ด ๋ฏธ์Šคํ„ฐ๋ฆฌ ๋ฐ•์Šค๋Š” ๋งค๋ฒˆ ์„ค๋ ˆ๋Š” ์–ธ๋ฐ•์‹ฑ ๊ฒฝํ—˜์„ ์„ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๐ŸŽ ๊ฐ ๋ฐ•์Šค๋Š” ํŒํƒ€์ง€ ๋งˆ๋ฒ• ์Šคํƒ€์ผ์˜ ํŒจํ‚ค์ง€๋กœ ํฌ์žฅ๋˜๋ฉฐ, ํ…Œ๋งˆ์— ๋งž๋Š” ์™„์ถฉ์žฌ๋กœ ์•ˆ์ „ํ•˜๊ฒŒ ๋ณดํ˜ธ๋ฉ๋‹ˆ๋‹ค. ์ฒ˜์Œ ์—ฌ๋Š” ์ˆœ๊ฐ„๋ถ€ํ„ฐ ๊ฟˆ๊ฐ™๊ณ  ์‹ ๋น„๋กœ์šด ์–ธ๋ฐ•์‹ฑ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋ฉฐ, ๋งˆ๋ฒ•๊ณผ ์ƒ์ƒ, ๊ทธ๋ฆฌ๊ณ  ๋†€๋ผ์›€์ด ์–ด์šฐ๋Ÿฌ์ง„ ์ฐฝ์˜์ ์ธ ์—ฌ์ •์„ ์„ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

โ€ป ์•ˆ๋‚ด: ๋ณธ ๋ฏธ์Šคํ„ฐ๋ฆฌ ๋ฐ•์Šค์˜ ๊ตฌ์„ฑ๊ณผ ํŒจํ‚ค์ง€๋Š” ๊ณ ์ •๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉฐ, ์ƒ์‚ฐ ์‹œ๊ธฐ์— ๋”ฐ๋ผ ๋””์ž์ธ ๋ฐ ๊ตฌ์„ฑํ’ˆ์ด ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ์ˆ˜๋ นํ•˜์‹  ์ƒํ’ˆ์„ ๊ธฐ์ค€์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

No products viewed