Widok - koncept wyświetlania menu.
This commit is contained in:
@@ -665,19 +665,79 @@ window.switchTab = function (tabName) {
|
||||
document.getElementById('navStatus').classList.remove('active');
|
||||
document.getElementById('navMenu').classList.remove('active');
|
||||
|
||||
const header = document.getElementById('mainHeader');
|
||||
const greetingBanner = document.getElementById('greetingBanner');
|
||||
|
||||
// 2. Nadaj .active wybranym elementom
|
||||
if (tabName === 'status') {
|
||||
const view = document.getElementById('statusView');
|
||||
view.classList.remove('hidden');
|
||||
view.classList.add('active');
|
||||
document.getElementById('navStatus').classList.add('active');
|
||||
if (header) header.style.display = '';
|
||||
// Show greeting banner only if it was rendered initially or has content
|
||||
if (greetingBanner && greetingBanner.innerHTML.trim() !== '') greetingBanner.style.display = '';
|
||||
}
|
||||
else if (tabName === 'menu') {
|
||||
const view = document.getElementById('menuView');
|
||||
view.classList.remove('hidden');
|
||||
view.classList.add('active');
|
||||
document.getElementById('navMenu').classList.add('active');
|
||||
if (header) header.style.display = 'none';
|
||||
if (greetingBanner) greetingBanner.style.display = 'none';
|
||||
}
|
||||
window.scrollTo(0, 0);
|
||||
};
|
||||
|
||||
// --- MENU LOGIC ---
|
||||
window.filterMenu = function() {
|
||||
const query = document.getElementById('menuSearchInput').value.toLowerCase();
|
||||
const categories = document.querySelectorAll('.rm-category');
|
||||
|
||||
categories.forEach(category => {
|
||||
let hasVisibleItems = false;
|
||||
const items = category.querySelectorAll('.rmc-position');
|
||||
|
||||
items.forEach(item => {
|
||||
const title = item.querySelector('.rmc-title h4').textContent.toLowerCase();
|
||||
if (title.includes(query)) {
|
||||
item.style.display = '';
|
||||
hasVisibleItems = true;
|
||||
} else {
|
||||
item.style.display = 'none';
|
||||
}
|
||||
});
|
||||
|
||||
if (hasVisibleItems) {
|
||||
category.style.display = '';
|
||||
} else {
|
||||
category.style.display = 'none';
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
window.showCategory = function(categoryId) {
|
||||
document.querySelectorAll('.menu-categories-nav a').forEach(a => a.classList.remove('active'));
|
||||
|
||||
const clickedLink = document.querySelector(`.menu-categories-nav a[data-category-badge="${categoryId}"]`);
|
||||
if (clickedLink) {
|
||||
clickedLink.classList.add('active');
|
||||
clickedLink.scrollIntoView({ behavior: 'smooth', block: 'nearest', inline: 'center' });
|
||||
}
|
||||
|
||||
const categories = document.querySelectorAll('.rm-category');
|
||||
categories.forEach(cat => {
|
||||
if (categoryId === 0) {
|
||||
cat.style.display = '';
|
||||
} else {
|
||||
const catId = parseInt(cat.getAttribute('data-cat-id'), 10);
|
||||
if (catId === categoryId) {
|
||||
cat.style.display = '';
|
||||
} else {
|
||||
cat.style.display = 'none';
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
window.selectPayment = function (method) {
|
||||
|
||||
Reference in New Issue
Block a user