Compare commits

..

2 Commits

Author SHA1 Message Date
80232b8099 Merge pull request 'fixed dass er bei essen bzw trinken bleibt' (#5) from dev into main
All checks were successful
Build, Publish Docker Image, and Deploy to Kubernetes / build_and_push (push) Successful in 15s
Build, Publish Docker Image, and Deploy to Kubernetes / deploy_to_k8s (push) Successful in 11s
Reviewed-on: #5
2025-06-16 07:57:05 +00:00
Jonas Hinterdorfer
189fff2c34 fixed dass er bei essen bzw trinken bleibt 2025-06-16 09:56:49 +02:00

View File

@ -6,7 +6,11 @@ import './HomePage.css';
const HomePage: React.FC = () => { const HomePage: React.FC = () => {
const [productsData, setProductsData] = useState<ProductsData>({ food: [], drinks: [] }); const [productsData, setProductsData] = useState<ProductsData>({ food: [], drinks: [] });
const [activeTab, setActiveTab] = useState<'food' | 'drinks'>('drinks'); const [activeTab, setActiveTab] = useState<'food' | 'drinks'>(() => {
// Initialize from session storage, default to 'drinks' if not available
const savedTab = sessionStorage.getItem('kelnerRechnerActiveTab');
return (savedTab === 'food' || savedTab === 'drinks') ? savedTab as 'food' | 'drinks' : 'drinks';
});
useEffect(() => { useEffect(() => {
import('../data/products.json') import('../data/products.json')
@ -16,6 +20,12 @@ const HomePage: React.FC = () => {
.catch(error => console.error('Failed to load products:', error)); .catch(error => console.error('Failed to load products:', error));
}, []); }, []);
// Handler for tab changes that also updates session storage
const handleTabChange = (tab: 'food' | 'drinks') => {
setActiveTab(tab);
sessionStorage.setItem('kelnerRechnerActiveTab', tab);
};
return ( return (
<div className="home-page"> <div className="home-page">
<header className="app-header"> <header className="app-header">
@ -27,13 +37,13 @@ const HomePage: React.FC = () => {
<div className="category-tabs"> <div className="category-tabs">
<button <button
className={activeTab === 'drinks' ? 'active' : ''} className={activeTab === 'drinks' ? 'active' : ''}
onClick={() => setActiveTab('drinks')} onClick={() => handleTabChange('drinks')}
> >
Getränke Getränke
</button> </button>
<button <button
className={activeTab === 'food' ? 'active' : ''} className={activeTab === 'food' ? 'active' : ''}
onClick={() => setActiveTab('food')} onClick={() => handleTabChange('food')}
> >
Essen Essen
</button> </button>