50% OFF✨First Mom Now Grandma-Night Light Mirror

people are viewing this right now
$39.99
$49.99
-$10.00
  • Deliver to: |
Size:  7.1*8.3 in (18*21 cm)
Quantity

Description

This Night Light Mirror is the perfect keepsake to honor your friends and loved ones or commemorate your life's biggest moments. It is not only a decoration item that will make your home stand out. but also a lasting remembrance that you will cherish forever. It is an amazing gift on any occasions.

Message: "First mom now grandma".

Product details:

  • Material: Made of environmentally friendly wooden. It is nontoxic odor-free and exquisite craftsmanship.
  • Size:Wooden frame box: 7.1 x 8.3/ 7.7 x 9.7/8.2 x 12.2 inches (~ 18 x 21/19.5 x 24.5/21 x 31 cm). Acrylic plaque thickness: 0.12 inches (~ 0.3 cm).
  • Features:
  • When the light is turned off, it is a normal mirror. When the light is turned on, it can be used as a decorative piece, you can customize your own photo as an ornament, or as a gift for friends, relatives, loved ones. This is a unique, practical and beautiful gift!

Customization:

  • Please fill in the required fields and double-check your spelling before purchasing.
  • To ensure the best looking please use standard English only and exclude special characters.

Please note: Preview images may slightly differ from the actual item in terms of color due to our lighting during the photoshoot of our products or your monitor's display.

Shipping & Returns

  • Orders can be cancelled or modified within 2 hours after being placed.
  • International orders: It may take additional days if orders have to go through customs. We have no influence on the customs process and apologize for any inconvenience due to delivery delays resulting from this.
  • For more detailed information and instructions, please visit our Replacement & Refund Policy.
  • Learn more about Shipping Policy here.

Personalization

  • Please complete fields required to customize options (Name/Characteristics) and recheck carefully all the customized options.
  • Text: Standard English excluding special characters, emojis to ensure the best looking.
  • Characteristics: Pick one-by-one options that match your description.
  • The last step, click “ADD TO CART” and wait for us to create your wonderful creation ❤️.
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.