Free shipping on order 50US$
0
Photo Customized
Diamond Painting(mainly manually design)
Diamond Painting(mainly by computer/AB drill)
Cross Stitch
💎Diamond Painting Themes
Animal
Cartoon
Portrait
Landscape
Flower
Abstract
Festival
Relieves
Vehicle
Movie
Mystery Pattern
💎DP Types
Big Size Canvas
Full Square Drill
Full Round Drill
Special Shaped Drill
AB Drill
Full Crystal Rhinestone
Diamond Painting Tools
Luminous Drill
Partial
Diamond Painting Drill
Half Diamond Half Oil Painting
🔥DIY diamond crafts
Christmas
Bag
Decor Pendant
Wreath
Mask
Clock
Sticker
Storage Box
Passport Cover
Keychain
Coaster
Greeting Card
Hair Clip&Brooch
Cute Mirror
Bookmark
Notebook
Lamp
🔥Cross Stitch
Cross Stitch
Counted Canvas Cross Stitch
Stamped Canvas Cross Stitch
14CT Cross Stitch
11CT Cross Stitch
16CT/18CT Cross Stitch
Bead Cross Stitch
Pillow Cross Stitch
Joy Sunday
Latch Hook
Embroidery
Cross stitch and Embroidery Crafts
Cross Stitch Crafts
Embroidery Crafts
Tool and Accessary
You May Also Like
🔥Paint by Numbers
Scenery
Portrait
Flower
Cartoon
Animal
Abstract
Paint by Numbers Tools
Paint by Numbers Crafts
Wax Seal Stamp
Wax Seal Stamp Kit
Wax Bead
Wax Seal Stamp
Wax Seal Stamp Tools
Die Cut
Cutting Die
Clear Stamp
Ink
Paper Trimmer
Embossing Machine
Die Storage Bag
PVC Cutting Board
Others
Jigsaw Puzzle
Wooden Jigsaw🔥
Paper Jigsaw
Prinited Tote Bag
Linen Tote Bag
Canvas Tote Bag
Polyester Tapestry
Silicone Mold
Paper Quilling
Painting on Tinplate
EUR
United States Dollars (USD)
Euro (EUR)
United Kingdom Pounds (GBP)
Canadian Dollars (CAD)
Australian Dollars (AUD)
South African Rand (ZAR)
Norwegian Kroner (NOK)
Singapore Dollars (SGD)
Swedish Kronor (SEK)
Swiss Francs (CHF)
Japanese Yen (JPY)
Philippine Peso (PHP)
South Korean Won (KRW)
Taiwan Dollars (TWD)
Chinese Yuan Renminbi (CNY)
Russian Rubles (RUB)
Israeli New Shekel (NIS)
United Arab Emirates Dirham (AED)
Deutsch
Afrikaans
Albanisch
Amharisch
Arabisch
Armenisch
Aserbaidschanisch
Assamesisch
Aymara
Bambara
Baskisch
Belarussisch
Bengalisch
Bhojpuri
Birmanisch
Bosnisch
Bulgarisch
Cebuano
Chichewa
Chinesisch (traditionell)
Chinesisch (vereinfacht)
Dänisch
Dhivehi
Dogri
Englisch
Esperanto
Estnisch
Ewe
Filipino
Finnisch
Französisch
Friesisch
Galizisch
Georgisch
Griechisch
Guarani
Gujarati
Haitianisch
Hausa
Hawaiisch
Hebräisch
Hindi
Hmong
Igbo
Ilokano
Indonesisch
Irisch
Isländisch
Italienisch
Japanisch
Javanisch
Jiddisch
Kannada
Kasachisch
Katalanisch
Khmer
Kinyarwanda
Kirgisisch
Konkani
Koreanisch
Korsisch
Krio
Kroatisch
Kurdisch (Kurmandschi)
Kurdisch (Sorani)
Lao
Latein
Lettisch
Lingala
Litauisch
Luganda
Luxemburgisch
Maithili
Malagasy
Malayalam
Malaysisch
Maltesisch
Maori
Marathi
Mazedonisch
Meitei (Manipuri)
Mizo
Mongolisch
Nepalesisch
Niederländisch
Norwegisch
Odia (Oriya)
Oromo
Paschtu
Persisch
Polnisch
Portugiesisch
Punjabi
Quechua
Rumänisch
Russisch
Samoanisch
Sanskrit
Schottisch-Gälisch
Schwedisch
Sepedi
Serbisch
Sesotho
Shona
Sindhi
Singhalesisch
Slowakisch
Slowenisch
Somali
Spanisch
Sundanesisch
Swahili
Tadschikisch
Tamil
Tatarisch
Telugu
Thailändisch
Tigrinya
Tschechisch
Tsonga
Türkisch
Turkmenisch
Twi
Uigurisch
Ukrainisch
Ungarisch
Urdu
Usbekisch
Vietnamesisch
Walisisch
Xhosa
Yoruba
Zulu
Powered by
Google Übersetzer
English
,
한국어
,
日本語
,
Português
,
العربية
,
Русский
,
Español
,
繁體中文
,
Français
,
ไทย
,
Italiano
,
Deutsch
,
Polski
,
Nederlands
0
Login
Register
Login
Register
EUR
United States Dollars (USD)
Euro (EUR)
United Kingdom Pounds (GBP)
Canadian Dollars (CAD)
Australian Dollars (AUD)
South African Rand (ZAR)
Norwegian Kroner (NOK)
Singapore Dollars (SGD)
Swedish Kronor (SEK)
Swiss Francs (CHF)
Japanese Yen (JPY)
Philippine Peso (PHP)
South Korean Won (KRW)
Taiwan Dollars (TWD)
Chinese Yuan Renminbi (CNY)
Russian Rubles (RUB)
Israeli New Shekel (NIS)
United Arab Emirates Dirham (AED)
English
,
한국어
,
日本語
,
Português
,
العربية
,
Русский
,
Español
,
繁體中文
,
Français
,
ไทย
,
Italiano
,
Deutsch
,
Polski
,
Nederlands
1
2
Important Notice
In order to provide customers with better price,products and services, we recommend that welcome to try our another website fansells.com. you can use the coupon code Fansells to get 7% extra discounts on fansells.com.
Buy now
New Arrivals
Quick View
Special Shaped Stitch Desktop Diamond Painting Art for Office Home Decor (Blue)
€8.76
Quick View
Special Shaped Stitch Desktop Diamond Painting Art for Office Home Decor (Pink)
€8.76
Quick View
Swan 30*30cm(canvas) special shaped drill diamond painting
€2.75
Quick View
Glass Painting Of Sleeping Girl With Beautiful Butterfly 30*30cm(canvas) special shaped drill diamond painting
€4.84
Quick View
Easter Egg Cake Butterfly 30*30cm(canvas) special shaped drill diamond painting
€4.15
Quick View
Meniscus 30*30cm(canvas) special shaped drill diamond painting
€5.30
Quick View
Bald Owl 30*30cm(canvas) special shaped drill diamond painting
€4.38
Quick View
8 Pairs Double Sided Diamond Painting DIY Earring Making Kit for Women Girls
€8.07
Quick View
8 Pairs Double Sided Diamond Painting DIY Earring Making Kit for Women Girls
€8.07
Quick View
Horse 30*30cm(canvas) special shaped drill diamond painting
€4.61
View all
Best Seller(DP)
Quick View
Dessert Cup 40*40CM(Canvas) Full Round Drill Diamond Painting
DIYDigitalArt
€6.22
Quick View
Cartoon 18*18CM(Canvas) Full Special Shaped Drill Diamond Painting
DIYDigitalArt
€3.22
Quick View
Kokeshi Doll 30*40CM(Canvas) Full Round Drill Diamond Painting
DiyDigitalArt
€5.07
Quick View
Cartoon Animal 18*18CM(Canvas) Full Special Shaped Drill Diamond Painting
DIYDigitalArt
€3.22
Quick View
Photo Customized Pour-glue Canvas Diamond Painting(👇upload the photo-choose proper size and style-payment)
DIYDigitalArt
€15.22
Quick View
Flowers And Plants 30*40CM(Canvas) Special Shaped Drill Diamond Painting
DIYDigitalArt
€5.99
Quick View
Christmas 30*40CM(Canvas) Special Shaped Drill Diamond Painting
DIYDigitalArt
€5.30
Quick View
Mandala 30*30CM(Canvas) Special Shaped Drill Diamond Painting
DiyDigitalArt
€4.15
Quick View
Cartoon Character 30*40CM(Canvas) Full Special Shaped Drill Diamond Painting
DIYDigitalArt
€6.45
Quick View
Cartoon Girl Artwork 30*40CM(Canvas) Full Round Drill Diamond Painting
DIYDigitalArt
€4.84
View all
DIY diamond crafts
Quick View
DIY Key Chain Diamond Painting Letters Women Girl Bag Keyring Pendant Gift
DiyDigitalArt
€2.07
Quick View
3/4/5pcs Mosaic Diamond Painting Keychain 5D DIY Rhinestone Keyring Pendant
DIYDigitalArt
€5.99
Quick View
Double-side Christmas Diamond Painting DIY Hanging Pendant Trees Decoration
DIYDigitalArt
€4.84
Quick View
5pcs Diamond Painting Keyring Kits DIY Cake House Keychain Pendant (YSK106)
DIYDigitalArt
€6.45
Quick View
DIY Diamond Painting Keychains Art Crafts 5pcs Key Ring Crystal Acrylic for Gift
€6.22
Quick View
5pcs Diamond Painting Keyring Kits DIY Cat Keychain Bag Pendant (YSK104)
DIYDigitalArt
€6.45
Quick View
5D DIY Bookmarks Handmade Creative Leaf Book Mark for Adults Kids (AA1112)
DIYDigitalArt
€3.22
Quick View
DIY Acrylic Diamond Coaster Set Christmas Style (8 Piece Set 1 Rack) (BD206)
DIYDigitalArt
€12.91
Quick View
DIY Acrylic Diamond Coaster Set Mandala Style (8 Piece Set 1 Rack) (BD201)
DIYDigitalArt
€12.91
Quick View
5pcs Diamond Painting Keyring Kit DIY Hummingbird Keychain Pendant (YSK100)
DIYDigitalArt
€6.45
View all
Diamond Painting Tools
Quick View
Number Label Stickers for Diamond Painting Storage Box Bottle (Black White)
€0.69
Quick View
5D Diamond Painting Clips Patchwork Garment Clip Cross Stitch Accessory
DIYDigitalArt
€1.15
Quick View
Cartoon Stress Relief Point Drill Pen 5D DIY Diamond Painting Picker Tools
€1.61
Quick View
Diamond Painting Bead Sorting Trays Stackable PP Plastic Rhinestone Plate
DIYDigitalArt
€0.46
Quick View
New Rotaryautomatic Drill Pen 5D DIY Diamond Painting Point Drill Pen With Clay Inside
DiyDigitalArt
€2.75
Quick View
Magnetic Poster Hanger DIY Painting Photo Frame Teak Wooden Wall Art Crafts
DIYDigitalart
€6.45
Quick View
Dual Heads Rhinestone Picking Point Drill Pen For Diamond Painting
DIYDigitalArt
€2.30
Quick View
60 Bottles Holder Storage Box Kits 5D Diamond Painting Tool Case Container
DIYDigitalArt
€30.67
Quick View
Magnetic Heart Shape Plastic Painting Locator Diamond Painting Accessories
DIYDigitalArt
€1.38
Quick View
Rhinestones Head Diamond Painting Point Drill Pen Tips DIY Arts Decor Craft
DIYDigitalArt
€0.92
View all
Diamond Painting Categories
Cross Stitch
Quick View
Kitchen Gadgets 3 Strands 11CT Pre-stamped Cross Stitch 25*21CM
DIYDigitalArt
€3.46
Quick View
Four Seasons 14CT Counted Canvas(27*27CM) Cross Stitch
DIYDigitalArt
€3.46
Quick View
Cartoon 14CT 2 Strands Pre-stamped Canvas Cross Stitch
DIYDigitalArt
€2.99
Quick View
Summer Angel Girl 14CT Pre-stamped Canvas(36*52CM) Cross Stitch
DIYDigitalArt
€7.84
Quick View
Illustration Girl - 11CT Stamped Cross Stitch - 50*41CM
DiyDigitalArt
€7.84
Quick View
Winter - 14CT Stamped Cross Stitch - 27*27CM
DiyDigitalArt
€4.15
Quick View
Magnetic Needle Case Household Black Needle Storage Box Portable for Needlecraft
DIYDigitalArt
€1.84
Quick View
Summer - 14CT Stamped Cross Stitch - 27*26CM
DiyDigitalArt
€4.15
Quick View
Girl Work - 11CT Stamped Cross Stitch - 52*71cm
DiyDigitalArt
€10.61
Quick View
Fall Angel Girl 14CT Pre-stamped Canvas(36*52CM) Cross Stitch
DIYDigitalArt
€7.84
View all
Cross Stitch Tools
Quick View
Cross Stitch Embroidery Tool Plastic Fixed Embroidery Clip 16x7.5cm Large 2 Pack
DIYDigitalArt
€1.61
Quick View
Lipstick Pin Cushion Retractable Sewing Needle Case 3D Oil Painting Tube
DIYDigitalArt
€2.76
Quick View
Acrylic Magnets Refrigerators Stickers Magnetic Cross Stitch Needles Minder
DIYDigitalArt
€2.30
Quick View
Square Shape Embroidery Frame DIY Craft Cross Stitch Needlework Sewing Hoop
DIYDigitalArt
€5.30
Quick View
2pcs Diamond Painting Fixed Clip DIY Cross Stitch Anti-Skid Sewing Clamp
DIYDigitalArt
€0.69
Quick View
2pcs Cross Stitch Fixing Clip Windproof Handmade Non Slip Clamp Accessory
DIYDigitalArt
€2.30
Quick View
Cross Stitch Finger Protection Cover Embroidery Pain Relief Finger Sleeves
DIYDigitalArt
€0.46
Quick View
10pcs/Lot Embroidery Needle Set Knitting Craft DIY Sewing Cross Stitch Kits
DIYDigitalArt
€0.92
Quick View
10pcs Needle Threader Cross Stitch Sewing Needle Threading Guide Device
DIYDigitalArt
€0.46
Quick View
10/12x 20 Positions Plastic Thread Board Embroidery Row Line Yarn Organizer
DIYDigitalArt
€5.99
View all
0
111
GIFTS
POINTS
111
$0.00
1
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.SHOPLAZZA.routes.root + "/api/possum/recommend_activities", { method: "POST", headers: { "Content-Type": "application/json", "store-id": window.SHOPLAZZA.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.SHOPLAZZA.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.SHOPLAZZA.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.SHOPLAZZA.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.SHOPLAZZA.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.SHOPLAZZA.routes.root || ''}/api/bundle-sales/cart`, { method: 'POST', headers: { 'Content-Type': 'application/json; charset=UTF-8', 'store-id': window.SHOPLAZZA.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}
`; })()}
Seasonal Sales
20
%
OFF
ON ORDER OF
€0.92
+
20
%
OFF
ON ORDER OF
€0.92
+
25
%
OFF
ON ORDER OF
€55.36
+
25
%
OFF
ON ORDER OF
€55.36
+
30
%
OFF
ON ORDER OF
€184.53
+
30
%
OFF
ON ORDER OF
€184.53
+
COLLECT ALL
Originaltext
Diese Übersetzung bewerten
Mit deinem Feedback können wir Google Übersetzer weiter verbessern