${(function(){ const get_random_six_digits = () => { return Math.random().toString().slice(-6) }; const wholesale_enabled = false; const setting_product_image_display = "133.33%"; const product_image = data.image; const secondary_image = data.secondImage; const image_width = product_image.width; let image_height = product_image.height; if(setting_product_image_display == '100%'){ image_height = image_width }else if(setting_product_image_display == '133.33%'){ image_height = image_width * 1.3333; }else if(setting_product_image_display == '75%'){ image_height = image_width * 0.75; }; const product_image_hover_on = true && !!secondary_image.src; const has_save_label = true && ((+data.compare_at_price) > (+data.price)); const is_single_variant = data.variants.length == 1; const min_price_variant_href = (data.min_price_variant && data.min_price_variant.available) ? data.min_price_variant.withinUrl : data.withinUrl; const retail_price_max = data.retail_price_max || data.compare_at_price_max; const THUMBNAILS_MAX_SIZE = 3; const thumbnails = data.thumbVariants.slice(0, THUMBNAILS_MAX_SIZE); const image_wrap_id = 'image_wrap_' + get_random_six_digits(); const image_carousel_id = 'image_carousel_' + get_random_six_digits(); const thumbnails_selector_id = 'thumbnails_selector_' + get_random_six_digits(); const form_id = 'form_' + get_random_six_digits(); const mixed_wholesale = data.mixed_wholesale; return `
${ data.available ? `${ (+data.compare_at_price > +data.price) ? `Guardar ${ data.off_ratio }% ` : '' }` : "Vendido" }
Lote mixto
${data.title}
${ data.price_min != data.price_max ? `de
` : `
` }
+${data.remainInvisibleThumbCount}
` })()}
${data.data && data.data.count}
Recogida
Blusas y camisas para mujer
Bolsos para mujer
Chaquetas para mujer
Mono para mujer
Pantalones para mujer
Contacto
Quiénes somos
Preguntas frecuentes
Política de devoluciones y reembolsos
Seguimiento de su pedido
Más enlaces
${(function(){ var linkList =[true,false,false,false,false,false].slice(offset); var hasChild = linkList.some(v => v); if(!hasChild){ return `
Recogida
Contacto
Quiénes somos
Preguntas frecuentes
Política de devoluciones y reembolsos
Seguimiento de su pedido
` } return `
Recogida
Contacto
Quiénes somos
Preguntas frecuentes
Política de devoluciones y reembolsos
Seguimiento de su pedido
Blusas y camisas para mujer
Bolsos para mujer
Chaquetas para mujer
Mono para mujer
Pantalones para mujer
` })()}
Recogida
Blusas y camisas para mujer
Bolsos para mujer
Chaquetas para mujer
Mono para mujer
Pantalones para mujer
Contacto
Quiénes somos
Preguntas frecuentes
Política de devoluciones y reembolsos
Seguimiento de su pedido
Más enlaces
${(function(){ var linkList =[true,false,false,false,false,false].slice(offset); var hasChild = linkList.some(v => v); if(!hasChild){ return `
Recogida
Contacto
Quiénes somos
Preguntas frecuentes
Política de devoluciones y reembolsos
Seguimiento de su pedido
` } return `
Recogida
Contacto
Quiénes somos
Preguntas frecuentes
Política de devoluciones y reembolsos
Seguimiento de su pedido
Blusas y camisas para mujer
Bolsos para mujer
Chaquetas para mujer
Mono para mujer
Pantalones para mujer
` })()}
${data.data && data.data.count}
${(function(){ if (data === undefined || typeof data !== 'string' || data == '') return ''; const keyword = encodeURIComponent(data); return `
Ver más
Su búsqueda de '${data}' no arrojó ningún resultado.
` })()}
Recogida
Recogida
Blusas y camisas para mujer
Bolsos para mujer
Chaquetas para mujer
Mono para mujer
Pantalones para mujer
Contacto
Quiénes somos
Preguntas frecuentes
Política de devoluciones y reembolsos
Seguimiento de su pedido
Iniciar sesión
Crea una cuenta
(function(){ let w = window.innerWidth; function setHeaderCssVar() { const headerEle = document.getElementById('shoplaza-section-header'); if(!headerEle){ return }; document.body.style.setProperty('--window-height', `${window.innerHeight}px`); document.body.style.setProperty('--header-height', `${headerEle.clientHeight}px`); const mdScorllHideEle = headerEle.querySelector('.header__mobile .header__scroll_hide'); if (mdScorllHideEle) { document.body.style.setProperty('--header-scroll-hide-height-md', `${mdScorllHideEle.clientHeight}px`); } const pcScorllHideEle = headerEle.querySelector('.header__desktop .header__scroll_hide'); if (pcScorllHideEle) { document.body.style.setProperty('--header-scroll-hide-height-pc', `${pcScorllHideEle.clientHeight}px`); } } function handlResize() { if(w == window.innerWidth){return}; w = window.innerWidth; setHeaderCssVar(); }; function init(){ setHeaderCssVar(); window.removeEventListener('resize', window._theme_header_listener) window._theme_header_listener = handlResize; window.addEventListener('resize', window._theme_header_listener); } init(); })();
Buscar
Buscar
Filtrar
Filtrar
${data.label}
más que
-
Filtrar
${ item.title }
${data.title}
Ver más
${item.label}
${ data.title }
€
Para
€
Reiniciar
Mostrar 0 Resultados
${("Mostrar {{count}} Resultados").replace(/\{\{\s*count\s*\}\}/,data)}
${("{{ count }} Productos").replace(/\{\{\s*count\s*\}\}/, data.total)}
Su búsqueda de '${keyword}' no arrojó ningún resultado.
${("Su b\u00fasqueda de '{{ name }}' no arroj\u00f3 ning\u00fan resultado.").replace(/\{\{\s*name\s*\}\}/, data.requestData.data.keyword)}
No se han encontrado productos.
Use menos filtros o
borra todo
const searchContainer = document.getElementById('search-container'); let updatingSearchTerms = false; let currentAnchorActiveValue = ''; function updateSearchTerms() { updatingSearchTerms = true; return Promise.resolve({}); } function updateEmptyStatus(data) { if (!searchContainer || !updatingSearchTerms) { return; } const requestData = data.requestData.data?.filters || [] const hasPrice = requestData.some(item=> item.param_name == "filter.v.price") const showFilter = requestData.some(item=> item.param_name != "filter.v.price" && item.values?.length > 0 ) if ((hasPrice && data.total > 0) || (requestData.length > 0 && showFilter)) { searchContainer.removeAttribute('empty'); } else { searchContainer.setAttribute('empty', ''); } updatingSearchTerms = false; return Promise.resolve({}); } function setAnchorActiveValue(activeValue) { currentAnchorActiveValue = activeValue; return Promise.resolve({}); } function resetAnchor() { return Promise.resolve({activeValue: currentAnchorActiveValue}); } exportFunction('updateEmptyStatus', updateEmptyStatus); exportFunction('updateSearchTerms', updateSearchTerms); exportFunction('setAnchorActiveValue', setAnchorActiveValue); exportFunction('resetAnchor', resetAnchor);
const TAG = 'spz-custom-search-one-click'; const ONE_CLICK_NAME = 'data-one-click-name'; class SpzCustomSearchOneClick extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); this.clickedUniqueNames_ = []; this.container_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { const scopeId = this.element.getAttribute('container'); this.container_ = SPZCore.Dom.scopedQuerySelector(document.body, `#${scopeId}`) || document.body; this.initActions_(); } initActions_() { SPZUtils.Event.listen(this.container_, 'click', (e) => { const target = SPZCore.Dom.closestAncestorElementBySelector( e.target, `[${ONE_CLICK_NAME}]` ); if (!target) { return; } const name = target.getAttribute(ONE_CLICK_NAME); if (!this.clickedUniqueNames_.includes(name)) { this.clickedUniqueNames_.push(name); } target.setAttribute('hidden', ''); }); this.registerAction('resetStatus', () => { this.resetStatus_(); }); } resetStatus_() { const elements = SPZCore.Types.toArray( SPZCore.Dom.scopedQuerySelectorAll(this.container_, `[${ONE_CLICK_NAME}]`) ); elements.forEach((el) => { const name = el.getAttribute(ONE_CLICK_NAME); if (this.clickedUniqueNames_.includes(name)) { el.setAttribute('hidden', ''); } }); } } SPZ.defineElement(TAG, SpzCustomSearchOneClick);
const TAG = 'spz-custom-search-input-refresh-list'; const FILTER_PREFIX = 'filter.'; const SORT_BY = 'sort_by'; class SpzCustomSearchInputRefreshList extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); this.target_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { const listId = this.element.getAttribute('list-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(listId), () => { this.initialize_(); } ); } initialize_() { const listId = this.element.getAttribute('list-id'); this.target_ = SPZCore.Dom.scopedQuerySelector(document.body, `#${listId}`); this.registerAction('refresh', (invocation) => { const {keyword = ''} = invocation?.args || {}; const qs = (location.search || '') .split(/[\?&]/g) .filter((item) => item); const emptyFilterItems = qs.map((item) => item.split(/=/)[0]) .filter((item) => item.startsWith(FILTER_PREFIX)) .reduce((memo, key) => { memo[key] = []; return memo; }, {}) || {}; const sortBy = qs.filter((item) => item.split(/=/)[0] === SORT_BY) .reduce((memo, pair) => { const kv = pair.split(/=/); memo[kv[0]] = kv[1]; return memo; }, {}) || {}; SPZ.whenApiDefined(this.target_).then((apis) => { apis.refresh?.({...emptyFilterItems, ...sortBy, keyword}, true); }); }); } } SPZ.defineElement(TAG, SpzCustomSearchInputRefreshList);
Carro
Tu bolsa de compras está vacía
Seguir comprando
${item.product_title}
${item.options.map(option => option.value).join('/')}
${propertie.name}/${propertie.isImage ? `
Ver imagen
` : propertie.value}
Regalo gratuito
Lote mixto
*${item.quantity}
${item.item_text}
${discount_item.title}
(-
)
Total:
${function() { const textArray = ("Guardar {{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 && textArray.length < 2) { textArray.push(''); } return textArray.map((text, index) => { if (index == 0) { return `
${text}
`; } return `
${text}
`; }).join(''); }()}
${function() { const textArray = ("Guardar {{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 && textArray.length < 2) { textArray.push(''); } return textArray.map((text, index) => { if (index == 0) { return `
${text}
`; } return `
${text}
`; }).join(''); }()}
${discount_application.title}:
-
${data.invalid_msg}
Verificar
${data.invalid_msg}
Total:
${function() { const textArray = ("Guardar {{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 && textArray.length < 2) { textArray.push(''); } return textArray.map((text, index) => { if (index == 0) { return `
${text}
`; } return `
${text}
`; }).join(''); }()}
${function() { const textArray = ("Guardar {{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 && textArray.length < 2) { textArray.push(''); } return textArray.map((text, index) => { if (index == 0) { return `
${text}
`; } return `
${text}
`; }).join(''); }()}
${function() { const textArray = ("Guardar {{save_amount}}").split(/\{\{\s*save_amount\}\}/); if (textArray.length > 0 && textArray.length < 2) { textArray.push(''); } return textArray.map((text, index) => { if (index == 0) { return `
${text}
`; } return `
${text}
`; }).join(''); }()}
${discount_application.title}:
-
Verificar
${data.invalid_msg}
Verificar
Impuestos y envíos calculados al finalizar
Total parcial:
${discount_application.title}:
-
Total:
Verificar
Impuestos y envíos calculados al finalizar
const summaryStickyRender = document.querySelector('#cart-drawer-summary-sticky-render'); if (summaryStickyRender) { document.body.style.setProperty('--cart-drawer-summary-sticky-height', summaryStickyRender.clientHeight + 'px'); }
Ver carrito
${function(){ console.log('quick-shop-render',data); const productData = data.product; let product_change_event = '', mouse_over_event = ' '; mouse_out_event = ''; const product_options = productData.options.filter(Boolean) || []; const selectedVariant = productData.variants.find(v => v.available) || productData.variants[0]; const statusLan = ((selectedVariant && !selectedVariant.available) || (!selectedVariant && !productData.available)) ? "Vendido" : "A\u00f1adir a la cesta"; return `
${statusLan}
` }()}
${function(){ const currentSelectVariant = data.variant; const defaultVariant = (data.product && data.product.variants && data.product.variants[0]); const variantData = currentSelectVariant || defaultVariant || data; const retail_price = variantData.retail_price || 0; return `
Venta minorista
` }()}
${function(){ const wholesale_enabled = false; const qty = data.quantity || 1; const currentSelectVariant = data.variant; const defaultVariant = (data.product && data.product.variants && data.product.variants[0]); const productVariant = null; const variantData = currentSelectVariant || defaultVariant || productVariant; const wholesale_price = variantData.wholesale_price || []; if(wholesale_enabled && wholesale_price.length > 0) { let wholesaleIndex = wholesale_price.findIndex(item => { return item.min_quantity > qty; }); if(wholesaleIndex < 0){ wholesaleIndex = wholesale_price.length - 1; }else if(wholesaleIndex > 0){ wholesaleIndex = wholesaleIndex - 1; } const wholesalePrice = wholesale_price[wholesaleIndex] || ''; return `
` }else { const price = variantData && variantData.price; return price != undefined ? `
` : '
'; } }()}
${function(){ const optionName = option.name || ''; const optionId = option.id || ''; let isThumbImage = !!option.showThumbImage; const thumbStyle = "image_with_text"; const variantType = "button"; const isSelected = (value) => { const selected = (data.selectedOptions || []).find(v => v.name === optionName); return selected && selected.value.length && selected.value[0] == value; }; const getThumbImage = (value) => { const options = data.product.options || []; const option = options.find(o => o.name === optionName); if (option.thumbImages) { const thumbImage = option.thumbImages.find(t => t.value === value); if (thumbImage && thumbImage.image) { return { src: thumbImage.image.src, alt: thumbImage.image.alt }; } } return {src: '', alt: ''}; }; return `
${optionName}:
${data.selectedOptions && data.selectedOptions.length && data.selectedOptions.find(v => v.name === optionName).value[0]}
${value}
${optionName}
${value}
${value}
` }()}
${data.value}