Joyside 13' x 11' Outdoor Double Roof Hardtop Wood Gazebo
Joyside 13' x 11' Outdoor Double Roof Hardtop Wood Gazebo
Joyside 13' x 11' Outdoor Double Roof Hardtop Wood Gazebo
Joyside 13' x 11' Outdoor Double Roof Hardtop Wood Gazebo
Joyside 13' x 11' Outdoor Double Roof Hardtop Wood Gazebo
Joyside 13' x 11' Outdoor Double Roof Hardtop Wood Gazebo
Joyside 13' x 11' Outdoor Double Roof Hardtop Wood Gazebo

Joyside 13' x 11' Outdoor Double Roof Hardtop Wood Gazebo

$2,099.99
$2,099.99
-$0.00
Quantity
Free Shipping
Ships Within 6-8 Business Days.
Sustainably Made
Secure Payments
SKU: A31
Brand Joyside
Material Wood
Style Modern
Product Dimensions 132"L x 156"W x 120"H
Item Weight 100 Pounds
Frame Material Metal, Wood
Water Resistance Level Waterproof
Shape Rectangular
Ultraviolet Light Protection UPF 50

About this item

  • CEDAR WOOD FRAME: The wood gazebo is constructed with cedar wood frame which can give you a natural vibe and timeless beauty to enhance your outdoor space. The cedar wood frame not only adds durability to the structure but also exudes a distinct aroma that further enriches your outdoor experience
  • GALVANIZED DOUBLE ROOF: our hardtop gazebo is designed with double-roof to help improve air circulation while greatly enhancing stability in wind resistance, providing a shelter for your outdoor activities whether sunny or rainy, enjoy your outdoor leisure time every time.
  • PRIVACY MOSQUITO NETTING: this wood gazebo is equipped with zippered mosquito netting, which keeps good ventilation and protects you from bites and sunlight, you can spend happy time in the gazebo with your families and friends.
  • BUILT-IN HOOK DESIGN: the ceiling hook built into the gazebo can meet the needs of hanging lamps and other decorations, adding your own unique style to the gazebo, hanging fans through it can also give you a hint of cool summer.
  • STURDY & STABLE: the whole frame structure is built with solid spruce wood and coated with special painting to ensure its lasting durability and free of moisture and mildew, the four posts are constructed with triangle metal braces on each joint to enhance the max weight capacity (100 lbs per square meter), driving the complementary stakes into drilled holes can add extra stability.
  • AFTER-SALE GUARANTEE: if you have any after-sales questions, please contact our professional service team first, we will reply you asap and provide a satisfactory solution.

Customer Reviews

Here are what our customers say.

Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.