%s', $input); try { require_once 'login/mailpass.inc.php'; if ( $found = mailtoken($input) ) { $message = "Er is een e-mail verstuurd naar $inputq."; } else { http_response_code(404); $message = "E-mailadres $inputq is nergens ingesteld."; } } catch (Exception $e) { http_response_code(500); $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 { http_response_code(403); $message = 'Ongeldige gebruikersnaam of wachtwoord.'; } } elseif (isset($_GET['logout'])) { setcookie('login', '', time(), '/'); # expire immediately $User = NULL; $message = "Je bent uitgelogd. Graag tot ziens!"; } if (!$User or !$User->login) { $Page->title = 'Inloggen'; if (isset($_REQUEST['goto'])) { if (empty($message)) http_response_code(403); $target = ltrim($_REQUEST['goto'], '/'); $target = new ArchiveArticle("$target.html"); if ($target and $target->handler == 'melding') { # run forbidden handler to determine metadata #TODO: generic solution $caller = $Page; $Page = $target; ob_start(); include "./{$target->handler}/index.php"; ob_end_clean(); $Page = $caller; } if ($target->title) { $Page->title .= ' voor ' . $target->title; } $Page->image = $target->image; $Page->teaser = $target->teaser; } ob_start(); require_once 'login/form.inc.php'; $Page->raw = ob_get_clean(); $Page->place['warn'] = $message; return TRUE; } if (isset($_REQUEST['goto'])) { $target = ltrim($_REQUEST['goto'], '/'); header("Location: /$target"); http_response_code(302); exit; } if (isset($Page->raw)) { print $Page->raw; } if (empty($Page->path) and $User->admin) { include_once 'login/admin.html'; } return;