mirror of
https://github.com/vichan-devel/vichan.git
synced 2024-11-27 17:00:52 +01:00
Return to page if mod clicked on a link to a moderator page but was not logged in
This commit is contained in:
parent
8d6c3d655d
commit
a655d930d0
@ -37,7 +37,7 @@
|
||||
)));
|
||||
}
|
||||
|
||||
function loginForm($error=false, $username=false) {
|
||||
function loginForm($error=false, $username=false, $redirect=false) {
|
||||
global $config;
|
||||
|
||||
if(function_exists('sql_close')) sql_close();
|
||||
@ -47,7 +47,8 @@
|
||||
'body'=>Element('login.html', Array(
|
||||
'index'=>$config['root'],
|
||||
'error'=>$error,
|
||||
'username'=>$username
|
||||
'username'=>$username,
|
||||
'redirect'=>$redirect
|
||||
)
|
||||
)
|
||||
)));
|
||||
|
15
mod.php
15
mod.php
@ -25,6 +25,8 @@
|
||||
$_POST = strip_array($_POST);
|
||||
}
|
||||
|
||||
$query = isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : '';
|
||||
|
||||
// If not logged in
|
||||
if(!$mod) {
|
||||
if(isset($_POST['login'])) {
|
||||
@ -33,11 +35,11 @@
|
||||
!isset($_POST['password']) ||
|
||||
empty($_POST['username']) ||
|
||||
empty($_POST['password'])
|
||||
) loginForm($config['error']['invalid'], $_POST['username']);
|
||||
) loginForm($config['error']['invalid'], $_POST['username'], '?' . $query);
|
||||
|
||||
|
||||
if(!login($_POST['username'], $_POST['password']))
|
||||
loginForm($config['error']['invalid'], $_POST['username']);
|
||||
loginForm($config['error']['invalid'], $_POST['username'], '?' . $query);
|
||||
|
||||
modLog("Logged in.");
|
||||
|
||||
@ -46,16 +48,17 @@
|
||||
setCookies();
|
||||
|
||||
// Redirect
|
||||
header('Location: ?' . $config['mod']['default'], true, $config['redirect_http']);
|
||||
if(isset($_POST['redirect']))
|
||||
header('Location: ' . $_POST['redirect'], true, $config['redirect_http']);
|
||||
else
|
||||
header('Location: ?' . $config['mod']['default'], true, $config['redirect_http']);
|
||||
|
||||
// Close connection
|
||||
sql_close();
|
||||
} else {
|
||||
loginForm();
|
||||
loginForm(false, false, '?' . $query);
|
||||
}
|
||||
} else {
|
||||
$query = isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : '';
|
||||
|
||||
// A sort of "cache"
|
||||
// Stops calling preg_quote and str_replace when not needed; only does it once
|
||||
$regex = Array(
|
||||
|
@ -1,6 +1,7 @@
|
||||
<center>
|
||||
<center>
|
||||
{error?<h2>{error}</h2>}
|
||||
<form action="" method="post">
|
||||
{redirect?<input type="hidden" name="redirect" value="{redirect}" />}
|
||||
<table style="margin-top:25px;">
|
||||
<tr>
|
||||
<th>
|
||||
|
Loading…
Reference in New Issue
Block a user