page: redirect location option in abort()
[minimedit.git] / login / post / index.php
index 9578d3cc01d8ba41c175ac18ac0e8f2f5c24bb71..23c445146e95820b5b2612967eecf459303c2f63 100644 (file)
@@ -1,5 +1,11 @@
 <?php
-if ($User->admin('user') and $username = @$_REQUEST['login']) {
+if (!$User) return;
+
+if (!$User->login) {
+       $target = urlencode($_SERVER['REQUEST_URI']);
+       abort("/login?goto=$target", 303);
+}
+elseif ($User->admin('user') and $username = @$_REQUEST['login']) {
        try {
                $user = new User("profile/$username");
        }
@@ -7,22 +13,22 @@ if ($User->admin('user') and $username = @$_REQUEST['login']) {
                printf('<p class=warn>%s</p>', $e->getMessage());
                return;
        }
-       $Article->title = $user->login . ': ' . $Article->title;
+       $Page->title = $user->login . ': ' . $Page->title;
 }
 else {
        $user = $User;
 }
 
-$Place['login/name'] = $user->name ?: 'bewoner';
-$Place['user'] = $user->login;
+$Page->place['login/name'] = $user->name ?: 'bewoner';
+$Page->place['user'] = $user->login;
 if ( $password = trim(@file_get_contents("{$user->dir}/.passwd")) ) {
        if (substr($password, 0, 1) == '$') {
                $password = NULL; // hashed
        }
-       $Place['pass'] = htmlspecialchars($password) ?: '<em>zelf ingesteld</em>';
+       $Page->place['pass'] = htmlspecialchars($password) ?: '<em>zelf ingesteld</em>';
 }
 else {
-       $Place['pass'] = '<em>onbekend</em>';
+       $Page->place['pass'] = '<em>onbekend</em>';
 }
 
-print '<p class="nav right"><a href="javascript:window.print()">Print</a></p>'."\n";
+print '<aside class="nav"><a href="javascript:window.print()">Print</a></aside>'."\n";