<?php
-require 'auth.inc.php';
+$message = NULL;
-if (!$editable) {
- require 'logout.php';
+if (isset($_POST['mail'])) {
+ $input = trim($_POST['mail']);
+ $inputq = sprintf('<em>%s</em>', $input);
+ try {
+ require_once 'login/mailpass.inc.php';
+ if ( $found = mailtoken($input) ) {
+ $message = "Er is een e-mail verstuurd naar $inputq.";
+ }
+ else {
+ $message = "E-mailadres $inputq is nergens ingesteld.";
+ }
+ }
+ catch (Exception $e) {
+ $message = "E-mail kon niet verstuurd worden."
+ . " Probeer het later nog eens of neem contact op.";
+ }
+}
+elseif (isset($_POST['login'])) {
+ if ($User = login($_POST['login'], $_POST['pass'])) {
+ login_setcookie();
+ }
+ else {
+ $message = 'Ongeldige gebruikersnaam of wachtwoord.';
+ }
+}
+elseif (isset($_GET['logout'])) {
+ setcookie('login', '', time(), '/'); # expire immediately
+ $User = NULL;
+ $message = "Je bent uitgelogd. Graag tot ziens!";
+}
+
+if (empty($User)) {
+ ob_clean();
+ require_once 'login/form.inc.php';
+ $part = ['warn' => $message];
+ print getoutput($part);
+ return TRUE;
+}
+
+if (isset($_GET['goto'])) {
+ ob_clean();
+ $target = ltrim($_GET['goto'], '/');
+ header("Location: /$target");
+ http_response_code(302);
exit;
}
-http_response_code(307);
-header('Location: /');
+$part = [
+ 'user' => $User['name'],
+];
+print getoutput($part);
+if (empty($Args) and !empty($User['admin'])) {
+ include_once 'login/admin.html';
+ include_once 'login/admin.php';
+}