Files
WaifuBoard/src/modules/navigation-handler.js
itsskaiya aa5ac304bd Updated UI style to be more modern
Updated headless browser to get images, videos and gifs!
2025-11-20 14:25:23 -05:00

50 lines
1.3 KiB
JavaScript

import { loadFavorites } from '../favorites/favorites-loader.js';
export function showPage(pageId, domRefs, callbacks, state) {
const {
browseButton,
favoritesButton,
settingsButton,
pageTitle,
headerContext,
favoritesGallery
} = domRefs;
const { updateHeader, applyLayoutToGallery, createImageCard } = callbacks;
const { currentLayout } = state;
document.querySelectorAll('.page').forEach((page) => {
page.classList.add('hidden');
});
document.querySelectorAll('.nav-button').forEach((tab) => {
tab.classList.remove('active');
});
const activePage = document.getElementById(pageId);
if (activePage) {
activePage.classList.remove('hidden');
}
let activeTab;
if (pageId === 'browse-page') {
activeTab = browseButton;
pageTitle.textContent = 'Browse';
updateHeader();
} else if (pageId === 'favorites-page') {
activeTab = favoritesButton;
pageTitle.textContent = 'Favorites';
headerContext.textContent = '';
loadFavorites(favoritesGallery, currentLayout, applyLayoutToGallery, createImageCard);
} else if (pageId === 'settings-page') {
activeTab = settingsButton;
pageTitle.textContent = 'Settings';
headerContext.textContent = '';
}
if (activeTab) {
activeTab.classList.add('active');
}
}