<?php namespace HashOver; // Copyright (C) 2018-2019 Jacob Barkdull // This file is part of HashOver. // // HashOver is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public License as // published by the Free Software Foundation, either version 3 of the // License, or (at your option) any later version. // // HashOver is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. // // You should have received a copy of the GNU Affero General Public License // along with HashOver. If not, see <http://www.gnu.org/licenses/>. try { // Do some standard HashOver setup work require (realpath ('../../backend/standard-setup.php')); // View setup require (realpath ('../view-setup.php')); // Check if the user submitted login information if (!empty ($_POST['name']) and !empty ($_POST['password'])) { // If so, attempt to log them in $hashover->login->setAdminLogin (); // Check if user is admin if ($hashover->login->isAdmin () === true) { // If so, login as admin $hashover->login->adminLogin (); } else { // If not, logout $hashover->login->clearLogin (); // Sleep 5 seconds sleep (5); } // And redirect user to desired view redirect (); } // Check if we're logging out if (isset ($_GET['logout'])) { // If so, attempt to log the user out $hashover->login->clearLogin (); // Get path to main admin page $admin_path = $hashover->setup->getHttpPath ('admin'); // And redirect user to main admin page redirect ($admin_path . '/'); } // Template data $template = array ( 'title' => $hashover->locale->text['login'], 'sub-title' => $hashover->locale->text['admin-required'], 'name' => $hashover->locale->text['name'], 'password' => $hashover->locale->text['password'], 'login' => $hashover->locale->text['login'] ); // Load and parse HTML template echo $hashover->templater->parseTemplate ('login.html', $template); } catch (\Exception $error) { echo Misc::displayException ($error); }