Slsy 3 in 1 Folding Camping Cot Bed with Mattress & Pillow, Adjustable 6-Position Folding Lounge Chair, Folding Cot Bed
Slsy 3 in 1 Folding Camping Cot Bed with Mattress & Pillow, Adjustable 6-Position Folding Lounge Chair, Folding Cot Bed
${function() {
const variantData = data.variant || {"id":"fc01adeb-a5e7-43b1-88ca-47c39d26a395","product_id":"a01063f1-195e-4a8f-b7ad-4a871eb0fa25","title":"","weight_unit":"lb","inventory_quantity":0,"sku":"1CK16SZC-N31","barcode":"","position":1,"option1":"","option2":"","option3":"","note":"","image":null,"wholesale_price":[{"price":149,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"149","retail_price":"0","available":true,"url":"\/products\/slsy-3-in-1-folding-camping-cot-bed-with-mattress-pillow-adjustable-6-position-folding-lounge-chair-folding-cot-bed?variant=fc01adeb-a5e7-43b1-88ca-47c39d26a395","available_quantity":999999999,"options":[],"off_ratio":"0","flashsale_info":{"variant_id":"fc01adeb-a5e7-43b1-88ca-47c39d26a395","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":"149","compare_at_price":"","discount_price":"149","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)) 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.
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.
Slsy Convertible Sleeper Chair Bed with Adjustable 6 Position Backrest. Foldable design with 3 in 1 Versatile Performance. This multifunctional folding armchair can be easily converted into a lounge sofa chair or bed to meet your different needs. Hidden legs and armrests add support to the bed, making it simple yet elegant. Equipped with a mattress, you can sleep more comfortably in this portable folding lounge chair cot. Compact, incredibly fast and easy to set up. Expanded size: 71"X24"X13", folding size is 31.5"x5.5", chair size is 23.6"x33.5"x34.6" . The armrests will provide extra support if the foldable chair is unfolded. The metal frame of the Sleeper Chair Bed is scientifically designed to be durable enough to hold up to 440 lbs. You can use this sleeping cot both inside and outside.Such as office chair, guest beds, office naps, travel rest or sunshine beach use. Excellent Choice for Relaxing on Your Next Road Trip, at Home, the Pool, Lake, RV, Campsite, Patio, Deck, Tent or Cabin.
-
3-IN-1 FOLDING CHAIR BED: Slsy Convertible Sleeper Chair Bed with Adjustable 6 Position Backrest. Foldable design with 3 in 1 Versatile Performance. This multifunctional folding armchair can be easily converted into a lounge sofa chair or bed to meet your different needs. Hidden legs and armrests add support to the bed, making it simple yet elegant.
-
REMOVABLE COMFORTABLE MATTRESS: Equipped with a mattress, you can sleep more comfortably in this portable folding lounge chair cot, don't hesitate anymore, hurry up and place your order.
-
Portable cot: Compact, incredibly fast and easy to set up. Expanded size: 71"X24"X13", folding size is 31.5"x5.5", chair size is 23.6"x33.5"x34.6" .
-
DURABLE AND STRONG FRAME: The armrests will provide extra support if the foldable chair is unfolded. The metal frame of the Sleeper Chair Bed is scientifically designed to be durable enough to hold up to 440 lbs.
-
MULTI PURPOSE: You can use this sleeping cot both inside and outside.Such as office chair, guest beds, office naps, travel rest or sunshine beach use. Excellent Choice for Relaxing on Your Next Road Trip, at Home, the Pool, Lake, RV, Campsite, Patio, Deck, Tent or Cabin.
Vendor by :
Slsy
Sku :
1CK16SZC-N31
Inventory :
999999999
${function(){
const variantData = data.variant || {"id":"fc01adeb-a5e7-43b1-88ca-47c39d26a395","product_id":"a01063f1-195e-4a8f-b7ad-4a871eb0fa25","title":"","weight_unit":"lb","inventory_quantity":0,"sku":"1CK16SZC-N31","barcode":"","position":1,"option1":"","option2":"","option3":"","note":"","image":null,"wholesale_price":[{"price":149,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"149","retail_price":"0","available":true,"url":"\/products\/slsy-3-in-1-folding-camping-cot-bed-with-mattress-pillow-adjustable-6-position-folding-lounge-chair-folding-cot-bed?variant=fc01adeb-a5e7-43b1-88ca-47c39d26a395","available_quantity":999999999,"options":[],"off_ratio":"0","flashsale_info":{"variant_id":"fc01adeb-a5e7-43b1-88ca-47c39d26a395","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":"149","compare_at_price":"","discount_price":"149","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}
` }()}