8 Compartment Hens Nesting Box, Wood Chicken Nesting Boxes Chicken Coop Accessories with 2 Roll Out Egg Collection Drawers, 2 Perches and 4 Vented Holes, Big Duty Laying Nest Box for Duck and Poultry
8 Compartment Hens Nesting Box, Wood Chicken Nesting Boxes Chicken Coop Accessories with 2 Roll Out Egg Collection Drawers, 2 Perches and 4 Vented Holes, Big Duty Laying Nest Box for Duck and Poultry
${function() {
const variantData = data.variant || {"id":"a9a74196-77f1-4b43-a09b-29a487a17177","product_id":"43724fdb-ce65-4b40-bf1a-1cfc4bc024ef","title":"","weight_unit":"lb","inventory_quantity":0,"sku":"W1850120022","barcode":"","position":1,"option1":"","option2":"","option3":"","note":"","image":null,"wholesale_price":[{"price":419.99,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"419.99","retail_price":"0","available":true,"url":"\/products\/8-compartment-hens-nesting-box-wood-chicken-nesting-boxes-chicken-coop-accessories-with-2-roll-out-egg-collection-drawers-2-perches-and-4-vented-holes-big-duty-laying-nest-box-for-duck-and-poultry?variant=a9a74196-77f1-4b43-a09b-29a487a17177","available_quantity":999999999,"options":[],"off_ratio":"0","flashsale_info":{"variant_id":"a9a74196-77f1-4b43-a09b-29a487a17177","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":"419.99","compare_at_price":"","discount_price":"419.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.
Product Description
Wood Chicken Nesting Boxes good for the chicken for collecting eggs.
This 8 Compartment Hens Nesting Box very comfortable.
As a Big Duty Laying Nest Box for Duck and Poultry.
Product Dimensions
Assembled Length (in.):47.00
Assembled Width (in.):26.40
Assembled Height (in.):35.40
Weight (lbs.):51.81
- Perfect Comfortable Chicken Nesting Box: Overall Dimensions is 47" L x 26.4" W x 35.4" H. The 8 spacious compartments (11 inches in a compartment) allow 8 large hens to live and lay eggs comfortably. It provides hens with a clean, comfortable, secure and sheltered space to lay eggs, so they feel safe and secure, thus improving egg production rate.
- Auto Egg Collection: Our chicken nesting box has a roll-away design that makes it easy to collect eggs without reaching inside. Eggs roll out conveniently into an underlying drawer through holes on the floor, simplifying egg collection. We recommend placing some padding on the egg collection drawer to further protect the eggs from collisions.
- Outstanding Details: The slanted roof design prevents hens from perching on top of the nesting box, and prevents water accumulation on rainy days. Back side ventilation holes for fresh air flow to increase the ventilation and breathing capacity of the hens, and keeps the nest clean cool. Our perching bar design makes it easy for your chickens to enter and exit the laying boxes. The perch also folds up, preventing night roosting.
- Natural Material: The chicken nesting box is made of high-quality natural solid pine wood and is sturdy enough and easy to clean. As opposed to plastic and cold metal nesting boxes, hens and poultry are more receptive to wood nesting boxes, which are closer to nature, and there is no rust and brittle to worry about.
- Easy to Clean: The nesting boxes need regularly clean to maintain cleanliness and hygiene. Equipped with a removable bottom drawer to allow for quick and convenient cleaning. Just remove drawer or nesting pads and use water to clean it, promoting a clean environment for the chickens. The nesting boxes for chicken coop come with an instruction, and the installation steps are easy.
Vendor by :
Sumdeal
Sku :
W1850120022
Inventory :
999999999
${function(){
const variantData = data.variant || {"id":"a9a74196-77f1-4b43-a09b-29a487a17177","product_id":"43724fdb-ce65-4b40-bf1a-1cfc4bc024ef","title":"","weight_unit":"lb","inventory_quantity":0,"sku":"W1850120022","barcode":"","position":1,"option1":"","option2":"","option3":"","note":"","image":null,"wholesale_price":[{"price":419.99,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"419.99","retail_price":"0","available":true,"url":"\/products\/8-compartment-hens-nesting-box-wood-chicken-nesting-boxes-chicken-coop-accessories-with-2-roll-out-egg-collection-drawers-2-perches-and-4-vented-holes-big-duty-laying-nest-box-for-duck-and-poultry?variant=a9a74196-77f1-4b43-a09b-29a487a17177","available_quantity":999999999,"options":[],"off_ratio":"0","flashsale_info":{"variant_id":"a9a74196-77f1-4b43-a09b-29a487a17177","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":"419.99","compare_at_price":"","discount_price":"419.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}
` }()}