import { useState } from 'react' const VALID_USER = 'tkb' const VALID_PASS = 'sluzby' const VIEWER_USER = 'prohlizec' const VIEWER_PASS = 'pohled' const CIS_USER = 'cis' const CIS_PASS = 'import' const AUTH_KEY = 'tkb_auth' const ROLE_KEY = 'tkb_role' export type UserRole = 'editor' | 'viewer' | 'cis' export function isAuthenticated(): boolean { return localStorage.getItem(AUTH_KEY) === 'true' } export function getAuthRole(): UserRole { const r = localStorage.getItem(ROLE_KEY) if (r === 'viewer') return 'viewer' if (r === 'cis') return 'cis' return 'editor' } function setAuthenticated(role: UserRole): void { localStorage.setItem(AUTH_KEY, 'true') localStorage.setItem(ROLE_KEY, role) } export function clearAuthentication(): void { localStorage.removeItem(AUTH_KEY) localStorage.removeItem(ROLE_KEY) } interface LoginProps { onLogin: (role: UserRole) => void } export function Login({ onLogin }: LoginProps) { const [username, setUsername] = useState('') const [password, setPassword] = useState('') const [error, setError] = useState(false) const handleSubmit = (e: React.FormEvent) => { e.preventDefault() if (username === VALID_USER && password === VALID_PASS) { setAuthenticated('editor') onLogin('editor') } else if (username === VIEWER_USER && password === VIEWER_PASS) { setAuthenticated('viewer') onLogin('viewer') } else if (username === CIS_USER && password === CIS_PASS) { setAuthenticated('cis') onLogin('cis') } else { setError(true) setTimeout(() => setError(false), 3000) } } return (