Free shipping on orders over $79

Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
1 / 5
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
Men's solid color lace-up cotton and linen casual shorts 5 colors
1 / 5

Men's solid color lace-up cotton and linen casual shorts 5 colors

$27.99
$50.00 44% Off
White
Size

Season: Spring/Summer

Occasion:Everyday

Style: Casual

Material: Organic cotton

Sleeve Length: Shorts

Size Waist Pants length Hip
cm inch cm inch cm inch
M 106 41.7 52 20.47 118 46.46
L 111 43.7 53 20.87 123 48.43
XL 116 45.7 54 21.26 128 50.39
2XL 121 47.6 55 21.65 133 52.36
3XL 126 49.6 56 22.05 138 54.33
4XL 131 51.6 57 22.44 143 56.30
5XL 136 53.5 58 22.83 148 58.27
6XL 141 55.5 59 23.23 153 60.24

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.