Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
1 / 6
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles
63% OFF

Oknass Long Sleeves Front Split Off the Shoulder Mermaid Prom Dress With Ruffles

PD0907

$99.00 $269.00
Color
Size
Qty
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?