EF20480E – Innova Heating Co. `).insertAfter($("#mf-form-submit")) if (!timer) { clearTimeout(timer) } } else { timer = setTimeout(checkForm, 0) } } else if (location.pathname.indexOf('/my-account/edit-address') != -1) { // address地址的保存 let dom = $(".woocommerce-MyAccount-content form").length > 0 let form = $(".woocommerce-MyAccount-content form") if (dom) { let billCountry = form.find('[name=billing_country]').val() let shipCountry = form.find('[name=shipping_country]').val(); let billInput = ` ` let shipInput = ` ` $(".woocommerce-MyAccount-content form").append(`${billInput + shipInput}`) if (!timer) { clearTimeout(timer) } } else { timer = setTimeout(checkForm, 0) } } else if (location.pathname.indexOf('/checkout') != -1) { let dom = $(".woocommerce form").length > 0 let form = $(".woocommerce form") if (dom) { let billingValue = form.find("[name=billing_country]").val() let shippingValue = form.find("[name=shipping_country]").val() let hiddenBilling = ` ` let hiddenShipping = ` ` form.append(hiddenBilling) form.append(hiddenShipping) //checkout billtoship if (!timer) { clearTimeout(timer) } } else { timer = setTimeout(checkForm, 0) } } else if (location.pathname.indexOf('/my-account/edit-address') != -1) { } else if (location.pathname.indexOf('/accessories-flush-mount-kit') != -1) { if (location.search.length > 0) { const params = queryString(location.search) let dom = $(".flush-finish").length > 0 if (dom) { $(`.flush-finish .radio-list input:radio[value=${params.finish}]`).click() $(`.flush-version .radio-list input:radio[value=${params.size}]`).click() if (!timer) { clearTimeout(timer) } } } } else if (location.pathname.indexOf('/new-customer-information-form') != -1) { let input = $("#mf-input-text-6df9117") let dom = input.length > 0; if (dom) { let date = new Date() let obj = queryString(location.search) obj.register = obj['1register'] delete obj['1register'] $('.register-form-content input[name=mf-email]').val(obj.email) $("#mf-input-text-6df9117").val(`${obj.first_name} ${obj.last_name}`) $("input[name=mf-date]").removeAttr('readonly') $(` `).insertAfter($("#mf-form-submit")) if (!timer) { clearTimeout(timer) } } else { timer = setTimeout(checkForm, 0) } } } checkForm() //注册前进行邮箱是否以注册的判断 function isEmailRegister(email, url, func) { $.get(location.origin + url, { 'email': email }, function (data) { hideLoading() if (!data.bool) { layer.closeAll("dialog"); displayMessage(data.msg) } else { func() } }) } // 显示邮箱错误信息 function displayMessage(msg) { msg = ` ${msg} ` || `An unknown error occurred` let p = $(".woocommerce-form-register.register input#reg_email").parent() $(msg).insertAfter(p) } // 处理注册 function handleRegister() { $(".register_form_tip").remove() $(".register_email_tip").remove() let form = $(".woocommerce-form-register.register"); let regEmail = form.find("input#reg_email").val().trim(); let box = $(".u-column2") let afreg_nonce_field = form.find("input#afreg_nonce_field").val().trim(); let _wp_http_referer = form.find("input[name=_wp_http_referer]").val().trim() let nonce = form.find("input#woocommerce-register-nonce").val().trim(); let firstName = form.find("input#first_name").val().trim(); let lastName = form.find("input#last_name").val().trim(); let billingCountry = form.find("select[name=billing_country]").val().trim(); let warningTip = ` Please fill in the required items ` let type = 'Register' if (firstName.length === 0 || lastName.length === 0 || billingCountry.length === 0 || regEmail.length === 0) { box.append(warningTip) } else { // layer.open({ // title: 'Do you want to apply credit?' // , content: '' // , zIndex: 800 // , btn: ['YES', 'NO'] // , btnAlign: "c" // , yes: function (index, layero) { showLoading() isEmailRegister(regEmail, '/wp-json/wp/v2/checkEmailRegistered', function () { let urlParams = `?first_name=${firstName}&last_name=${lastName}&billing_country=${billingCountry}&email=${regEmail}&1register=${type}&_wp_http_referer=${_wp_http_referer}&afreg_nonce_field=${afreg_nonce_field}&woocommerce-register-nonce=${nonce}&pagefomr=1` if (billingCountry === 'US') { location.href = `/credit-application-us${urlParams}` } else if (billingCountry === 'CA') { location.href = `/credit-application-ca${urlParams}` } }) // } // , btn2: function (index, layero) { // showLoading() // isEmailRegister(regEmail, '/wp-json/wp/v2/checkEmailRegistered', function () { // let urlParams = `?first_name=${firstName}&last_name=${lastName}&billing_country=${billingCountry}&email=${regEmail}&1register=${type}&_wp_http_referer=${_wp_http_referer}&afreg_nonce_field=${afreg_nonce_field}&woocommerce-register-nonce=${nonce}&pagefomr=0` // location.href = `/new-customer-information-form${urlParams}` // }) // } // }); } } $(".u-column2.col-2 form").submit(function (e) { e.preventDefault() handleRegister() }) // $(document).on('click', '#mf-form-submit', function (e) { e.preventDefault() $(".required_tips").html(``) let form = $(".register-form-content").eq(0) let obj = queryString(location.search) let billing_country = obj.billing_country form.attr('method', 'post') form.attr('action', '/my-account') obj.register = obj['1register'] delete obj['1register'] let str = '' obj['mf-federal-tax-id'] = '2' console.log(obj) for (let key in obj) { str += ` ` } str += ` ` form.append(str); //pageif if (obj.pagefomr) { let [date, accountNo, contactName, company, billingAddress, shippingAddress, email, phone, fax, ownerName, ownerEmail, ownerPhone, lightingManagerName, managerEmail, managerPhone, accountsPayableContact, paycontactEmail, paycontactPhone, federalTaxId, resaleCertificateId, expiryDate ] = [ form.find('[name=mf-date]').val().trim().length > 0, form.find('[name=mf-account-no]').val().trim().length > 0, form.find('[name=mf-contact-name]').val().trim().length > 0, form.find('[name=mf-company]').val().trim().length > 0, form.find('[name=mf-billing-address]').val().trim().length > 0, form.find('[name=mf-shipping-address]').val().trim().length > 0, form.find('[name=mf-email]').val().trim().length > 0, form.find('[name=mf-phone]').val().trim().length > 0, form.find('[name=mf-fax]').val().trim().length > 0, form.find('[name=mf-owner-name]').val().trim().length > 0, form.find('[name=mf-owner-email]').val().trim().length > 0, form.find('[name=mf-owner-phone]').val().trim().length > 0, form.find('[name=mf-lighting-manager-name]').val().trim().length > 0, form.find('[name=mf-manager-email]').val().trim().length > 0, form.find('[name=mf-manager-phone]').val().trim().length > 0, form.find('[name=mf-accounts-payable-contact]').val().trim().length > 0, form.find('[name=mf-paycontact-email]').val().trim().length > 0, form.find('[name=mf-paycontact-phone]').val().trim().length > 0, //form.find('[name=mf-branches-number]').val().trim().length>0, //form.find('[name=mf-employess-number]').val().trim().length>0, //form.find('[name=mf-business-years]').val().trim().length>0, form.find('[name=mf-federal-tax-id]').val().trim().length > 0, form.find('[name=mf-resale-certificate-id]').val().trim().length > 0, form.find('[name=mf-expiry-date]').val().trim().length > 0, //form.find('[name=mf-financial-institution]').val().trim().length>0, //form.find('[name=mf-branch-number]').val().trim().length>0, //form.find('[name=mf-branch-address]').val().trim().length>0, //form.find('[name=mf-acct-number]').val().trim().length>0, //form.find('[name=mf-contact-name-2]').val().trim().length>0, //form.find('[name=mf-contact-phone]').val().trim().length>0, //form.find('[name=mf-contact-fax]').val().trim().length>0, //form.find('[name=mf-first-company-name]').val().trim().length>0, //form.find('[name=mf-first-company-contact-name]').val().trim().length>0, //form.find('[name=mf-first-company-email]').val().trim().length>0, //form.find('[name=mf-first-company-phone]').val().trim().length>0, //form.find('[name=mf-credit-limit-request]').val().trim().length>0 ] // console.log(contactName && company && billingAddress && shippingAddress && email && phone && ownerName && ownerEmail && ownerPhone && resaleCertificateId && federalTaxId && expiryDate) if (contactName && company && billingAddress && shippingAddress && email && phone && ownerName && ownerEmail && ownerPhone && resaleCertificateId && federalTaxId && expiryDate) { form.submit() } else { console.log(form) $(".required_tips").html(`Please fill in the required fields before submitting`) } return } let [date, accountNo, contactName, company, billingAddress, shippingAddress, email, phone, fax, website, ownerName, ownerEmail, ownerPhone, lightingManagerName, managerEmail, managerPhone, accountsPayableContact, paycontactEmail, paycontactPhone, branchesNumber, employessNumber, businessYears, federalTaxId, resaleCertificateId, expiryDate, financialInstitution, branchNumber, branchAddress, acctNumber, contactName2, contactPhone, contactFax, firstCompanyName, firstCompanyContactName, firstCompanyEmail, firstCompanyPhone, creditLimitRequest ] = [ form.find('[name=mf-date]').val().trim().length > 0, form.find('[name=mf-account-no]').val().trim().length > 0, form.find('[name=mf-contact-name]').val().trim().length > 0, form.find('[name=mf-company]').val().trim().length > 0, form.find('[name=mf-billing-address]').val().trim().length > 0, form.find('[name=mf-shipping-address]').val().trim().length > 0, form.find('[name=mf-email]').val().trim().length > 0, form.find('[name=mf-phone]').val().trim().length > 0, form.find('[name=mf-fax]').val().trim().length > 0, form.find('[name=mf-website]').val().trim().length > 0, form.find('[name=mf-owner-name]').val().trim().length > 0, form.find('[name=mf-owner-email]').val().trim().length > 0, form.find('[name=mf-owner-phone]').val().trim().length > 0, form.find('[name=mf-lighting-manager-name]').val().trim().length > 0, form.find('[name=mf-manager-email]').val().trim().length > 0, form.find('[name=mf-manager-phone]').val().trim().length > 0, form.find('[name=mf-accounts-payable-contact]').val().trim().length > 0, form.find('[name=mf-paycontact-email]').val().trim().length > 0, form.find('[name=mf-paycontact-phone]').val().trim().length > 0, form.find('[name=mf-branches-number]').val().trim().length > 0, form.find('[name=mf-employess-number]').val().trim().length > 0, form.find('[name=mf-business-years]').val().trim().length > 0, form.find('[name=mf-federal-tax-id]').val().trim().length > 0, form.find('[name=mf-resale-certificate-id]').val().trim().length > 0, form.find('[name=mf-expiry-date]').val().trim().length > 0, form.find('[name=mf-financial-institution]').val().trim().length > 0, form.find('[name=mf-branch-number]').val().trim().length > 0, form.find('[name=mf-branch-address]').val().trim().length > 0, form.find('[name=mf-acct-number]').val().trim().length > 0, form.find('[name=mf-contact-name-2]').val().trim().length > 0, form.find('[name=mf-contact-phone]').val().trim().length > 0, form.find('[name=mf-contact-fax]').val().trim().length > 0, form.find('[name=mf-first-company-name]').val().trim().length > 0, form.find('[name=mf-first-company-contact-name]').val().trim().length > 0, form.find('[name=mf-first-company-email]').val().trim().length > 0, form.find('[name=mf-first-company-phone]').val().trim().length > 0, form.find('[name=mf-credit-limit-request]').val().trim().length > 0 ] if (billing_country === 'CA') { if (contactName && company && billingAddress && shippingAddress && email && phone && ownerName && ownerEmail && ownerPhone && branchesNumber && businessYears && resaleCertificateId && federalTaxId && expiryDate && financialInstitution && branchNumber && branchAddress && acctNumber && contactName2 && contactPhone && contactFax && firstCompanyName && firstCompanyContactName && firstCompanyEmail && firstCompanyPhone) { form.submit() } else { console.log(form) $(".required_tips").html(`Please fill in the required fields before submitting`) } } else { if (contactName && company && billingAddress && shippingAddress && email && phone && ownerName && ownerEmail && ownerPhone && branchesNumber && businessYears && resaleCertificateId && expiryDate && financialInstitution && branchNumber && branchAddress && acctNumber && contactName2 && contactPhone && contactFax && firstCompanyName && firstCompanyContactName && firstCompanyEmail && firstCompanyPhone) { form.submit() } else { $(".required_tips").html(`Please fill in the required fields before submitting`) } } }) // 如果check 那么会将billing的地址传到shipping里 $(document).on('change', '.register-form-content [name=mf-same-as-billing-address]', function () { let isCheck = $(this).prop('checked') let shippingAdress = $('.register-form-content [name=mf-shipping-address]') let billlingAdress = $('.register-form-content [name=mf-billing-address]') if (isCheck) { shippingAdress.val(billlingAdress.val()) } else { shippingAdress.val('') } }) // 如果check billing地址变动时候将会传到shipping里 $(document).on('input', '.register-form-content [name=mf-billing-address]', function () { let isCheck = $('.register-form-content [name=mf-same-as-billing-address]').prop('checked') let shippingAdress = $('.register-form-content [name=mf-shipping-address]') if (isCheck) { shippingAdress.val($(this).val()) } else { shippingAdress.val('') } }) // 注册表格中的滚动条滑动事件 $(".elementor-element-90143e6").scroll(function () { $(".elementor-element-d43264b").scrollTop($(this).scrollTop()); // 纵向滚动条 $(".elementor-element-d43264b").scrollLeft($(this).scrollLeft()); // 横向滚动条 }); $(".elementor-element-d43264b").on("mousewheel DOMMouseScroll", function (e) { var scroll_top = $(".elementor-element-90143e6").scrollTop(); var scroll_left = $(".elementor-element-90143e6").scrollLeft(); if (e.originalEvent.wheelDelta > 0 || e.originalEvent.detail < 0) { $(".elementor-element-90143e6").scrollTop(scroll_top - 25); $(".elementor-element-90143e6").scrollLeft(scroll_left - 25) } else { $(".elementor-element-90143e6").scrollTop(scroll_top + 25); $(".elementor-element-90143e6").scrollLeft(scroll_left + 25) } e.preventDefault() }); // 切换edit-account/的三个链接 $(document).on('click', '#displayNav ul li', function () { let items = $("#displayContent .displayItem") let index = $(this).index() $(this).addClass('active').siblings().removeClass('active') items.eq(index).addClass('active') items.eq(index).siblings().removeClass('active') }) //checkout页面点击Place order 判断 Order Reference是否符合要求 $(document).on('input', '.order-reference', function (e) { let val = $(this).val() let tips = $(".order_review_tips") tips.text(``) let reg = /^[a-zA-Z\d]+$/ let isVaild = reg.test(val.trim()) if (isVaild) { // $(this).submit() } else { if (val.trim().length <= 0) { } else { let newVal = val.slice(0, val.length - 1) $(this).val(newVal) tips.text(`Please fill in numbers or letters.`) } } }) $(document).on('click', '.my-account-container .woocommerce table.my_account_orders tr td:first-child a', function (e) { e.preventDefault() let windowX = $(window).width() let order_number = $(this).data('id') showLoading() $.getJSON('/wp-json/wp/v2/getOrderDetail', { order_number }, function (data) { let orderItemsArr = data.products let tableDomStr = `` orderItemsArr.forEach(function (item) { tableDomStr += ` ${item.ItemNumber} ${item.Description} ${item.QuantityOrdered ? item.QuantityOrdered : `--`} ${item.QuantityInvoiced ? item.QuantityInvoiced : `--`} ${item.QuantityAvailable ? item.QuantityAvailable : `--`} ${item.QuantityBackordered ? item.QuantityBackordered : `--`} ${item.UnitPrice ? `$${item.UnitPrice}` : `--`} ${item.ExtPrice ? `$${item.ExtPrice}` : `--`} ` }) let orderDom = ` Order Detail Mail Print Close Eurofase Inc. 33 West Beaver Creek Road Richmond Hill, Ontario L4B 1L8 T. 905-695-2055 orders@eurofase.com Order Date: ${data.OrderDate} PO # ${data.CustomerPoNumber} Ship Date: ${data.ShipDate} Shipment Preference: ${data.ShipmentPreference} Notes: ${data.OrderNotes} Order Number: ${data.OrderNumber} Status: ${data.Status} Ordered By: ${data.CustomerBillToName} Order Origin: ${data.OrderOrigin} FOB: ${data.Fob} Terms: ${data.Terms} Bill To: ${data.CustomerBillToNumber ? data.CustomerBillToNumber != 0 ? `(${data.CustomerBillToNumber})` : '' : ''} ${data.CustomerBillToName} ${data.CustomerBillToLine1} ${data.CustomerBillToLine2 ? data.CustomerBillToLine2 + ' ' : ''} ${data.CustomerBillToCity ? `${data.CustomerBillToCity},` : ''} ${data.CustomerBillToState} ${data.CustomerBillToPostalCode} ${data.CustomerBillToCountry} Ship To: ${data.CustomerShipToName} ${data.CustomerShipToLine1} ${data.CustomerShipToLine2 ? data.CustomerShipToLine2 + ' ' : ''} ${data.CustomerShipToCity ? `${data.CustomerShipToCity},` : ''} ${data.CustomerShipToState} ${data.CustomerShipToPostalCode} ${data.CustomerShipToCountry} Item No. Description Qty Qty Invoiced Qty Avail Qty Backordered Unit Price Ext. Price ${tableDomStr} Total $${data.Total} ` hideLoading() layerIndex = layer.open({ title: false, type: 1, closeBtn: 0, scrollbar: false, skin: 'layui-layer-prompt', //加上边框 area: windowX > 767 ? windowX > 1200 ? ['65vw', '85vh'] : ['75vw', '80vh'] : ['90vw', '80vh'], content: orderDom }); }) }) //invoices $(document).on('click', '.my-account-container .woocommerce table.my_account_invoices tr td:first-child a', function (e) { e.preventDefault() let windowX = $(window).width() let invoice_number = $(this).data('id') showLoading() $.getJSON('/wp-json/wp/v2/getInvoiceDetail', { invoice_number }, function (data) { let orderItemsArr = data.products let tableDomStr = `` console.log(data) orderItemsArr.forEach(function (item) { tableDomStr += ` ${item.ItemNumber} ${item.Description} ${item.QuantityInvoiced} ${item.UnitPrice ? `$${item.UnitPrice}` : ''} ${item.GrossAmount ? `$${item.GrossAmount}` : ''} ` }) let orderDom = ` Invoice Detail Mail Print Close Eurofase Inc. 33 West Beaver Creek Road Richmond Hill, Ontario L4B 1L8 T. 905-695-2055 orders@eurofase.com Invoice Number: ${data.InvoiceNumber} Invoice Date: ${data.InvoiceDate} Order Number: ${data.OrderNumber} Rep Number: ${data.RepNumber} Customer PONumber: ${data.CustomerPONumber} Terms: ${data.Terms} Ship Via: ${data.ShipVia} Tracking: ${data.TrackingNumber} FOB: ${data.FOB} Sold To: ${data.CustomerBillToName} ${data.CustomerBillToLine1} ${data.CustomerBillToLine2 ? data.CustomerBillToLine2 + ' ' : ''} ${data.CustomerBillToCity ? `${data.CustomerBillToCity},` : ''} ${data.CustomerBillToState} ${data.CustomerBillToPostalCode} ${data.CustomerBillToCountry} Ship To:${data.CustomerShipToNumber ? data.CustomerShipToNumber != 0 ? `(${data.CustomerShipToNumber})` : '' : ''} ${data.CustomerShipToName} ${data.CustomerShipToLine1} ${data.CustomerShipToLine2 ? data.CustomerShipToLine2 + ' ' : ''} ${data.CustomerShipToCity ? `${data.CustomerShipToCity},` : ''} ${data.CustomerShipToState} ${data.CustomerShipToPostalCode} ${data.CustomerShipToCountry} Item No. Description Qty Invoiced Unit Price Gross Amount ${tableDomStr} Total $${data.Total} ` hideLoading() layerIndex = layer.open({ title: false, type: 1, closeBtn: 0, scrollbar: false, skin: 'layui-layer-prompt', //加上边框 area: windowX > 767 ? windowX > 1200 ? ['65vw', '85vh'] : ['75vw', '80vh'] : ['90vw', '80vh'], content: orderDom }); }) }) //checkout ship切换 $(document).on('change', '#ship-to-different-address-checkbox', function () { let isShiping = $(this).prop('checked') if (isShiping) { let val = $(".woocommerce form").find("#shipping_country").val() $(".woocommerce form").find(".ship-hidden").val(val) } else { $(".woocommerce form").find(".ship-hidden").val(``) } }) // 保存地址后禁用按钮 $(document).on('click', '#oc_add_shipping_form_submit', function () { $(this).attr('disabled', 'disabled') }) // 4000 5000 6000 上部分点击 $(document).on('click', '.product-display-choose .elementor-widget-wrap h2', function () { let _this = $(this) let link = '/electric-heaters-' location.href = `${link}${_this.text().toLowerCase()}` }) // 4000 5000 6000 下部分点击 $(document).on('click', '.product-table-choose .elementor-widget-wrap h2', function () { let _this = $(this) let link = '/electric-heaters-' location.href = `${link}${_this.text().toLowerCase()}` }) // 4000 5000 6000 上部分鼠标移入 $(document).on('mouseover', '.product-table-choose .elementor-widget-wrap h2', function () { let _this = $(this) _this.addClass('active') _this.closest('.elementor-element').siblings().find('h2').removeClass('active') let index = _this.closest('.elementor-element').index() $(".spec-table table tbody .wpdt-cell-row td").removeClass('active') if ($(`.spec-table table tbody .wpdt-cell-row td:nth-child(${index + 2})`).hasClass('active')) { } else { $(`.spec-table table tbody .wpdt-cell-row td:nth-child(${index + 2})`).addClass('active') } }) $(document).on('mouseover', '.product-display-choose .elementor-widget-wrap h2', function () { let _this = $(this) _this.addClass('active') let coverageArray = [ 'https://innovaheatingco.com/wp-content/uploads/2022/06/IN-Chevron-Multi-scaled.jpg', 'https://innovaheatingco.com/wp-content/uploads/2022/06/IN-Chevron-Multi_L2-4000W-scaled.jpg', 'https://innovaheatingco.com/wp-content/uploads/2022/06/IN-Chevron-Multi_L3-5000W-scaled.jpg', 'https://innovaheatingco.com/wp-content/uploads/2022/06/IN-Chevron-Multi_L4-6000W-scaled.jpg' ] let h2 = $(".product-display-h2 h2") h2.text(_this.children('a').text()) _this.closest('.elementor-element').siblings().find('h2').removeClass('active') let index = _this.closest('.elementor-element').index() $(".coverage-area-img img").attr('src', coverageArray[index]) getFamilyImage() }) function getFamilyImage() { let isLoading = $(".product-display-img .elementor-image .image-loading").length > 0 let loading_dom = $(' ') let img_container_dom = $(".product-display-img .elementor-image") let img_dom = $(".product-display-img").find('img') let family_Array = ['EF18', 'EF40', 'EF50', 'EF60'] let color_Array = ['B', 'S', 'W'] let select_Array = [0, 1, 2, 3, 4, 5, 6, 7] let color_index = $(".product-color-pick .elementor-widget-wrap .elementor-element i.active").closest('.elementor-element').index() >= 0 ? $(".product-color-pick .elementor-widget-wrap .elementor-element i.active").closest('.elementor-element').index() : 0 let family_index = $(".product-table-choose .elementor-widget-wrap .elementor-element h2.active").closest('.elementor-element').index() >= 0 ? $(".product-table-choose .elementor-widget-wrap .elementor-element h2.active").closest('.elementor-element').index() : 0 let select_index = $(".product-attribute-select .elementor-widget-wrap .elementor-element .elementor-image-box-img.active").closest('.elementor-element').index() >= 0 ? $(".product-attribute-select .elementor-widget-wrap .elementor-element .elementor-image-box-img.active").closest('.elementor-element').index() : 0 let params = { 'family': family_Array[family_index], 'finish': color_Array[color_index], 'decor_plate': select_Array[select_index] } if (!isLoading) img_container_dom.append(loading_dom) $.get('/wp-json/wp/v2/getFamilyImage', params, function (data) { if (!data) { img_dom.attr('src', 'https://innovaheatingco.com/wp-content/uploads/2021/07/item-default-img.jpg') loading_dom.remove() } else { img_dom.attr('src', data) loading_dom.remove() } }) } $(document).on('mouseover', '.product-color-pick .elementor-widget-wrap .elementor-element i', function () { let _this = $(this); let isAttributeSelect = $(".product-attribute-select .elementor-widget-wrap .elementor-element").eq(7).find(".elementor-image-box-img").hasClass('active') let index = _this.closest(".elementor-element").index() let family_index = $(".product-display-choose .elementor-widget-wrap .elementor-element h2.active").closest('.elementor-element').index() if (isAttributeSelect) { if (index !== 1 && index !== 2) { _this.removeClass('cursor-disabled').addClass('active') _this.closest('.elementor-element').siblings().find('i').removeClass('active') getFamilyImage() } else { $(".product-color-pick .elementor-widget-wrap .elementor-element").eq(1).find('i').removeClass('active').addClass('cursor-disabled') $(".product-color-pick .elementor-widget-wrap .elementor-element").eq(2).find('i').removeClass('active').addClass('cursor-disabled') } } else { if (family_index !== 0) { _this.removeClass('cursor-disabled').addClass('active') _this.closest('.elementor-element').siblings().find('i').removeClass('active') getFamilyImage() } else { if (index === 1 || index === 0) { _this.removeClass('cursor-disabled').addClass('active') _this.closest('.elementor-element').siblings().find('i').removeClass('active') getFamilyImage() } else { $(".product-color-pick .elementor-widget-wrap .elementor-element").eq(2).find('i').removeClass('active').addClass('cursor-disabled') } } } }) $(document).on('mouseover', '.product-attribute-select .elementor-widget-wrap .elementor-element .elementor-image-box-img', function () { let _this = $(this) let isColorSelect = $(".product-color-pick .elementor-widget-wrap .elementor-element").eq(2).find("i").hasClass('active') || $(".product-color-pick .elementor-widget-wrap .elementor-element").eq(1).find("i").hasClass('active') let index = _this.closest(".elementor-element").index() if (isColorSelect) { if (index !== 7) { _this.removeClass('cursor-disabled').addClass('active') _this.closest('.elementor-element').siblings().find('.elementor-image-box-img').removeClass('active') getFamilyImage() } else { $(".product-attribute-select .elementor-widget-wrap .elementor-element").eq(7).find('.elementor-image-box-img').removeClass('active').addClass('cursor-disabled') } } else { _this.removeClass('cursor-disabled').addClass('active') _this.closest('.elementor-element').siblings().find('.elementor-image-box-img').removeClass('active') getFamilyImage() } }) $(document).on('click', '.decor-top-list .elementor-column .elementor-image img', function () { let _this = $(this) let index = _this.closest('.elementor-column').index() let linkArr = [`/decor-plates-01/`, `/decor-plates-02/`, `/decor-plates-03/`] location.href = linkArr[index] }) $(document).on('click', '.decor-bottom-list .elementor-column .elementor-image img', function () { let _this = $(this) let index = _this.closest('.elementor-column').index() let linkArr = [`/decor-plates-04/`, `/decor-plates-05/`, `/decor-plates-06/`] location.href = linkArr[index] }) $(document).on('click', '.decor-top-list .elementor-column section.elementor-section-boxed .elementor-widget-wrap .elementor-widget-icon-box .elementor-icon-box-wrapper,.decor-bottom-list .elementor-column section.elementor-section-boxed .elementor-widget-wrap .elementor-widget-icon-box .elementor-icon-box-wrapper', function () { let _this = $(this) let itemno = _this.find(".elementor-icon-box-content span").text() let box, img if (itemno.indexOf('61') != -1) { box = _this.closest('section.elementor-section-boxed').prev().prev().find(".elementor-image") img = _this.closest('section.elementor-section-boxed').prev().prev().find(".elementor-image img") itemno = itemno.replace('61', '39') } else { box = _this.closest('section.elementor-section-boxed').prev().find(".elementor-image") img = _this.closest('section.elementor-section-boxed').prev().find(".elementor-image img") } if (box.children('.image-loading').length <= 0) { box.append(` `) } $.get('/wp-json/wp/v2/getProductImage', { itemno }, function (data) { $(".decor-top-list .image-loading,.decor-bottom-list .image-loading").remove() img.attr('src', data) }) }) function handleLayerClose(e) { layer.close(layerIndex) } function handlePrint() { let currentCss = ` *, ::after, ::before { box-sizing: border-box; } @page {margin:0 10mm} .panel{ padding:50px 20px 20px 20px; } .panel .order table > thead > tr > th, .panel .order table > tbody > tr > th, .panel .order table > tfoot > tr > th, .panel .order table > thead > tr > td, .panel .order table > tbody > tr > td, .panel .order table > tfoot > tr > td { border-left: none; border-right: none; border-top: none; } .panel .order table > tbody > tr:nth-child(odd) { border-left: none; border-right: none; border-top: none; } .datatable { margin-bottom: 3em; width: 100%; border-collapse: collapse; font-size: 0.875em; } .datatable th, .datatable td { padding: 0.5em; vertical-align: top; border-bottom: 1px solid #ddd; } .datatable tr.not-bottom td { border-bottom: 0px; } .datatable thead th { font-size: 0.91em; line-height: 24px; letter-spacing: 1px; text-transform: uppercase; color: #888; border-bottom: 2px solid #ddd; vertical-align: middle; white-space: nowrap; text-align: left; } .datatable tfoot.totals td { border: none; padding: 0.25em 0.5em; } .datatable tfoot.totals td strong { color: #333; } .datatable tfoot > tr:first-child td { border-top: 2px solid #ddd; } .dl-horizontal dt, .dl-horizontal dd { border-top: 1px solid #e6e6e6; padding: 0.35em 0; line-height: 1.5; } .dl-horizontal { overflow: hidden; margin: 0; } .dl-horizontal.no-border dt, .dl-horizontal.no-border dd { border: none; } .dl-horizontal dt { float: left; clear: left; color: #808080; width: 40%; text-align: right; white-space: nowrap; overflow: hidden; -ms-text-overflow: ellipsis; -o-text-overflow: ellipsis; text-overflow: ellipsis; } .dl-horizontal dt:first-child, .dl-horizontal dt:first-child + dd { border-top: none; } .dl-horizontal dd { float: left; padding-left: 1.5em; margin: 0; width: 55%; } img { max-width: 100%; } .quiet { color: #808080; } .text-center { text-align: center !important; } .text-right { text-align: right !important; } .no-border { border: none !important; } .panel { color: #303030; font-family: "Open Sans", sans-serif; max-width: 100%; margin-left: auto; margin-right: auto; -moz-transition: opacity 0.35s, max-height 0.35s, margin 0.4s, padding 0.35s; -o-transition: opacity 0.35s, max-height 0.35s, margin 0.4s, padding 0.35s; -webkit-transition: opacity 0.35s, max-height 0.35s, margin 0.4s, padding 0.35s; transition: opacity 0.35s, max-height 0.35s, margin 0.4s, padding 0.35s; background-color: #fff; border-radius: 3px; opacity: 1; margin: 0 0 20px; } .panel:after { content: " "; display: block; clear: both; } .panel > *:first-child { margin-top: 0; } .panel > *:last-child { margin-bottom: 0; } .order .order-info-block { margin-bottom: 3em; font-size: 0.85em; } .order .order-company { overflow: hidden; } .order .order-logo { width: 30.25641%; float: left; margin-right: 4.61538%; } .order .order-company-info { width: 65.12821%; float: right; margin-right: 0; } .order .order-bill-to { clear: left; } .order .order-items { clear: both; } .order .order-info-block { margin-bottom: 3em; font-size: 0.85em; } .order .order-company { overflow: hidden; } .order .order-logo { width: 30.25641%; float: left; margin-right: 4.61538%; } .order .order-company-info { width: 65.12821%; float: right; margin-right: 0; } .order .order-bill-to { clear: left; } .order .order-items { clear: both; } @media screen { .order .order-bill-to, .order .order-ship-to { text-align: center; } } .panel .order { font-size: 14px; } .order .order-logo, .order .order-company-info { padding:0 !important; width: 100%; float: left; margin-left: 0; margin-right: 0; } .order .order-company, .order .order-info-1 { width: 30.25641%; float: left; margin-right: 4.61538%; } .order .order-info-2 { width: 30.25641%; float: right; margin-right: 0; } .panel .order { font-size: 16px; }` printJS({ printable: 'panel-content', type: 'html', style: currentCss, }) } let NumberNo, mailLayer function handleOrderMail() { NumberNo = $("#order-num").text() let windowX = $(window).width() let html = ` Send to Email Address Send ` mailLayer = layer.open({ type: 1, title: `Email Order ${NumberNo}`, content: html, skin: 'layui-layer-prompt', //加上边框 area: windowX > 767 ? windowX > 1200 ? ['40vw', 'auto'] : ['60vw', 'auto'] : ['80vw', 'auto'], }) } function handleInvoiceMail() { NumberNo = $("#invoice-num").text() let windowX = $(window).width() let html = ` Send to Email Address Send ` mailLayer = layer.open({ type: 1, title: `Email Order ${NumberNo}`, content: html, skin: 'layui-layer-prompt', //加上边框 area: windowX > 767 ? windowX > 1200 ? ['40vw', 'auto'] : ['60vw', 'auto'] : ['80vw', 'auto'], }) } function mailLoading(_this) { _this.addClass("loading") _this.text('Loading...') } function clearMailLoading(_this) { _this.removeClass("loading") _this.text('Send') } function tipsRender(words = '') { let tipsDOM = $(".mail-tips") if (words.length > 0) { tipsDOM.text(words) } else { tipsDOM.text(``) } }; function checkedMailAddress(mail) { let isValid = false let emailReg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/ if (mail.length > 0) { let isFormat = emailReg.test(mail) if (isFormat) { isValid = true } else { tipsRender(`Please enter an email address that matches the format`) } } else { tipsRender(`Please enter your email address`) } return isValid } function MailSend(e) { e.preventDefault() let _this = $(this) let isOrder = _this.data('type') == 'order' ? true : false if (isOrder) { let mail = $("#order-email-address").val() let isValid = checkedMailAddress(mail) if (isValid) { tipsRender() mailLoading(_this) $.get('/wp-json/wp/v2/sendOrderDetailEmail', { order_number: NumberNo, to: mail }, function (data) { clearMailLoading(_this) layer.msg(data.message) layer.close(mailLayer) }).fail(function (data) { clearMailLoading(_this) tipsRender(data.message) }) } } else { let mail = $("#invoice-email-address").val() let isValid = checkedMailAddress(mail) if (isValid) { tipsRender() mailLoading(_this) $.get('/wp-json/wp/v2/sendInvoiceDetailEmail', { invoice_number: NumberNo, to: mail }, function (data) { clearMailLoading(_this) layer.msg(data.message) layer.close(mailLayer) }).fail(function (data) { clearMailLoading(_this) tipsRender(data.message) }) } } } if(location.pathname.indexOf("1500") !=-1 ){ $(".elementor-element-5cf059d").css("display","none") $(".elementor-element-7e08e55").css("display","none") document.getElementsByClassName("elementor-element-7e08e55")[0].style.display = "none" } // $(document).on('click','.js-detail--mail',) $(document).on('click', '.js-detail-print', handlePrint) $(document).on('click', '.js-detail-close', handleLayerClose) $(document).on('click', '.js-order-mail', handleOrderMail) $(document).on('click', '.js-invoice-mail', handleInvoiceMail) $(document).on('click', '.mail-send', MailSend) }) // // // // `; // let panelDOM = ' '; // function initialize() { // $(Nav).append(relativeContainerDOM); // $(".Panel-wrap").append(panelDOM) // } // $(document).on("click",dom, function (e) { // e.stopPropagation(); // initialize(); // }); // } // setNavMenu("#menu-item-5557432 a", 0); // }); `) $(" .home-prod-slide .swiper-slide").eq(1).find('figure').wrap(``) $(" .home-prod-slide .swiper-slide").eq(2).find('figure').wrap(``) $(" .home-prod-slide .swiper-slide").eq(3).find('figure').wrap(``) $(" .home-prod-slide .swiper-slide").eq(4).find('figure').wrap(``) // 侧边的下载 解决点击加粗文字无法跳转的问题 $(".family-scroll-fixed-btns").on('click','.elementor-widget-container',function(e){ e.stopPropagation() e.preventDefault() if(e.target.tagName!=='A'){ let href = $(this).find('a.elementor-icon').attr('href') let a = document.createElement('a') a.setAttribute('href',href) a.setAttribute('target','_blank') document.body.appendChild(a) a.click() document.body.removeChild(a) }else{ } }) //system 滚动效果 $(".family-scroll-fixed-btns").hide(); $(".family-scroll-fixed-btns-bottom").hide(); var rollset=$(".family-scroll-fixed-btns"); var offset=rollset.offset(); if(typeof(offset)!="undefined"){ var fwidth=$("footer").height(); var rollheight=$(".elementor-element-8e9682d").height(); $(window).scroll(function(){ var scrollTop = $(window).scrollTop(); let maxScroll = $(".elementor-element-ebc25f4").offset().top if($(window).height()-200 > maxScroll-scrollTop){ $(".family-scroll-fixed-btns").css({"position":"absolute","bottom":$("footer").height()}) }else{ $(".family-scroll-fixed-btns").css({"position":"fixed","bottom":200}) } var scrollBtm = $(document).height() - $(window).scrollTop() - $("footer").height()-500; if (offset.top < scrollTop) { if (scrollBtm > fwidth) { if(scrollTop>rollheight) { $(".family-scroll-fixed-btns").fadeIn(); } else{ $(".family-scroll-fixed-btns").fadeOut(); } } else { $(".family-scroll-fixed-btns-bottom").fadeIn(); // $(".family-scroll-fixed-btns").fadeOut(); } } else { if(scrollTop>rollheight) { $(".family-scroll-fixed-btns").fadeIn(); } else{ // $(".family-scroll-fixed-btns").fadeOut(); } } }); } //latest projects bar var latestProjectsWrap = document.querySelector('.latest-projects-wrap'); if (latestProjectsWrap) { var windowWidth = document.documentElement.clientWidth || document.body.clientWidth; var oneItemWidth = windowWidth * 0.28; var imgsListWrap = latestProjectsWrap.querySelector('.line-img-wrap'); var imgsList = imgsListWrap.querySelector('ul.line-imgs'); var imgs = imgsList.querySelectorAll('li.line-img-item'); var leftBtn = imgsListWrap.querySelector('.left'); var rightBtn = imgsListWrap.querySelector('.right'); var scrollBar = latestProjectsWrap.querySelector('.scroll-bar'); var scrollBarTap = scrollBar.querySelector('.scroll-bar-tap'); var currentFirstItemIndex = 0; var showNum = 3; if (windowWidth < 1025) { var info = imgsList.querySelector('li.line-img-item .projects-info'); imgsListWrap.parentNode.insertBefore(info, imgsListWrap); var firstLi = imgsList.querySelector('li.line-img-item'); firstLi.parentNode.removeChild(firstLi); oneItemWidth = windowWidth * 0.4; } //imgsListWrap.style.width = oneItemWidth * showNum + 'px'; //var imgsListWidth = oneItemWidth * imgs.length; //imgsList.style.width = imgsListWidth + 'px'; var imgHeight = oneItemWidth - 40; Array.prototype.forEach.call(imgs, function (node) { node.style.width = oneItemWidth + 'px'; if (node.querySelector('img')) { node.querySelector('img').style.height = imgHeight + 'px'; } }); var tapWidth = showNum / imgs.length; scrollBarTap.style.width = tapWidth * 100 + "%"; setLeftRightBtnPosition(imgsListWrap); leftBtn.classList.remove('hidden'); rightBtn.classList.remove('hidden'); leftBtn.classList.add('disabled'); rightBtn.classList.add('disabled'); Array.prototype.forEach.call(document.querySelectorAll('li.line-img-item a .project-title'), function (node) { node.style.height = imgHeight + 'px'; }); var hiddenItemNum = imgs.length - showNum; if (hiddenItemNum > 0) { rightBtn.classList.remove('disabled'); } leftBtn.onclick = function () { if (this.classList.contains('disabled')) { return false; } rightBtn.classList.remove('disabled'); currentFirstItemIndex--; var x = -(currentFirstItemIndex * oneItemWidth); imgsList.style.transform = 'translateX(' + x + 'px)'; var l = currentFirstItemIndex * (100 / imgs.length); scrollBarTap.style.left = l + '%'; if (currentFirstItemIndex == 0) { this.classList.add('disabled'); } } rightBtn.onclick = function () { if (this.classList.contains('disabled')) { return false; } leftBtn.classList.remove('disabled'); currentFirstItemIndex++; var x = -(currentFirstItemIndex * oneItemWidth); imgsList.style.transform = 'translateX(' + x + 'px)'; var l = currentFirstItemIndex * (100 / imgs.length); scrollBarTap.style.left = l + '%'; if (currentFirstItemIndex == imgs.length - showNum) { this.classList.add('disabled'); } } if (isMobile) { imgsList.addEventListener('scroll', function(e) { var scrollLeft = this.scrollLeft; var scrollWidth = this.scrollWidth; var l = scrollLeft / scrollWidth * 100; scrollBarTap.style.left = l + '%'; }); } window.addEventListener('resize', function () { var windowWidth = document.documentElement.clientWidth || document.body.clientWidth; var info = document.querySelector('.latest-projects-wrap .projects-info'); if (windowWidth < 1025) { if (imgsList.querySelector('li.line-img-item .projects-info')) { imgsListWrap.parentNode.insertBefore(info, imgsListWrap); var firstLi = imgsList.querySelector('li.line-img-item'); firstLi.parentNode.removeChild(firstLi); } oneItemWidth = windowWidth * 0.4; } else { if (!imgsList.querySelector('li.line-img-item .projects-info')) { var li = document.createElement('li'); li.classList.add('line-img-item'); li.appendChild(info); var firstLi = imgsList.querySelector('li.line-img-item'); firstLi.parentNode.insertBefore(li, firstLi); } oneItemWidth = windowWidth * 0.28; } imgs = imgsList.querySelectorAll('li.line-img-item'); //imgsListWidth = oneItemWidth * imgs.length; //imgsList.style.width = imgsListWidth + 'px'; imgHeight = oneItemWidth - 40; Array.prototype.forEach.call(imgs, function (node) { node.style.width = oneItemWidth + 'px'; if (node.querySelector('img')) { node.querySelector('img').style.height = imgHeight + 'px'; } }); setLeftRightBtnPosition(imgsListWrap); Array.prototype.forEach.call(document.querySelectorAll('li.line-img-item a .project-title'), function (node) { node.style.height = imgHeight + 'px'; }); var x = -(currentFirstItemIndex * oneItemWidth); imgsList.style.transform = 'translateX(' + x + 'px)'; }); } //设置左右按钮位置 function setLeftRightBtnPosition(bannerWrap) { var h = bannerWrap.clientHeight; var top = (h - 80) / 2; bannerWrap.querySelector('.left').style.top = top + 'px'; bannerWrap.querySelector('.right').style.top = top + 'px'; } }); Innova Heating Co. Products Where To Buy About Us Gallery Resources Downloads It’s Up To Hue! Custom Decor Plates Create Your Space Innova Lighting Co. EN ES FR My Innova Customer Support Warranty & Registration Care & Maintenance Share my innova Dealer Login EF20480E EF20480E Innovative slim linear connecting system, a perfect combination between tracks and LED fixtures. Its uniquely designed spot, panel and downlight modules are available for multi-task lighting requirements to the area. Emphasizing on characteristics and rapid installation of the fixtures, it also creates a simple and clean appearance. The Construct line offers flexible lighting solutions across all specifications to meet various demands. With surface, pendant, and recessed mounting options, this lighting system allows for specific customization, from residential art galleries, kitchens, foyers and offices to commercial / industrial applications of reception areas, boardrooms, retail stores and more. Below is our collection of fixtures available within this family. Product specs, our Family product brochure and asset pack are all available for download. Products with additional sizes can be seen by using the left and right arrows on select images. If you need further assistance with this product, we are available by email and through our sales reps, which you will find links to at the base of this page. download BROCHURE download PAMPHLETS download BROCHURE download PAMPHLETS Add to Cart 2000W 480V Quartz Element Accompany with: Further customize your modular lighting system with these additional items. EXT,RECESSED ALUMINUM PROFILE,68x75 EXT,SURFACE/PENDANT ALUMINUM PROFILE,50x75 EXT,SURFACE/PENDANT ALUMINUM PROFILE,50x75 Where comfort meets style Email Where To Buy Subscribe `} /> ${ parent.decodeEntities(``) } ` : ''} ${is_dummy_markup ? message_position === 'bottom' ? parent.dummy_markup(message_successIcon, message_proClass) : '' : ''} ${is_dummy_markup ? ' ' : message_position === 'bottom' ? parent.submit_response_message`${parent}${state}${message_successIcon}${message_errorIcon}${message_proClass}` : ''} ` We are designers, entrepreneurs, strategists, and awkward dancers. Products Electric Heaters Décor Plates Accessories Resources Downloads It’s Up To Hue! Custom Decor Plates Create Your Space Company About Innova Contact Innova Heating Co. 33 West Beaver Creek Road, Richmond Hill, ON L4B 1L8 1.833.3INNOVA 1.833.346.6682 Facebook Instagram Linkedin Youtube Copyright © 2021 Innova Heating Co. Choice Billing Address × 0 0 Your Cart Your cart is empty {{{ data.variation.price_html }}} {{{ data.variation.availability_html }}}