๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad
๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad

๐Ÿ”ฅ๐ŸŽ2023-Christmas Hot Sale 49% Off๐ŸŽDog Charm Bracelet For Mom And Dad

Best Dog Mom Gift For Women, Dog Dad Gift For Men
Style
Please select a style
Price
$37.96
$17.98
Save  $19.98
Quantity
Add Gift Packing

PE Film Box - $3.99

Ring Box - $5.99

LED Ring Box - $9.99

Free worldwide shipping
Sustainably made
Secure payments

This dog mother bracelet is made of high-quality natural stone beads, as well as a high-quality alloy pendant.  The bracelets is also paired with a card that says words to the mother, expressing full love.

This cute bracelet is made of elastic material and is suitable for most women's wrists, so there is no need to worry about not being suitable.

Dog moms willingly sacrifice freedoms to fulfill their dog's expectations, while their puppies bring Love and Hope to life through their healing abilities.

These bracelets are nice dog lovers gifts for women and men, dogs are an important part of the family.  A dog lover is a person who is loving and responsible, Wearing this bracelet can bring them more joy, love, energy, and passion.

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);