Modify frontend scripts and HTML to replace product images, descriptions, and category buttons with numbered boxes on the main and order pages. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 375ec6d3-d5af-4f82-ab81-5c60fd4a86a3 Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Event-Id: b4050a62-9d16-40a7-9418-9ae14f0e5748 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/147e665c-8c0d-48ec-b0ad-fdc89cd4460f/375ec6d3-d5af-4f82-ab81-5c60fd4a86a3/RIQnnSl Replit-Helium-Checkpoint-Created: true
62 lines
2.1 KiB
JavaScript
62 lines
2.1 KiB
JavaScript
(() => {
|
|
const ignoredMessages = [
|
|
'Did not receive CSRF token',
|
|
"Cannot read properties of undefined (reading 'f_sku_values_3dr')",
|
|
];
|
|
|
|
window.addEventListener('unhandledrejection', event => {
|
|
const message = event.reason && (event.reason.message || String(event.reason));
|
|
if (ignoredMessages.some(text => message && message.includes(text))) {
|
|
event.preventDefault();
|
|
}
|
|
});
|
|
|
|
function simplifyMenuBoxes() {
|
|
const path = window.location.pathname;
|
|
const isMainPage = path === '/' || path.endsWith('/index.html');
|
|
const isOrderPage = path.endsWith('/order.html');
|
|
if (!isMainPage && !isOrderPage) return;
|
|
|
|
const limit = isOrderPage ? 8 : 4;
|
|
const tabs = document.querySelector('.w-tabs');
|
|
if (!tabs) return;
|
|
|
|
const tabMenu = tabs.querySelector('.tab-menu-round');
|
|
if (tabMenu) tabMenu.remove();
|
|
|
|
const items = Array.from(tabs.querySelectorAll('.menu-item'));
|
|
const selectedItems = items.slice(0, limit);
|
|
const firstPane = tabs.querySelector('.w-tab-pane');
|
|
const firstList = firstPane && firstPane.querySelector('.w-dyn-items');
|
|
if (!firstPane || !firstList) return;
|
|
|
|
tabs.querySelectorAll('.w-tab-pane').forEach((pane, index) => {
|
|
if (index === 0) {
|
|
pane.classList.add('w--tab-active');
|
|
pane.style.display = 'block';
|
|
} else {
|
|
pane.remove();
|
|
}
|
|
});
|
|
|
|
firstList.innerHTML = '';
|
|
selectedItems.forEach((item, index) => {
|
|
item.querySelectorAll('.food-image-square, .paragraph').forEach(element => element.remove());
|
|
item.querySelectorAll('.quantity').forEach(element => {
|
|
element.type = 'hidden';
|
|
});
|
|
const title = item.querySelector('h6');
|
|
if (title) title.textContent = `box${index + 1}`;
|
|
item.querySelectorAll('a[href]').forEach(link => link.removeAttribute('href'));
|
|
firstList.appendChild(item);
|
|
});
|
|
|
|
firstPane.querySelectorAll('.pagination').forEach(element => element.remove());
|
|
}
|
|
|
|
if (document.readyState === 'loading') {
|
|
document.addEventListener('DOMContentLoaded', simplifyMenuBoxes);
|
|
} else {
|
|
simplifyMenuBoxes();
|
|
}
|
|
})(); |