Joyside 10' X 14' Double-Tier Hardtop Gazebo
Joyside 10' X 14' Double-Tier Hardtop Gazebo
Joyside 10' X 14' Double-Tier Hardtop Gazebo
Joyside 10' X 14' Double-Tier Hardtop Gazebo
Joyside 10' X 14' Double-Tier Hardtop Gazebo
Joyside 10' X 14' Double-Tier Hardtop Gazebo

Joyside 10' X 14' Double-Tier Hardtop Gazebo

$1,699.99
$1,699.99
-$0.00
Quantity
Free Shipping
Ships Within 6-8 Business Days.
Sustainably Made
Secure Payments
SKU: A48-NL
Brand Joyside
Material Aluminum
Style Modern
Product Dimensions 120"L x 168"W x 120"H
Water Resistance Level Waterproof
Shape Rectangular
Ultraviolet Light Protection 50+ UPF
Assembly Required Yes

About this item

  • 【Iron material double-roof】Our 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.
  • 【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.
  • 【Privacy curtains & mosquito netting】This gazebo is equipped with zippered curtains and mosquito netting, which keeps good ventilation and personal privacy and protects you from bites and sunlight, you can spend happy time in the gazebo with your families and friends.
  • 【Multiple functions】The gazebo is spacious enough to accommodate multiple people, perfect for parties, weddings, dinners and various outdoor activities in your backyard, lawn, garden, outdoor deck, patio or pool area.
  • 【Sturdy and stable】The whole aluminum frame structure is coated with special painting to ensure its lasting durability and free of moisture and mildew, every post are constructed with triangle metal braces on each joint to enhance the max weight capacity.
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.