<?php
+if ($Page->api) return;
$message = NULL;
if (isset($_POST['mail'])) {
$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.";
}
login_setcookie();
}
else {
+ http_response_code(403);
$message = 'Ongeldige gebruikersnaam of wachtwoord.';
}
}
$message = "Je bent uitgelogd. Graag tot ziens!";
}
-if (empty($User)) {
- ob_clean();
+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");
+ $target->index; # run forbidden handler to determine metadata
+
+ if ($target->title) {
+ $Page->title .= ' voor ' . $target->title;
+ }
+ $Page->image = $target->image;
+ $Page->teaser = $target->teaser;
+ }
+ ob_start();
require_once 'login/form.inc.php';
- $Place['warn'] = $message;
+ $Page->raw = ob_get_clean();
+ $Page->place['warn'] = $message;
return TRUE;
}
-if (isset($_GET['goto'])) {
- ob_clean();
- $target = ltrim($_GET['goto'], '/');
- header("Location: /$target");
- http_response_code(302);
- exit;
+if (isset($_REQUEST['goto'])) {
+ $target = ltrim($_REQUEST['goto'], '/');
+ abort("/$target", 302);
}
-if (empty($Args) and !empty($User['admin'])) {
+if (isset($Page->raw)) {
+ print $Page->raw;
+}
+if (empty($Page->path) and $User->admin) {
include_once 'login/admin.html';
}
+return;