consistently use empty() to check user existence
[minimedit.git] / login.php
index c83534cbd2d6946f1be7cc44c829e840a5f3c5b5..9c5f06ecff8cd4b31a75ce26bcd710dfe22117e2 100644 (file)
--- a/login.php
+++ b/login.php
@@ -1,17 +1,34 @@
 <?php
-require 'auth.inc.php';
+$message = NULL;
 
-if (!$editable) {
-       require 'logout.php';
-       exit;
+if (isset($_POST['login'])) {
+       if ($User = login($_POST['login'], $_POST['pass'])) {
+               setcookie('login', $User['auth'], 0, '/');
+       }
+       else {
+               $message = 'Ongeldige gebruikersnaam of wachtwoord.';
+       }
+}
+elseif (isset($_GET['logout'])) {
+       setcookie('login', '', time(), '/'); # expire immediately
+       $User = NULL;
+       $message = 'Uitgelogd.';
 }
 
-include 'head.inc.php';
-?>
-
-<h2>Sitebeheer</h2>
+if (empty($User)) {
+       ob_clean();
+       require_once 'login.inc.php';
+       return TRUE;
+}
 
-<p>
-Welkom, je bent ingelogd als <em><?php echo $User; ?></em>. Onderaan elke pagina staat een link om inhoud aan te passen.
-</p>
+if (isset($_GET['goto'])) {
+       ob_clean();
+       $target = ltrim($_GET['goto'], '/');
+       header("Location: /$target");
+       http_response_code(302);
+       exit;
+}
+?>
+<p>Ingelogd als <em><?php print $User['name']; ?></em>.</p>
 
+<p class="nav"><a href="?logout">Uitloggen</a></p>