Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear
Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear

Long Sleeves Loose Buttoned Contrast Color Plaid Lapel Outerwear

Price
$39.99
$39.99
Save  $0.00
Color — DEEP BLUE
Please select a color
Size
Please select a size
Sku CY-!151557
Material 35%Cotton , 50%-70% Polyester
Style Loose , Long Sleeves
Feature Buttoned , Contrast Color , Plaid
Neckline Lapel
Occasion Casual , Leisure Fashion
Seasons Spring , Autumn
Type Outerwear
Color DEEP BLUE
Size S,M,L,XL



Please consult the size chart we provide for this item's measurements to help you decide which size to buy.Please note: There may be 1-3cm differ due to manual measurement.

CMINCH

Bust Shoulder Sleeve Top Length
S 106 51 50 52
M 110 52 51 53
L 114 53 52 54
XL 118 54 53 55

Customer Reviews
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.