1pc, Fruit Peeler, Vegetable Peeler, Creative Peeler, Multifunctional Peeler, Potato Peeler, Orange Peeler With Ring Handle, Kitchen Apple Peeler, Melon Planer, Reusable Pear Peeler, Carrots Peelers, Kitchen Tools, Kitchen Stuff, Kitchen Gadgets
${function() {
const variantData = data.variant || {"id":"1f3a5566-590c-4424-bd38-21b70e76486a","product_id":"3709b406-e974-428f-9871-5c1e889f0433","title":"pink","weight_unit":"kg","inventory_quantity":1000,"sku":"pink-188939496","barcode":"","position":1,"option1":"pink","option2":"","option3":"","note":"","image":{"src":"\/\/img.staticdj.com\/90112c3457c86bb880bb4f30c6993733.jpeg","path":"90112c3457c86bb880bb4f30c6993733.jpeg","width":800,"height":800,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":38.95,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"38.95","retail_price":"0","available":true,"url":"\/products\/1pc-fruit-peeler-vegetable-peeler-creative-peeler-multifunctional-peeler-potato-peeler-orange-peeler-with-ring-handle-kitchen-apple-peeler-melon-planer-reusable-pear-peeler-carrots-peelers-kitchen-tools-kitchen-stuff-kitchen-gadgets?variant=1f3a5566-590c-4424-bd38-21b70e76486a","available_quantity":999999999,"options":[{"name":"Color","value":"pink"}],"off_ratio":0,"flashsale_info":[],"sales":0};
const saveType = "percentage";
const productLabelDiscountOn = true;
return `
-
${saveType == 'percentage'
? `-${variantData.off_ratio}% `
: `- `
}
`;
}()}
Color:
pink
${function(){
const optName = "Color";
const optionValue = data.originData.selectData ? data.originData.selectData[optName].value : data.originData.value;
const optionValueText = optionValue ? (optionValue) : '';
return `${optionValueText} `;
}()}
${function(){
const tipText = "Please select a {{ name }}".replace(/\{\{\s+name\s+\}\}/g, data);
return `${tipText}
`
}()}
${function() {
const minInventory = parseInt('10');
const maxInventory = parseInt('100');
const randomInventory = Math.round(Math.random() * (maxInventory - minInventory)) + minInventory;
const customText = "\ud83d\udca5Hurry\uff01Only {stock} item(s) left in stock!".replace(/\{stock\}/g, '' + randomInventory + ' ');
const barWidth = (randomInventory / maxInventory) * 100 + '%';
return `
`;
}()}
visitors currently looking at this product!❤
Add to cart
$38.95
${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 = {"id":"1f3a5566-590c-4424-bd38-21b70e76486a","product_id":"3709b406-e974-428f-9871-5c1e889f0433","title":"pink","weight_unit":"kg","inventory_quantity":1000,"sku":"pink-188939496","barcode":"","position":1,"option1":"pink","option2":"","option3":"","note":"","image":{"src":"\/\/img.staticdj.com\/90112c3457c86bb880bb4f30c6993733.jpeg","path":"90112c3457c86bb880bb4f30c6993733.jpeg","width":800,"height":800,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":38.95,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"38.95","retail_price":"0","available":true,"url":"\/products\/1pc-fruit-peeler-vegetable-peeler-creative-peeler-multifunctional-peeler-potato-peeler-orange-peeler-with-ring-handle-kitchen-apple-peeler-melon-planer-reusable-pear-peeler-carrots-peelers-kitchen-tools-kitchen-stuff-kitchen-gadgets?variant=1f3a5566-590c-4424-bd38-21b70e76486a","available_quantity":999999999,"options":[{"name":"Color","value":"pink"}],"off_ratio":0,"flashsale_info":[],"sales":0};
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 ? `
` : ' ';
}
}()}
Buy now
Product was out of stock.
Product is unavailable.
/** @private {string} */
class SpzCustomAnchorScroll extends SPZ.BaseElement {
static deferredMount() {
return false;
}
constructor(element) {
super(element);
/** @private {Element} */
this.scrollableContainer_ = null;
}
isLayoutSupported(layout) {
return layout == SPZCore.Layout.LOGIC;
}
buildCallback() {
this.viewport_ = this.getViewport();
this.initActions_();
}
setTarget(containerId, targetId) {
this.containerId = '#' + containerId;
this.targetId = '#' + targetId;
}
scrollToTarget() {
const container = document.querySelector(this.containerId);
const target = container.querySelector(this.targetId);
const {scrollTop} = container;
const eleOffsetTop = this.getOffsetTop_(target, container);
this.viewport_
.interpolateScrollIntoView_(
container,
scrollTop,
scrollTop + eleOffsetTop
);
}
initActions_() {
this.registerAction(
'scrollToTarget',
(invocation) => this.scrollToTarget(invocation?.caller)
);
this.registerAction(
'setTarget',
(invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId)
);
}
/**
* @param {Element} element
* @param {Element} container
* @return {number}
* @private
*/
getOffsetTop_(element, container) {
if (!element./*OK*/ getClientRects().length) {
return 0;
}
const rect = element./*OK*/ getBoundingClientRect();
if (rect.width || rect.height) {
return rect.top - container./*OK*/ getBoundingClientRect().top;
}
return rect.top;
}
}
SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll);
const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings";
class SpzCustomStrengthenTrust extends SPZ.BaseElement {
constructor(element) {
super(element);
this.renderElement_ = null;
}
isLayoutSupported(layout) {
return layout == SPZCore.Layout.CONTAINER;
}
buildCallback() {
this.xhr_ = SPZServices.xhrFor(this.win);
const renderId = this.element.getAttribute('render-id');
SPZCore.Dom.waitForChild(
document.body,
() => !!document.getElementById(renderId),
() => {
this.renderElement_ = SPZCore.Dom.scopedQuerySelector(
document.body,
`#${renderId}`
);
if (this.renderElement_) {
this.render_();
}
this.registerAction('track', (invocation) => {
this.track_(invocation.args);
});
}
);
}
render_() {
this.fetchData_().then((data) => {
if (!data) {
return;
}
SPZ.whenApiDefined(this.renderElement_).then((apis) => {
apis?.render(data);
document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{
if(event.target.nodeName == 'A'){
this.track_({type: 'trust_content_click'});
}
})
});
});
}
track_(data = {}) {
const track = window.sa && window.sa.track;
if (!track) {
return;
}
track('trust_enhancement_event', data);
}
parseJSON_(string) {
let result = {};
try {
result = JSON.parse(string);
} catch (e) {}
return result;
}
fetchData_() {
return this.xhr_
.fetchJson(STRENGTHEN_TRUST_URL)
.then((responseData) => {
if (!responseData || !responseData.data) {
return null;
}
const data = responseData.data;
const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => {
return result.concat(Object.assign(moduleSetting, {
logos: (moduleSetting.logos || []).map((item) => {
return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item;
})
}));
}, []);
return Object.assign(data, {
module_settings: moduleSettings,
isEditor: window.self !== window.top,
});
});
}
}
SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);
${data.module_title}
To display this card to customers, you need to go to "Booster & Store Conversion" to turn on the trust enhancement feature.
${item.content.replaceAll("{store_name}","Gamermodel")}
To display this card to customers, you need to go to "Booster & Store Conversion" to turn on the trust enhancement feature.