db = new SQLiteAdapter(); } public function showLoginForm() { require PROJECT_ROOT . '/views/auth/login.php'; } public function login() { $username = $_POST['username'] ?? ''; $password = $_POST['password'] ?? ''; if (empty($username) || empty($password)) { $error = 'Username and password are required.'; require PROJECT_ROOT . '/views/auth/login.php'; return; } $user = new User($this->db); if ($user->login($username, $password)) { header('Location: /dashboard'); exit; } else { $error = 'Login failed. Please check your credentials.'; require PROJECT_ROOT . '/views/auth/login.php'; } } public function showRegistrationForm() { require PROJECT_ROOT . '/views/auth/register.php'; } public function register() { $username = $_POST['username'] ?? ''; $password = $_POST['password'] ?? ''; $email = $_POST['email'] ?? ''; if (empty($username) || empty($password) || empty($email)) { $error = 'All fields are required.'; require PROJECT_ROOT . '/views/auth/register.php'; return; } $user = new User($this->db); if ($user->register($username, $password, $email)) { header('Location: /'); exit; } else { $error = 'Registration failed. Please try again.'; require PROJECT_ROOT . '/views/auth/register.php'; } } }