Livraison gratuite pour les commandes supérieures à 50 euros.
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
4 / 22
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)
0% OFF

Kit de peinture diamant perceuse en cristal en forme spéciale bricolage artisanat pendentif double face (2 pièces)

2 ventes
€10.99

628828.02

Style
Quantité 52 Stock
DIY Special Shaped Drill Diamond Painting Sun Crystal Light Catching Window Wind Chimes Bijoux Kit Hanging Art Mosaic Rhinestone Pendentif Décorations de la maison
Spécification:
Produit: Pendentif de perceuse à point de bricolage
Taille: env. environ 29x10cm / 11.42x3.94in (1cm = 0.39in)
Poids: 90g
Matériel: Acrylique
Type de diamant: Perceuse à cristal de forme spéciale
Espace: salon / chambre / salle de classe / entrée

Étapes de peinture au diamant DIY:
1. Ouvrez la boîte, vérifiez si les kits sont complets;
2. Selon le code couleur, choisissez une couleur dans la plaque;Si vous collez la même couleur en même temps, vous pouvez augmenter la vitesse;
3. Trouvez les symboles dans l’image, en commençant à coller jusqu’à ce qu’ils le terminent;
4. Lorsque vous l’avez terminé, mettez des livres sur le dessus, laissez-le plus fermement;
5. Félicitations, vous pouvez aller raccrocher et décorer votre maison maintenant!

Mesures préventives de la peinture au diamant DIY:
1. Reportez-vous aux étapes d’opération précédentes.
2. Si vous ne savez pas quelle est la couleur, veuillez vous référer au nuancier.

Note:
Il s’agit d’un produit de peinture au diamant DIY. Ce n'est pas fini. Vous devez le faire vous-même.
En raison de l’effet de moniteur et de lumière différent, la couleur réelle de l’article peut être légèrement différente de la couleur montrée sur les images. Merci!
Veuillez autoriser un écart de mesure de 1 à 2 cm en raison de la mesure manuelle.
2 X Pendentifs de forage ponctuels (strass doit être collé)
2 x Pendentif
2 X porte-clés
1set X Outils de peinture diamant

2 X Pendentifs de forage ponctuels (strass doit être collé)
2 x Pendentif
2 X porte-clés
1set X Outils de peinture diamant
class SpzSmartBlockComponent extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.container_ = null; this.i18n_ = {}; this.config_ = {}; this.show_type_ = 3; this.product_resource_id_ = ''; this.collection_resource_id_ = ''; this.cart_items_ = []; this.customer_id_ = ''; this.order_id_ = ''; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { const template_type = window.SHOPLAZZA.meta.page.template_type; if (template_type === 1) { this.show_type_ = 3; this.product_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 2) { this.show_type_ = 4; this.collection_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 15){ this.show_type_ = 5; } else if (template_type === 13){ this.show_type_ = 6; } else if (template_type === 20){ this.show_type_ = 7; this.customer_id_ = window.SHOPLAZZA.customer.customer_id; } else if (template_type === 35){ this.show_type_ = 8; this.order_id_ = window.location.pathname.split('/').pop(); } this.templates_ = SPZServices.templatesForDoc(this.element); this.setAction_(); } mountCallback() { console.log('appzebu smart mounted'); const that = this; const themeName = window.SHOPLAZZA.theme.merchant_theme_name; const isGeek = /Geek/.test(themeName); this.fetchRules().then((res) => { if (res && res.rules && res.rules.length) { const blockEl = document.getElementById('smart_recommend_block'); SPZ.whenApiDefined(blockEl).then((api) => { api.render({data: res}, true).then(() => { if (isGeek && that.show_type_ === 6) { blockEl.querySelector('.plugin_container_wrpper').style.padding = '30px 0'; } const recommendStyle = document.createElement('style'); recommendStyle.innerHTML = ` .plugin__recommend_container,.app-recommend-card { display: none !important; } `; document.head.appendChild(recommendStyle); const fetchList = []; res.rules.forEach((rule) => { fetchList.push(this.fetchRuleProductList(rule.id)); }); const fetchAll = Promise.all(fetchList); fetchAll.then((p_res) => { res.rules.forEach((rule, index) => { rule.products = p_res[index] && p_res[index].products; const ruleEl = document.getElementById('smart_recommend_rule_' + rule.id); SPZ.whenApiDefined(ruleEl).then((api) => { api.render({data: rule}, true).then(() => { that.impressListen(`#smart_recommend_rule_ul_${rule.id}`, function(){ that.trackRuleImpress(rule); }); const btnElList = document.querySelectorAll(`#smart_recommend_rule_ul_${rule.id} button`); btnElList.forEach((btnEl) => { if (btnEl && rule.config && rule.config.quick_shop_button_bg_color && rule.config.quick_shop_button_text_color) { btnEl.style.backgroundColor = rule.config.quick_shop_button_bg_color; btnEl.style.color = rule.config.quick_shop_button_text_color; } }) }); }); }); }); }) }) } else { if (window.top !== window.self) { const template_type = window.SHOPLAZZA.meta.page.template_type; const holderEl = document.getElementById('smart_recommend_preview_no_data_placeholder'); SPZ.whenApiDefined(holderEl).then((api) => { api.render({data: { isCart: template_type === 13, isCollection: template_type === 2, isProduct: template_type === 1, isIndex: template_type === 15 }}, true); }); } } }); } setAction_() { this.registerAction('quickShop', (data) => { const that = this; const product_id = data.args.product_id; const productIndex = data.args.productIndex; const rule_id = data.args.rule_id; const ssp = data.args.ssp; const scm = data.args.scm; const cfb = data.args.cfb; const ifb = data.args.ifb; const modalRender = document.getElementById('smart_recommend_product_modal_render'); if (product_id) { this.fetchProductData(product_id).then((res) => { const product = res.products && res.products.length && res.products[0] || {}; product.cfb = cfb; product.ifb = ifb; SPZ.whenApiDefined(modalRender).then((api) => { api.render({product: product, productIndex: productIndex, rule_id: rule_id, ssp: ssp, scm: scm, show_type: that.show_type_}, true).then(() => { const modalEl = document.getElementById('smart_recommend_product_modal'); SPZ.whenApiDefined(modalEl).then((modal) => { that.impressListen('#smart_recommend_product_modal', function(){ that.trackQuickShop({ rule_id: rule_id, product_id: product_id }); }); modal.open(); }); const formEl = document.getElementById('smart_recommend_product_form'); SPZ.whenApiDefined(formEl).then((form) => { form.setProduct(product); }); const variantEl = document.getElementById('smart_recommend_product_variants'); SPZ.whenApiDefined(variantEl).then((variant) => { variant.handleRender(product); }); }); }) }); } }); this.registerAction('handleScroll', (data) => { this.directTo(data.args.rule_id, data.args.direction); }); this.registerAction('handleProductChange', (data) => { const variant = data.args.data.variant; const product = data.args.data.product; const imageRenderEl = document.getElementById('smart_recommend_product_image'); SPZ.whenApiDefined(imageRenderEl).then((api) => { api.render({ variant: variant, product: product }); }); }); this.registerAction('handleAtcSuccess', (detail) => { const data = detail.args; data.data.product = data.data.product || {}; data.data.variant = data.data.variant || {}; const product_id = data.data.product.id; const product_title = data.data.product.title; const variant_id = data.data.variant.id; const price = data.data.variant.price; const rule_id = data.rule_id; const aid = `smart_recommend.${this.show_type_}.${rule_id}`; const ifb = data.data.product.ifb; const cfb = data.data.product.cfb; const ssp = data.ssp; const scm = data.scm; const spm = `smart_recommend_${this.show_type_}.${data.spmIndex}`; 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, } }; this.tranckAddToCart(params); }); this.registerAction('addATCHook', (data) => { const params = data.args; const spm = `smart_recommend_${this.show_type_}.${params.spmIndex}`; this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({ event: 'dj.addToCart', params: { aid: `smart_recommend.${this.show_type_}.` + params.rule_id, ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, }, once: true }); }); } tranckAddToCart(detail) { if (window.$) { window.$(document.body).trigger('dj.addToCart', detail); } } fetchRules() { const payload = { show_type: this.show_type_, }; let that = this; if (this.show_type_ === 6) { let line_items = []; return this.fetchCart().then((res) => { if (res && res.cart && res.cart.line_items) { line_items = res.cart.line_items.map((item) => { return { product_id: item.product_id, variant_id: item.variant_id, quantity: item.quantity, price: item.price } }); } payload.line_items = line_items; that.cart_items_ = line_items; return that.fetchRulesRequest(payload); }); } else { if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return this.fetchRulesRequest(payload); } } fetchRulesRequest(payload) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_query", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }); } fetchCart() { return fetch(`/api/cart/cart-select?r=${Math.random().toString(36).slice(-4)}`) .then((res) => { if (res.ok) { return res.json(); } }); } fetchRuleProductList(rule_id) { const payload = { page: 1, limit: 100, fields: ["title", "url", "image", "min_price_variant.price", "min_price_variant.compare_at_price"], rule_id: rule_id, }; if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 6) { payload.line_items = this.cart_items_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); }); } fetchProductData(product_id) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ product_ids: [product_id], fields: [ "images", "options", "min_price_variant", "variants"] }) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); const loadingEl = document.getElementById('smart_recommend_loading'); if (loadingEl) { loadingEl.style.display = 'none'; } }); } getStyle(ele, style) { if (!ele) return; if (window.getComputedStyle) { return window.getComputedStyle(ele)[style]; } return ele.currentStyle[style]; } directTo(id, direction) { const scrollElement = document.getElementById(`smart_recommend_rule_ul_${id}`); const blockWidth = parseInt(this.getStyle(scrollElement, 'width')); const scrollLength = (blockWidth * 0.19 - 12) * 5; const scrollPoint = scrollElement.scrollWidth - scrollElement.clientWidth; if (!scrollElement) return; if (direction === 'left') { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft - scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: Math.max(scrollElement.scrollLeft - scrollLength, 0), behavior: 'smooth' }); } else { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint + 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: scrollElement.scrollLeft >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); } } trackRuleImpress(rule) { if (window.sa && window.sa.track) { window.sa.track("plugin_common", { plugin_name: "upsell", event_type: "impressions", rule_id: rule.id, ssp: rule.ssp, scm: rule.scm, show_type: this.show_type_, support_app_block: window.SHOPLAZZA.theme.support_app_block }); window.sa.track("module_impressions", { aid: `smart_recommend.${this.show_type_}.${rule.id}`, support_app_block: window.SHOPLAZZA.theme.support_app_block }); } } trackQuickShop(data) { window.sa && sa.track && sa.track("plugin_common", { plugin_name: "upsell", event_type: "quick_shop", rule_id: data.rule_id, product_id: data.product_id, show_type: this.show_type_, }); } 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-block', SpzSmartBlockComponent);