Discover charming and timeless style with Nicepairs Cowgirl Boots. Durable cowgirl boots are designed to exude Western flair while providing comfort. 

Cowgirl Boots

321 Products
Filter
  • Reset
  • The highest price is 199
    $
    $
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
  • 0 selected
    Reset
Filter
  • Price
  • Color
  • Pattern
  • Platform
  • Heel Type
  • Season
    Price
  • The highest price is 199
    $
    $
    Color
    Pattern
    Platform
    Heel Type
    Season
Pink Faux Suede Pointed Toe Multicolor Fringe Western Boots for Women Nicepairs Pink Faux Suede Pointed Toe Multicolor Fringe Western Boots for Women Nicepairs

Pink Faux Suede Pointed Toe Multicolor Fringe Western Boots for Women

$123.99
Add to cart
Red Vegan Leather Snip Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels Nicepairs Red Vegan Leather Snip Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels Nicepairs

Red Vegan Leather Snip Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels

$154.00
Add to cart
Gold Metallic Finish Pointed Toe Booties Embroidered Cowgirl Boots Nicepairs Gold Metallic Finish Pointed Toe Booties Embroidered Cowgirl Boots Nicepairs

Gold Metallic Finish Pointed Toe Booties Embroidered Cowgirl Boots

$136.00
Add to cart
Khaki Pointed Toe Vegan Suede Mid-Calf Western Cowboy Boots Nicepairs Khaki Pointed Toe Vegan Suede Mid-Calf Western Cowboy Boots Nicepairs

Khaki Pointed Toe Vegan Suede Mid-Calf Western Cowboy Boots

$123.00
Add to cart
Black Snip Toe Glitter Star Mid-Calf Cowgirl Boots with Chunky Heel Nicepairs Black Snip Toe Glitter Star Mid-Calf Cowgirl Boots with Chunky Heel Nicepairs

Black Snip Toe Glitter Star Mid-Calf Cowgirl Boots with Chunky Heel

$150.00
Add to cart
White Pointy Toe Wide-Calf Embroidered Cowgirl Boots with Chunky Heel Nicepairs White Pointy Toe Wide-Calf Embroidered Cowgirl Boots with Chunky Heel Nicepairs

White Pointy Toe Wide-Calf Embroidered Cowgirl Boots with Chunky Heel

$154.00
Add to cart
Black Snip Toe Wide-Calf Embroidered Cowgirl Boots with Chunky Heels Nicepairs Black Snip Toe Wide-Calf Embroidered Cowgirl Boots with Chunky Heels Nicepairs

Black Snip Toe Wide-Calf Embroidered Cowgirl Boots with Chunky Heels

$154.00
Add to cart
Light Purple Pointy Toe Block Heel Embroidered Mid Calf Cowgirl Boots Nicepairs Light Purple Pointy Toe Block Heel Embroidered Mid Calf Cowgirl Boots Nicepairs

Light Purple Pointy Toe Block Heel Embroidered Mid Calf Cowgirl Boots

$150.00
Add to cart
Ivory Pointed Toe Block Heels Shoes Mid-Calf Cowgirl Boots For Women Nicepairs Ivory Pointed Toe Block Heels Shoes Mid-Calf Cowgirl Boots For Women Nicepairs

Ivory Pointed Toe Block Heels Shoes Mid-Calf Cowgirl Boots For Women

$150.00
Add to cart
Black & Green Croco Embossed Pointed Toe Mid-Calf Cowgirl Boots Nicepairs Black & Green Croco Embossed Pointed Toe Mid-Calf Cowgirl Boots Nicepairs

Black & Green Croco Embossed Pointed Toe Mid-Calf Cowgirl Boots

$150.00
Add to cart
Dark Red Block Heel Cowgirl Boots Women's Pointed Toe Booties Nicepairs Dark Red Block Heel Cowgirl Boots Women's Pointed Toe Booties Nicepairs

Dark Red Block Heel Cowgirl Boots Women's Pointed Toe Booties

$136.00
Add to cart
Brown & White Almond Toe Mid-Calf Cowgirl Boots with Chunky Heel Nicepairs Brown & White Almond Toe Mid-Calf Cowgirl Boots with Chunky Heel Nicepairs

Brown & White Almond Toe Mid-Calf Cowgirl Boots with Chunky Heel

$140.00
Add to cart
White Snip Toe Chunky Heel Booties Heart Embroidered Cowgirl Boots Nicepairs White Snip Toe Chunky Heel Booties Heart Embroidered Cowgirl Boots Nicepairs

White Snip Toe Chunky Heel Booties Heart Embroidered Cowgirl Boots

$136.00
Add to cart
Blue Denim Stiletto Booties Eagle Embroidery Western Boots for Women Nicepairs Blue Denim Stiletto Booties Eagle Embroidery Western Boots for Women Nicepairs

Blue Denim Stiletto Booties Eagle Embroidery Western Boots for Women

$142.00
Add to cart
Purple Faux Suede Chunky Heel Embroidered Mid-Calf Cowgirl Boots Nicepairs Purple Faux Suede Chunky Heel Embroidered Mid-Calf Cowgirl Boots Nicepairs

Purple Faux Suede Chunky Heel Embroidered Mid-Calf Cowgirl Boots

$150.00
Add to cart
Metallic Silver Heeled Booties Pointed Toe Embroidered Cowgirl Boots Nicepairs Metallic Silver Heeled Booties Pointed Toe Embroidered Cowgirl Boots Nicepairs

Metallic Silver Heeled Booties Pointed Toe Embroidered Cowgirl Boots

$130.00
Add to cart
Red Embroidered Snip Toe Mid Calf Cowgirl Boots With Chunky Heels Nicepairs Red Embroidered Snip Toe Mid Calf Cowgirl Boots With Chunky Heels Nicepairs

Red Embroidered Snip Toe Mid Calf Cowgirl Boots With Chunky Heels

$125.00
Add to cart
Beige Faux Suede Closed Pointed Toe Mid calf Cowgirl Boots With Chunky Heels Nicepairs Beige Faux Suede Closed Pointed Toe Mid calf Cowgirl Boots With Chunky Heels Nicepairs

Beige Faux Suede Closed Pointed Toe Mid calf Cowgirl Boots With Chunky Heels

$125.00
Add to cart
Red & White Pointed Toe Chunky Heel Mid-Calf Cowboy Boots for Women Nicepairs Red & White Pointed Toe Chunky Heel Mid-Calf Cowboy Boots for Women Nicepairs

Red & White Pointed Toe Chunky Heel Mid-Calf Cowboy Boots for Women

$128.00
Add to cart
White Pointed Toe Studded Knee High Cowgirl Boots With Chunky Heel Nicepairs White Pointed Toe Studded Knee High Cowgirl Boots With Chunky Heel Nicepairs

White Pointed Toe Studded Knee High Cowgirl Boots With Chunky Heel

$128.00
Add to cart
Giltter Pointed Toe Western Boots Patent Leather Boots Print Chunky Heels Nicepairs Giltter Pointed Toe Western Boots Patent Leather Boots Print Chunky Heels Nicepairs

Giltter Pointed Toe Western Boots Patent Leather Boots Print Chunky Heels

$150.00
Add to cart
Blue Knee Boots Pointed Close Toe Cone Heel Knee Boots Nicepairs Blue Knee Boots Pointed Close Toe Cone Heel Knee Boots Nicepairs

Blue Knee Boots Pointed Close Toe Cone Heel Knee Boots

$138.00
Add to cart
Black Patent Leather Punk Mid-Calf Cowboy Boots with Silver Chain Nicepairs Black Patent Leather Punk Mid-Calf Cowboy Boots with Silver Chain Nicepairs

Black Patent Leather Punk Mid-Calf Cowboy Boots with Silver Chain

$150.00
Add to cart
Knee High Cowgirl Boots Black And Silver With Chain Decor Cone Heel Boots Nicepairs Knee High Cowgirl Boots Black And Silver With Chain Decor Cone Heel Boots Nicepairs

Knee High Cowgirl Boots Black And Silver With Chain Decor Cone Heel Boots

$135.00
Add to cart
White Vegan Leather Western Ankle Boots Rhinestone Tassel Block Heel Booties Nicepairs White Vegan Leather Western Ankle Boots Rhinestone Tassel Block Heel Booties Nicepairs

White Vegan Leather Western Ankle Boots Rhinestone Tassel Block Heel Booties

$125.00
Add to cart
White Vegan Leather Knee High Cowgirl Boots Gold Print Pointed Toe Boots Nicepairs White Vegan Leather Knee High Cowgirl Boots Gold Print Pointed Toe Boots Nicepairs

White Vegan Leather Knee High Cowgirl Boots Gold Print Pointed Toe Boots

$138.00
Add to cart
Women's Silver Stacked Heel Booties Rhinestone Sparkly Cowboy Boots Nicepairs Women's Silver Stacked Heel Booties Rhinestone Sparkly Cowboy Boots Nicepairs

Women's Silver Stacked Heel Booties Rhinestone Sparkly Cowboy Boots

$159.00
Add to cart
Red Chunky Heel Flame Pattern Mid-Calf Cowboy Boots for Women Nicepairs Red Chunky Heel Flame Pattern Mid-Calf Cowboy Boots for Women Nicepairs

Red Chunky Heel Flame Pattern Mid-Calf Cowboy Boots for Women

$136.00
Add to cart
Brown Vegan Suede Fold-over Mid Calf Cowgirl Boots with Chunky Heel Nicepairs Brown Vegan Suede Fold-over Mid Calf Cowgirl Boots with Chunky Heel Nicepairs

Brown Vegan Suede Fold-over Mid Calf Cowgirl Boots with Chunky Heel

$132.00
Add to cart
Lawless Fringe Gray Faux Suede Western Ankle Boots  Nicepairs Lawless Fringe Gray Faux Suede Western Ankle Boots  Nicepairs

Lawless Fringe Gray Faux Suede Western Ankle Boots

$136.00
Add to cart
Black Snip Toe Side-Zipper Block Heel Studded Western Boots for Women Nicepairs Black Snip Toe Side-Zipper Block Heel Studded Western Boots for Women Nicepairs

Black Snip Toe Side-Zipper Block Heel Studded Western Boots for Women

$136.00
Add to cart
Red Snip Toe Booties Block Heel Studded Western Boots for Women Nicepairs Red Snip Toe Booties Block Heel Studded Western Boots for Women Nicepairs

Red Snip Toe Booties Block Heel Studded Western Boots for Women

$136.00
Add to cart
Beige Block Heel Studded Booties Vintage Snip Toe Western Boots Nicepairs Beige Block Heel Studded Booties Vintage Snip Toe Western Boots Nicepairs

Beige Block Heel Studded Booties Vintage Snip Toe Western Boots

$136.00
Add to cart
Gray Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel Nicepairs Gray Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel Nicepairs

Gray Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel

$150.00
Add to cart
Light Beige Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel Nicepairs Light Beige Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel Nicepairs

Light Beige Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel

$150.00
Add to cart
Navy Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel Nicepairs Navy Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel Nicepairs

Navy Pointed Toe Knee High Embroidered Cowgirl Boots with Block Heel

$150.00
Add to cart
Tan Wide Calf Embroidered Mid-Calf Cowgirl Boots with Chunky Heel Nicepairs Tan Wide Calf Embroidered Mid-Calf Cowgirl Boots with Chunky Heel Nicepairs

Tan Wide Calf Embroidered Mid-Calf Cowgirl Boots with Chunky Heel

$140.00
Add to cart
Vintage Lace Up Pointed Toe  Cowgirl Boots in Brown Nicepairs Vintage Lace Up Pointed Toe  Cowgirl Boots in Brown Nicepairs

Vintage Lace Up Pointed Toe Cowgirl Boots in Brown

$142.00
Add to cart
Orange Faux Suede Pointed Toe Side-Zip Cowgirl Ankle Boots With Chunky Heel Nicepairs Orange Faux Suede Pointed Toe Side-Zip Cowgirl Ankle Boots With Chunky Heel Nicepairs

Orange Faux Suede Pointed Toe Side-Zip Cowgirl Ankle Boots With Chunky Heel

$136.00
Add to cart
Beige Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel Nicepairs Beige Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel Nicepairs

Beige Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel

$154.00
Add to cart
Black Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel Nicepairs Black Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel Nicepairs

Black Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel

$154.00
Add to cart
Blue Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel Nicepairs Blue Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel Nicepairs

Blue Vegan Leather Colorful Butterfly Patch-Work Cowgirl Boots With Chunky Heel

$154.00
Add to cart
White Vegan Leather Snip Toe Blue  Embroidered Snake Skin Cowgirl Boots With Chunky Heels Nicepairs White Vegan Leather Snip Toe Blue  Embroidered Snake Skin Cowgirl Boots With Chunky Heels Nicepairs

White Vegan Leather Snip Toe Blue Embroidered Snake Skin Cowgirl Boots With Chunky Heels

$154.00
Add to cart
Brown Vegan Leather Snip Toe Floral Embroidery Inlay Thigh High Cowgirl Boots With Chunky Heels Nicepairs Brown Vegan Leather Snip Toe Floral Embroidery Inlay Thigh High Cowgirl Boots With Chunky Heels Nicepairs

Brown Vegan Leather Snip Toe Floral Embroidery Inlay Thigh High Cowgirl Boots With Chunky Heels

$158.00
Add to cart
Ivory Vegan Leather Pointed Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels Nicepairs Ivory Vegan Leather Pointed Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels Nicepairs

Ivory Vegan Leather Pointed Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels

$154.00
Add to cart
Gold Vegan Leather Pointed Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels Nicepairs Gold Vegan Leather Pointed Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels Nicepairs

Gold Vegan Leather Pointed Toe Wide Calf Embroidered Cowgirl Boots With Chunky Heels

$154.00
Add to cart
Beige & White Faux Suede Round Toe Embroidered Cowgirl Ankle Boots With Chunky Heels Nicepairs Beige & White Faux Suede Round Toe Embroidered Cowgirl Ankle Boots With Chunky Heels Nicepairs

Beige & White Faux Suede Round Toe Embroidered Cowgirl Ankle Boots With Chunky Heels

$136.00
Add to cart
Brown Faux Suede Snip Toe Embroidered Side-Zipped Mid-Calf Cowgirl Boots With Chunky Heels Nicepairs Brown Faux Suede Snip Toe Embroidered Side-Zipped Mid-Calf Cowgirl Boots With Chunky Heels Nicepairs

Brown Faux Suede Snip Toe Embroidered Side-Zipped Mid-Calf Cowgirl Boots With Chunky Heels

$140.00
Add to cart
Sorry, there are no products in this collection.
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('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 }, true); }); }); 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);