(function () { var PADDING_TOP = '40px'; var PADDING_BOTTOM = '40px'; var MARKER_TEXT = 'here for a reason'; function buildCss() { return ( '.container.footer {' + ' padding-top: var(--baseTemplateFooter-padding-top, ' + PADDING_TOP + ');' + ' padding-bottom: var(--baseTemplateFooter-padding-bottom, ' + PADDING_BOTTOM + ');' + '}' + '@media (min-width: 768px) {' + '#cartDivMobile {' + 'display: none;' + '}' + '}' + '.baseTemplateFooterHidden {' + ' display: none !important;' + '}' ); } function addStyleSheet(styles) { var stylesheet = document.createElement('style'); stylesheet.setAttribute('data-basetemplate', 'footer-cleanup'); stylesheet.appendChild(document.createTextNode(styles)); document.head.appendChild(stylesheet); } function findMarkerComment(container) { var walker = document.createTreeWalker(container, NodeFilter.SHOW_COMMENT, null, false); var node; while ((node = walker.nextNode())) { if (node.nodeValue.indexOf(MARKER_TEXT) !== -1) return node; } return null; } function isBeforeMarker(node, marker) { if (!marker) return false; var position = node.compareDocumentPosition(marker); return !!(position & Node.DOCUMENT_POSITION_FOLLOWING); } function findCopyrightNode(container) { var walker = document.createTreeWalker(container, NodeFilter.SHOW_TEXT, null, false); var node; while ((node = walker.nextNode())) { if (node.nodeValue.indexOf('Copyright') !== -1) return node; } return null; } function findCreditLink(container, marker) { var links = Array.from(container.querySelectorAll('a.footer')); for (var i = 0; i < links.length; i++) { if (!isBeforeMarker(links[i], marker)) return links[i]; } return null; } function isBetween(node, start, end) { if (!start || !end) return false; var afterStart = start.compareDocumentPosition(node) & Node.DOCUMENT_POSITION_FOLLOWING; var beforeEnd = node.compareDocumentPosition(end) & Node.DOCUMENT_POSITION_FOLLOWING; return !!(afterStart && beforeEnd); } function hideMenuLinks(container, marker) { var links = Array.from(container.querySelectorAll('a.footer')); links.forEach(function (link) { if (isBeforeMarker(link, marker)) { link.classList.add('baseTemplateFooterHidden'); } }); } function isPipeSeparator(text) { var nbsp = String.fromCharCode(160); var stripped = text.split(nbsp).join(' ').trim(); return stripped === '' || stripped === '|'; } function hidePipeCharacters(container, marker) { var nodes = Array.from(container.childNodes); nodes.forEach(function (node) { if (node.nodeType !== 3) return; if (!isBeforeMarker(node, marker)) return; if (!isPipeSeparator(node.nodeValue)) return; var span = document.createElement('span'); span.className = 'baseTemplateFooterHidden'; span.textContent = node.nodeValue; node.parentNode.replaceChild(span, node); }); } function hideAllBreaks(container, copyrightNode, creditLink) { var breaks = Array.from(container.querySelectorAll('br')); breaks.forEach(function (br) { if (isBetween(br, copyrightNode, creditLink)) return; // keep this one br.classList.add('baseTemplateFooterHidden'); }); } function hideSpacerDiv(container) { var divs = Array.from(container.querySelectorAll('div')); divs.forEach(function (div) { var style = div.getAttribute('style') || ''; if (style.indexOf('height: 10px') !== -1 || style.indexOf('height:10px') !== -1) { div.classList.add('baseTemplateFooterHidden'); } }); } function fixCopyrightYear(container) { var walker = document.createTreeWalker(container, NodeFilter.SHOW_TEXT, null, false); var node; while ((node = walker.nextNode())) { if (node.nodeValue.indexOf('Copyright') !== -1) { node.nodeValue = node.nodeValue .split('2007-').join('') .split('2007 - ').join('') .split('2007- ').join('') .split('2007 -').join(''); break; } } } function run() { var container = document.querySelector('.container.footer'); if (!container) return false; var marker = findMarkerComment(container); if (!marker) return false; // comment not found, abort entirely, don't touch anything var copyrightNode = findCopyrightNode(container); var creditLink = findCreditLink(container, marker); addStyleSheet(buildCss()); hideMenuLinks(container, marker); hidePipeCharacters(container, marker); hideAllBreaks(container, copyrightNode, creditLink); hideSpacerDiv(container); fixCopyrightYear(container); return true; } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', run); } else { run(); } })();