<?php use PicoFarad\Router; use PicoFarad\Response; use PicoFarad\Request; use PicoFarad\Session; use PicoFarad\Template; // Logout and destroy session Router\get_action('logout', function() { Model\User\logout(); Response\redirect('?action=login'); }); // Display form login Router\get_action('login', function() { if (Model\User\is_loggedin()) { Response\redirect('?action=unread'); } Response\html(Template\load('login', array( 'errors' => array(), 'values' => array( 'csrf' => Model\Config\generate_csrf(), ), 'databases' => Model\Database\get_list(), 'current_database' => Model\Database\select() ))); }); // Check credentials and redirect to unread items Router\post_action('login', function() { $values = Request\values(); Model\Config\check_csrf_values($values); list($valid, $errors) = Model\User\validate_login($values); if ($valid) { Response\redirect('?action=unread'); } Response\html(Template\load('login', array( 'errors' => $errors, 'values' => $values + array('csrf' => Model\Config\generate_csrf()), 'databases' => Model\Database\get_list(), 'current_database' => Model\Database\select() ))); });