Mikolo LAT Pull Down Machine Set, Multifunction Cable Workout Equipment with Flip-up Footplate and Plates Storage Posts ? ? ? ? ?
Mikolo LAT Pull Down Machine Set, Multifunction Cable Workout Equipment with Flip-up Footplate and Plates Storage Posts ? ? ? ? ?
${function() {
const variantData = data.variant || {"id":"34199c3c-615f-4794-8f18-a745637a73a9","product_id":"d17be040-aed4-4b07-abba-f36682c2faa4","title":"","weight_unit":"lb","inventory_quantity":0,"sku":"E-G1-01","barcode":"","position":1,"option1":"","option2":"","option3":"","note":"","image":null,"wholesale_price":[{"price":189.99,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"189.99","retail_price":"0","available":true,"url":"\/products\/mikolo-lat-pull-down-machine-set-multifunction-cable-workout-equipment-with-flip-up-footplate-and-plates-storage-posts?variant=34199c3c-615f-4794-8f18-a745637a73a9","available_quantity":999999999,"options":[],"off_ratio":"0","flashsale_info":{"variant_id":"34199c3c-615f-4794-8f18-a745637a73a9","product_id":"","quantity":0,"discount_id":"","limit_time":0,"limit_buy":0,"user_limit_buy":0,"discount_sales":0,"discount_sales_rate":"","discount_stock":0,"ends_at":0,"starts_at":0,"allow_oversold":"","allocation_method":"","price":"189.99","compare_at_price":"","discount_price":"189.99","customary_saved_price":"","customary_off_ratio":"","discount_saved_price":"","discount_off_ratio":"0","use_before_price":false,"before_price":"","title":"","properties":"","color_setting_promotional_copy":"","discount_quantity":0,"is_need_split":false},"sales":0};
const saveType = null;
const productSaveLabel = null;
return `
-
${ variantData.off_ratio }%
`; }()}
${function(){
return `
${data.starNum}/${data.starTotal}
`;
}()}
${function(){
return `
${data.showStarText === 'true' ? `
${data.starNum}/${data.starTotal}
` : ''}
`;
}()}
const TAG = 'spz-custom-revue-star';
class SPZCustomRevueStar extends SPZ.BaseElement {
constructor(element) {
super(element);
}
static deferredMount() {
return false;
}
buildCallback = () => {
this.action_ = SPZServices.actionServiceForDoc(this.element);
this.templates_ = SPZServices.templatesForDoc(this.element);
this.xhr_ = SPZServices.xhrFor(this.win);
this.starNum = this.element.getAttribute('starNum');
this.starTotal = this.element.getAttribute('starTotal');
this.showStarText = this.element.getAttribute('showStarText');
this.starColor = this.element.getAttribute('color');
this.interact = this.element.getAttribute('interact');
this.starSize = this.element.getAttribute('starSize') || 14;
}
mountCallback = () => {
this.doRender_({
starTotal: this.starTotal,
totalArray: Array.from({ length: Number(this.starTotal) }, (v, k) => k + 1),
starNum: this.starNum,
showStarText: this.showStarText,
starColor: this.starColor,
starSize: this.starSize
}).then(() => {
if (this.interact) {
this.addEventListeners_();
}
});
}
addEventListeners_ = () => {
const stars = document.querySelectorAll('.revue-star__star');
stars.forEach(star => {
star.addEventListener('click', event => {
const starEl = star.closest('.revue-star__star');
const starIndex = Number(starEl.dataset.index);
let isHalf = event.offsetX < star.offsetWidth / 2;
// rtl
if (document.documentElement.getAttribute('dir') === 'rtl') {
isHalf = event.offsetX > star.offsetWidth / 2;
}
const starValue = isHalf ? starIndex - 0.5 : starIndex;
this.starClickHandler_({ value: starValue });
});
});
}
renderStar = () => {
const isRtl = document.documentElement.getAttribute('dir') === 'rtl';
const stars = this.element.querySelectorAll('.revue-star__star');
stars.forEach((star, i) => {
const starIndex = i + 1;
const starEl = star.querySelector('svg:nth-child(2)');
const isHalf = this.starNum % 1 > 0 && Math.ceil(this.starNum) === starIndex;
const isSolid = starIndex <= Math.ceil(this.starNum);
starEl.style.display = isSolid ? 'block' : 'none';
if (isHalf) {
if (isRtl) {
// RTL布局下,如果是半星,显示星星的右半边
starEl.style.clipPath = `polygon(50% 0, 100% 0, 100% 100%, 50% 100%)`;
} else {
// LTR布局下,如果是半星,显示星星的左半边
starEl.style.clipPath = `polygon(0 0, 50% 0, 50% 100%, 0 100%)`;
}
} else {
starEl.style.clipPath = `polygon(0 0, 100% 0, 100% 100%, 0 100%)`
}
});
const showCountEle = this.element.querySelector('#revue-star-show-count');
showCountEle && SPZ.whenApiDefined(showCountEle).then((api) => {
api.render({ starNum: this.starNum, starTotal: this.starTotal });
});
}
doRender_ = (data) => {
return this.templates_
.findAndRenderTemplate(this.element, { starSize: this.starSize, ...data }, null)
.then((el) => {
const children = this.element.querySelector('*:not(template)');
children && SPZCore.Dom.removeElement(children);
this.element.appendChild(el);
})
.then(() => {
this.starNum = data.starNum;
this.renderStar();
});
}
starClickHandler_ = (event) => {
this.starNum = event.value;
this.renderStar();
this.triggerEvent_('change', { value: event.value });
}
triggerEvent_(name, data) {
const event = SPZUtils.Event.create(this.win, `${ TAG }.${ name }`, data || {});
this.action_.trigger(this.element, name, event);
}
isLayoutSupported(layout) {
return layout == SPZCore.Layout.CONTAINER;
}
}
SPZ.defineElement(TAG, SPZCustomRevueStar)
()
try {
const productId = window.SHOPLAZZA.meta.page.resource_id;
const productType = `default`;
const getProductReviews = (star_least) =>
fetch('/api/comment/count-star-multi',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
product_id: [productId],
star_least: star_least || 1,
}),
}).then(res => res.json());
try {
const section = document.querySelector('#revue-product-star');
if(productType === "gift_card" && section) {
section.style.display = 'none';
}
} catch(e) {
console.log(e);
window.addEventListener('load', () => {
try {
const section = document.querySelector('#revue-product-star');
if(productType=== "gift_card" && section) {
section.style.display = 'none';
}
} catch(e) {
console.log(e)
}
})
}
const getReviewsConfig = async () => {
let data = {};
const url = new URL(window.location.href);
const preview_theme_id = url.searchParams.get('preview_theme_id');
const commentConfig = await fetch('/api/comment-config', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
}
}).then(res => res.json());
data = commentConfig.data;
const themeConfig = await fetch(`/api/comment-config?theme_id=${preview_theme_id || ''}`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
}
}).then(res => res.json());
if (themeConfig?.data && themeConfig.data.star_color) {
data.star_color = themeConfig.data.star_color;
}
if (preview_theme_id) {
data.star_least = window.apps_global && apps_global.reviews && apps_global.reviews.preview_star_least;
} else if (themeConfig?.data && themeConfig.data.product_settings) {
data.star_least = themeConfig.data.product_settings.star_least;
}
return data;
};
if (productId && window.SHOPLAZZA.meta.page.template_type == 1) {
getReviewsConfig().then(async res => {
const config = res;
let review = await getProductReviews(config.star_least);
review = review.data[productId];
if (!config.open_status || (!review.comment_avg_star && !config.show_no_comment_star)) {
const section = document.querySelector('#revue-product-star');
if (section) section.remove();
return;
}
const render = async () => {
const section = document.querySelector('#revue-product-star');
const starComponent = document.querySelector('#revue-product-star-component');
const count = document.querySelector('#revue-product-star-count');
count.innerText = review.published_count;
const api = await SPZ.whenApiDefined(starComponent);
api.doRender_({
starNum: review.comment_avg_star,
starTotal: 5,
showStarText: false,
starColor: config.star_color,
totalArray: Array.from({ length: 5 }, (v, k) => k + 1)
});
section.style.opacity = 1;
}
render();
document.addEventListener('dj.editor.update', render);
});
}
} catch (e) {console.warn(e)};
${function() {
const minInventory = parseInt('7');
const maxInventory = parseInt('10');
const randomInventory = Math.round(Math.random() * (maxInventory - minInventory)) + minInventory;
const customText = "Only {stock} item(s) left in stock!".replace(/\{stock\}/g, '' + randomInventory + '');
const barWidth = (randomInventory / maxInventory) * 100 + '%';
return `
`;
}()}
Product was out of stock.
Product is unavailable.
Enjoy free shipping on every order, delivered to your doorstep no matter where you are in the world.
Shop with confidence with our hassle-free returns policy, ensuring you love what you buy.
Designed with the planet in mind, all our products are committed to sustainable practices.
Your payment information is always protected with our advanced, encrypted checkout security.
Mikolo Lat Pulldown Machine, just like the economical vehicle, provides rich functions with a simple structure. And We are also committed to "quality first, client paramountcy". Our cable station can bear 450lbs for both 1" and 2", you can do lat pull down, seated row, biceps curl, triceps push down and so on. Only cover 7.94 square feet, even we develop the ab crunch training on the Lat Pull-Down machine. Just start your training with this "economical vehicle".
SPECS
Product Model: G2
Color: Black and Red
Measurement: 47" L x 24" W x 81" H
Gross Weight: 77.82 lbs
Maximum Weight Load: 540lbs
Number Of Boxes: 1
Package Include: 1 x Lat Pulldown Machine, 1 x Lat Pulldwon Bar, 1 x Short Bar, Clips and other Hooks
?
- For just over $100, you can get a multifunctional fitness equipment featuring dual 1:1 cable ratio pulley systems. If you're a strength athlete focused on muscle growth, this is your perfect choice. Perform exercises like lat pulldown, face pull, and seated row ¨C all on one cable machine.
- With a small footprint of just 7.83 sq ft and weighing 75 lbs net, it handles up to 540 lbs weight. Built with heavy-duty 2"x2" 11-gauge steel tubing and a flip-up foot pedal for rock-solid stability during high-intensity training. The 800 lb tensile strength cables are built to last.
- The seat offers 3-position adjustments to find your ideal training height. And this lat pulldown machine is also compatible with 1" and 2" weight plates.
- Only 1 box come with lat pulldown bar, short bar, barbell clip, and other attachments. You can use it for back, shoulders, abs, and arms. You can also purchase additional cable attchment to expand your routine, like leg exercises.
- Mikolo is a professional fitness brand dedicated to designing and manufacturing the best home fitness equipment. We also offer a lifetime accessory replacement service to our customers. If you have any questions, please feel free to contact us, and we will be happy to assist you.
Vendor by :
Mikolo
Sku :
E-G1-01
Inventory :
999999999
${function(){
const variantData = data.variant || {"id":"34199c3c-615f-4794-8f18-a745637a73a9","product_id":"d17be040-aed4-4b07-abba-f36682c2faa4","title":"","weight_unit":"lb","inventory_quantity":0,"sku":"E-G1-01","barcode":"","position":1,"option1":"","option2":"","option3":"","note":"","image":null,"wholesale_price":[{"price":189.99,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"189.99","retail_price":"0","available":true,"url":"\/products\/mikolo-lat-pull-down-machine-set-multifunction-cable-workout-equipment-with-flip-up-footplate-and-plates-storage-posts?variant=34199c3c-615f-4794-8f18-a745637a73a9","available_quantity":999999999,"options":[],"off_ratio":"0","flashsale_info":{"variant_id":"34199c3c-615f-4794-8f18-a745637a73a9","product_id":"","quantity":0,"discount_id":"","limit_time":0,"limit_buy":0,"user_limit_buy":0,"discount_sales":0,"discount_sales_rate":"","discount_stock":0,"ends_at":0,"starts_at":0,"allow_oversold":"","allocation_method":"","price":"189.99","compare_at_price":"","discount_price":"189.99","customary_saved_price":"","customary_off_ratio":"","discount_saved_price":"","discount_off_ratio":"0","use_before_price":false,"before_price":"","title":"","properties":"","color_setting_promotional_copy":"","discount_quantity":0,"is_need_split":false},"sales":0};
return `
Vendor by :
${data.product && data.product.vendor}
Weight :
${variantData && variantData.weight}${variantData && variantData.weight_unit}
Barcode :
${variantData && variantData.barcode}
Sku :
${variantData && variantData.sku}
Inventory :
${variantData && variantData.available_quantity}
` }()}