let cseSetupPartnerIcons = function() {}; let id_ac89994feb274521afaa7ac4a6bf1774_openWidgetModal = function() {}; let loadPartDiv = function() {}; (function() { const origin = window.location.origin; let allowed = false; for (let loc of 'gopart.com'.split(',')) { try { if (RegExp(loc).test(origin)) { allowed = true; } } catch(e) { // do nothing } } if (!allowed) { return; } const style = document.createElement('style'); const wrapper = document.createElement('div'); wrapper.setAttribute("id", "id_ac89994feb274521afaa7ac4a6bf1774_wrapper"); wrapper.innerHTML = `
`; style.innerHTML = ` .id_ac89994feb274521afaa7ac4a6bf1774-icon-wrapper { width: 100%; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; cursor: pointer; min-height: 34px; max-width: fit-content; } .id_ac89994feb274521afaa7ac4a6bf1774-icon-wrapper .icon-text { display: inline-block; font-size: 12px; max-width: 145px; vertical-align: middle; color: #000000; margin-left: 5px; } .id_ac89994feb274521afaa7ac4a6bf1774-icon-wrapper .partner-icon, .id_ac89994feb274521afaa7ac4a6bf1774-icon-wrapper .partner-3D { display: inline-block; vertical-align: middle; color: #659900; } .id_ac89994feb274521afaa7ac4a6bf1774-icon-wrapper svg { vertical-align: middle; } #id_ac89994feb274521afaa7ac4a6bf1774_wrapper .backdrop { position: fixed; display: block; z-index: 999999; left: 0px; top: 0px; width: 100%; height: 100%; text-align: center; background-color: rgba(51, 51, 51, 0.25); } #id_ac89994feb274521afaa7ac4a6bf1774_wrapper .overlay-modal { position: relative; display: inline-block; background-color: #fff; padding: 0; top: 4%; margin: 0px auto; box-shadow: 0 0 5px rgba(17,17,17,0.2); width: min(900px, 100vw); height: 620px; display: flex; align-items: center; justify-content: center; @media screen and (min-height: 800px) { top: 10%; } } #id_ac89994feb274521afaa7ac4a6bf1774_wrapper .widget-header { color: #111111; height: 130px; width: 100%; position: absolute; top: 0; left: 0; background: #e7f6fd; background-image: url('https://media.componentsearchengine.com/images/headline-background@2x.webp?v=0.70.2'), linear-gradient(#E7F6FD, rgba(255, 255, 255, 0)); border-bottom-color: #ebebeb; text-align: left; line-height: 1.4; } #id_ac89994feb274521afaa7ac4a6bf1774_wrapper .widget-header h1 { font-size: 14px; display: inline-block; margin: 0; padding: 10px 60px 10px 20px; font-family: "Source Code Pro",monospace; font-weight: 700; letter-spacing: -1px; } #id_ac89994feb274521afaa7ac4a6bf1774_wrapper .widget-header .action-buttons { position: absolute; top: 10px; right: 20px; font-size: 16px; } #id_ac89994feb274521afaa7ac4a6bf1774_wrapper .widget-header .fa-arrow-left { margin-right: 10px; } #id_ac89994feb274521afaa7ac4a6bf1774_wrapper .widget-header i { cursor: pointer; } #id_ac89994feb274521afaa7ac4a6bf1774_wrapper iframe { border: none; width: 100%; height: calc(100% - 60px); top: 10px; position: relative; z-index: 1; } .id_ac89994feb274521afaa7ac4a6bf1774-partner-icon-wrapper { display: inline-block; } `; document.head.appendChild(style); const fontawesome = document.createElement('link'); fontawesome.rel = 'stylesheet'; fontawesome.href = 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css'; fontawesome.crossOrigin = 'anonymous'; document.head.appendChild(fontawesome); if (document.body) { appendBody(); } else { const observer = new MutationObserver(function() { if (document.body) { appendBody(); observer.disconnect(); } }); observer.observe(document.documentElement, {childList: true}); } let returnUrl = ''; function appendBody() { document.body.appendChild(wrapper); document.getElementById('id_ac89994feb274521afaa7ac4a6bf1774_partnerWidgetModal').addEventListener('click', function(event) { if (!event.target.closest('#id_ac89994feb274521afaa7ac4a6bf1774_partnerWidgetContent')) { closeWidgetModal(); } }); document.querySelector('#id_ac89994feb274521afaa7ac4a6bf1774_partnerWidgetModal .j-icon-close').addEventListener('click', closeWidgetModal); document.querySelector('#id_ac89994feb274521afaa7ac4a6bf1774_partnerWidgetModal .j-icon-back').addEventListener('click', function() { const iframe = document.getElementById('id_ac89994feb274521afaa7ac4a6bf1774_cseIframe'); if (iframe.contentWindow) { iframe.contentWindow.postMessage('cseCheckBackClick', new URL(iframe.src).origin); } else { if (returnUrl.length) { iframe.src = returnUrl; returnUrl = ''; } else { closeWidgetModal(); } } }); document.onkeydown = function(event) { event = event || window.event; const partnerWidgetModal = document.getElementById('id_ac89994feb274521afaa7ac4a6bf1774_partnerWidgetModal'); if (event.keyCode === 27 && partnerWidgetModal.style.display == 'block') { closeWidgetModal(); } }; } if (!window.addEventListener) { window.attachEvent('onmessage', eventHandler); } else { window.addEventListener('message', eventHandler, false); } function closeWidgetModal() { const partnerWidgetModal = document.getElementById('id_ac89994feb274521afaa7ac4a6bf1774_partnerWidgetModal'); partnerWidgetModal.querySelector('iframe').src = 'about:blank'; partnerWidgetModal.style.display = 'none'; returnUrl = ''; } function eventHandler(event) { if (event?.data?.message === 'cseSessionToken') { localStorage.setItem('cseToken', event.data.token); } else if (event?.data?.message === 'cseReturnUrl') { returnUrl = event.data.url; } else if (event?.data?.message === 'cseBackClick') { if (returnUrl.length) { document.getElementById('id_ac89994feb274521afaa7ac4a6bf1774_cseIframe').src = returnUrl; returnUrl = ''; } else { closeWidgetModal(); } } } cseSetupPartnerIcons = function (partNumber, manufacturer, status, have3d, quality, preview, currentScript) { let cseIconHtml = `'; currentScript.insertAdjacentHTML('afterend', cseIconHtml); const handleClick = (event) => id_ac89994feb274521afaa7ac4a6bf1774_openWidgetModal(event.currentTarget, partNumber.replace(/\\/g, '\\\\'), manufacturer.replace(/\\/g, '\\\\')) currentScript.nextElementSibling.addEventListener('click', handleClick); } id_ac89994feb274521afaa7ac4a6bf1774_openWidgetModal = function(triggerElement, partNumber, manufacturer) { const partnerWidgetModal = document.getElementById('id_ac89994feb274521afaa7ac4a6bf1774_partnerWidgetModal'); let src = partnerWidgetModal.querySelector('iframe').getAttribute('data-src') + encodeURIComponent(partNumber) + '/' + encodeURIComponent(manufacturer) + '?key=7ae861cd9b628685d0955b375a7fe8a8'; const token = localStorage.getItem('cseToken'); if (token) { src += '&s=' + encodeURIComponent(token); } partnerWidgetModal.querySelector('iframe').src = src; partnerWidgetModal.style.display = 'block'; } // backwards compatibility loadPartDiv = function(manufacturer,partNumber) { id_ac89994feb274521afaa7ac4a6bf1774_openWidgetModal(null, partNumber, manufacturer); } })();