Square Sunglass MJ101SK572

$179.00
Frame Shape : Square
Frame Color : Grey
Frame Material : Mixed
(function(){ const TAG = 'spz-custom-lamb-add-btn'; class SpzCustomLambAddBtn extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.action_ = null; this.selected_variant = '{"id":"87fb807f-4555-4bdb-8560-05eceeb4e678","product_id":"36ca2b5a-5f13-4d83-8687-a5e3a79f4480","title":"Square-Grey-Mixed","weight_unit":"kg","inventory_quantity":3,"sku":"MJ101SK572GYC2","barcode":"","position":2,"option1":"Square","option2":"Grey","option3":"Mixed","note":"","image":{"src":"\/\/img.staticdj.com\/ed1cce1fcfce60ad187bd8502738d0ba.jpg","path":"ed1cce1fcfce60ad187bd8502738d0ba.jpg","width":3500,"height":3500,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":179,"min_quantity":1}],"weight":"0","compare_at_price":"179","price":"179","retail_price":"179","available":true,"url":"\/products\/square-sunglass-mj101sk572?variant=87fb807f-4555-4bdb-8560-05eceeb4e678","available_quantity":3,"options":[{"name":"Frame Shape","value":"Square"},{"name":"Frame Color","value":"Grey"},{"name":"Frame Material","value":"Mixed"}],"off_ratio":0,"flashsale_info":[],"sales":0}'; this.lens_process_id = ""; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); this.action_ = SPZServices.actionServiceForDoc(this.element); this.templates_ = SPZServices.templatesForDoc(this.element); this.getLambLensSteps_(true); this.setupAction_(); } mountCallback() { document.addEventListener('dj.variantChange', (event) => { const variant = event.detail.selected; if (variant.product_id == '36ca2b5a-5f13-4d83-8687-a5e3a79f4480') { this.selected_variant = JSON.stringify(variant); } }); } fetchLambLensSteps() { const lens_process_id = location.search.replace('?', '').split('&').find(v => v.includes('lens_process_id')); const template_id = location.search.replace('?', '').split('&').find(v => v.includes('template_id')); const stepsUrl = '/api/fireant/product/36ca2b5a-5f13-4d83-8687-a5e3a79f4480/steps' + ((lens_process_id ? `?${lens_process_id}` : '') || (template_id ? `?${template_id}` : '')); return fetch(stepsUrl).then((res)=>{ return res.json(); }).then((data)=>{ return data; }) } showProductBtn() { var addToCart = document.getElementById('add_to_cart_normal'); var productQuantityBtn = document.getElementById('product_info_quantity_normal'); addToCart && addToCart.classList.remove('hidden'); productQuantityBtn && productQuantityBtn.classList.remove('hidden'); } getLambLensSteps_(isInit) { try{ this.fetchLambLensSteps().then((data)=>{ if(data.errors) { if(isInit){ this.renderBtn(false); this.showProductBtn(); } }else{ if(isInit){ this.lens_process_id = data?.lens_process_id; let frameOnlyArr = data?.prescription_types?.options.filter((option)=>{ return option.prescription_type === 'Frame Only' }); let frameOnlyObj = frameOnlyArr.length > 0 ? frameOnlyArr[0] : {}; let available = true; if(available && (frameOnlyObj?.frame_only_display_at == 'product_detail' || frameOnlyObj?.frame_only_display_at == 'all')){ this.renderBtn({ ...frameOnlyObj, process_type: data.process_type }); }else{ this.renderBtn({ process_type: data.process_type }); } } } }); }catch(e){ this.renderBtn(false); this.showProductBtn(); } } renderBtn = (isRenderProcessBtn) => { return this.templates_ .findAndRenderTemplate(this.element, isRenderProcessBtn) .then((el) => { const children = this.element.querySelector('*:not(template)'); children && SPZCore.Dom.removeElement(children); this.element.appendChild(el); }); } handleClickFrameOnlyBtn_ = async () => { try { const reqBody = { product_id: "36ca2b5a-5f13-4d83-8687-a5e3a79f4480", variant_id: JSON.parse(this.selected_variant)?.id, quantity: 1, properties: { lens_processing_id: this.lens_process_id, prescription_type: "Frame Only" } } const data = await this.xhr_.fetchJson('/api/fireant/v2/customize_cart', { method: "post", body: reqBody }); if(data.state === 'success') { this.atc_loading_ = false; this.element.removeAttribute('atc-loading'); this.triggerEvent_("dj.addToCart", data); window.location.href = "/cart"; } else { this.atc_loading_ = false; this.element.removeAttribute('atc-loading'); } } catch (e) { this.atc_loading_ = false; this.element.removeAttribute('atc-loading'); const toast = SPZCore.Dom.scopedQuerySelector(document, `#error-toast`); toast && SPZ.whenApiDefined(toast).then((api) => { e.then((result)=>{ api.showToast(result?.errors[0] || 'Unknown error'); }) }); } } trackAddToCart = () => { const params = { business_type: "product_plugin", function_name: "prescription_lens", plugin_name: "prescription_lens", module: "apps", tab_name: "process_btn", event_type: "click", event_developer: "jozy", event_info: JSON.stringify({ action_type: "frame_only_add_to_cart", product_id: '"36ca2b5a-5f13-4d83-8687-a5e3a79f4480"', process_id: this.lens_process_id, process_type: "glasses", element_type: "button", element_name: "frame_only_btn" }) } window.spzutm && window.spzutm.registerParams('add_to_cart', params ); } setupAction_ = () => { this.registerAction('handleClickBtn', (invocation) => { this.saveAllFormProperties_(); const glassesInfo = { product:{ title: "Square Sunglass MJ101SK572", id: "36ca2b5a-5f13-4d83-8687-a5e3a79f4480", image: {"src":"\/\/img.staticdj.com\/2a58c6a48ffea1032a6f811d0fb407f1.jpg","path":"2a58c6a48ffea1032a6f811d0fb407f1.jpg","width":3500,"height":3500,"alt":"","aspect_ratio":1}, selected_variant: JSON.parse(this.selected_variant) }, atcType: 'add_lens' }; const tempElement = document.getElementById('process-request-script'); tempElement && SPZ.whenApiDefined(tempElement).then(async (api) => { await api.requestLensProcess(glassesInfo, invocation.args.process_type); }); setTimeout(() => { const proceeBtn = document.getElementById('lens_add_to_cart'); proceeBtn && proceeBtn.classList.remove('pointer-events-none'); }, 3000); }); this.registerAction('handleClickFrameOnlyBtn', (invocation) => { this.trackAddToCart(); this.atc_loading_ = true; this.element.setAttribute('atc-loading',""); this.handleClickFrameOnlyBtn_(); }); } saveAllFormProperties_(){ const formEntries = this.getFormData_(); const properties = this.getFormAllProperties_(formEntries); // 获取的form所有properties存全局 window.app_lamb_form_properties = properties; } getFormData_() { const form = this.element.closest("form"); const formData = new FormData(form); const formEntries = Object.fromEntries(formData.entries()); return formEntries; } getFormAllProperties_(obj){ const result = {}; Object.entries(obj).forEach(([key, value]) => { if (key.startsWith("properties")) { result[key.substring(11, key.length - 1)] = value; } }); return result; } triggerEvent_(name, params) { const event = SPZUtils.Event.create( this.win, name, params, {bubbles: true} ); this.element.dispatchEvent(event); } isLayoutSupported = (layout) => { return layout == SPZCore.Layout.CONTAINER; } } SPZ.defineElement(TAG, SpzCustomLambAddBtn) })()
Rx Verification

Your prescription is a set of specifications that allows you to buy prescription glasses that will correct your visual needs.

It will state the power of lens you need. If you have a particular condition such as astigmatism; or require a more complex multifocal lens, your prescription may include other details.

Disclaimer : You hereby certify that you hold a valid prescription for the eyewear you wish to order. This means that your prescription is within 12 months from the date of purchase and that the prescription has been dispensed by a professional and qualified optometrist or contact lens fitter (thereafter this should be construed as a practitioner).

We reserve the right to verify such details with your practitioner. The above stated also applies to those customers re-ordering lenses. Where you have been given a contra indication to wear lenses by a registered practitioner we reserve the rights to revoke any sale unless otherwise redirected by the same or another registered practitioner. 

Hereby you also state that you have no ailments that contra indicates the wear of lenses. When purchasing from us you confirm and verify that you have been prescribed the contact lenses you have ordered by a qualified practitioner, therefore we do not take responsibility if you order lenses that have not been prescribed for you and/or if the difference between the prescription and purchase date exceeds 12 months.

We strongly recommend that regular eye checks are made by a qualified practitioner to ensure the welfare and continuity of your eye health. You do not necessarily have to send us your prescription but by accepting the terms and conditions contained herein above you verify that you have a valid prescription that is within the Law of the United States and Canada. The contact lens wearer must be at least 16 years old.

If you have any questions please email us.

Experience the fusion of style and innovation with our Mixed Material frames
  • Hand crafted with the harmony of materials like wood, plastic, metal, titanium, and more.
  • Non-prescription lenses with full UVA and UVB protection
  • Unisex design that suits your personality and lifestyle

Lens width (A):52mm
Bridge Width (B):20mm
Temple Arm Length (C):150mm

Need a prescription?

Update your prescription by booking your eye exam and contact lens fitting with us today.
Book now
Mixed Material
The fusion of different materials creates a fashionable and unique frame. Experience the fusion of style and innovation with our Mixed Material frames. These frames represent the perfect harmony of materials like wood with metal, wood with plastic, titanium with plastic, and more. Combining the best of both worlds, they offer a sophisticated and dynamic look. The blend of textures and colors adds a contemporary edge to your eyewear collection. Discover frames that strike a balance between modern aesthetics and traditional craftsmanship, elevating your fashion statement to the next level. Explore the versatility of Mixed Material frames and choose the perfect pair that suits your personality and lifestyle.
Versatile Color Options
Choose from a spectrum of colors to refresh your life, add a stylish touch, and embrace the freedom of self-expression.

What’s included

Each pair of glasses comes with a complimentary case and cleaning cloth to keep your glasses safe and clean. Get Free shipping and 30-day returns; plus 1 year manufacture warranty on all our frames.