${ data.originData.message }
-
${function(){
let liDom = '';
const items = [
{
text: landing_page_info.product.buy_product.text,
class: "",
value: 1
},
{
text: landing_page_info.product.obtain_product.text,
class: "cart-coupon-code-modal-tab__obtain",
value: 2,
is_obtain
}
];
for (item of items) {
liDom += `
- ${ item.text } ` } return liDom; }()}
${buyProductsDom}
${obtainProductsDom}
${buyProductsDom}
`}
${data.available ?
`
` : ''}
${function(){
const variantsNamesSet = new Set(data.options.map((opt) => opt.name.toLowerCase()) || []);
const handleName = (name) => name.replace(/\/|\\|\s|\'|\"|`|\<|\>/g, '');
const mouseoutevent = data.options.map((opt) => `@${handleName(opt.name)}Mouseout="qv-selected-render-${opt.id}.rerender(data=event,redo=true);"`).join(' ');
const mouseoverevent = data.options.map((opt) => `@${handleName(opt.name)}Mouseover="qv-selected-render-${opt.id}.rerender(data=event,redo=true);"`).join(' ');
const variants = data?.variants?.map((item) => item.image.path) || [];
const productData = data;
const images = data.images;
const selectedVariant = data.variants.find(v => v.available) || data.variants[0];
const selectedIndex = !!selectedVariant ? images.findIndex(img => img.src === (selectedVariant.image && selectedVariant.image.src)) : 0;
const initialSlide = selectedIndex === -1 ? 0 : selectedIndex;
return `
${images.map(image => `
`).join('')}
${images.length > 1 ? `
` : ''}
`
}()}
${images.map((image, index) => `
`).join('')}
${data.title}
${function(){
return (data.product.options || []).map((option, index) => {
const optionName = option.name || '';
const optionId = option.id || '';
return `
`
}).join('')
}()}
${function(){
const { currentOptName, originData: { selectData, value } } = data;
const optionValue = selectData ? selectData[currentOptName].value[0] : value;
return `${optionValue}`
}()}
${function(){
return (data.product.options || []).map((option, index) => {
const optionName = option.name || '';
const optionId = option.id || '';
return `
`
}).join('')
}()}
${function(){
const { currentOptName, originData: { selectData, value } } = data;
const optionValue = selectData ? selectData[currentOptName].value[0] : value;
return `${optionValue}`
}()}
${data.originData.message}
Add
`
}()}
${data.map( item => {
return `
${item}
`
}).join('')}
Below discount codes are unavailable
${data.map( item => {
return `
${item}
`
}).join('')}
${function(){
const code_data = data.originData.list;
if (!code_data || !code_data.length) return '';
const recommendDom = `
Recommend discount codes
`;
const discountCodeListDom = code_data.map( item => {
item.end_at = item.end_at == -1 ? item.end_at : item.end_at * 1000;
item.start_at *= 1000;
return `
-
`
}).join('');
return `
${discountCodeListDom}
`
}()}
${item.discount_text}
${item.code}
${recommendDom}
${recommendDom}
${discountCodeListDom}