aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes
diff options
context:
space:
mode:
Diffstat (limited to 'phpBB/includes')
-rw-r--r--phpBB/includes/acp/acp_main.php9
-rw-r--r--phpBB/includes/session.php10
2 files changed, 19 insertions, 0 deletions
diff --git a/phpBB/includes/acp/acp_main.php b/phpBB/includes/acp/acp_main.php
index be337a20f3..7498ab2aef 100644
--- a/phpBB/includes/acp/acp_main.php
+++ b/phpBB/includes/acp/acp_main.php
@@ -61,6 +61,14 @@ class acp_main
if ($action)
{
+ if ($action === 'admlogout')
+ {
+ $user->unset_admin();
+ $redirect_url = append_sid("{$phpbb_root_path}index.$phpEx");
+ meta_refresh(3, $redirect_url);
+ trigger_error($user->lang['ADM_LOGGED_OUT'] . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], '<a href="' . $redirect_url . '">', '</a>'));
+ }
+
if (!confirm_box(true))
{
switch ($action)
@@ -108,6 +116,7 @@ class acp_main
{
switch ($action)
{
+
case 'online':
if (!$auth->acl_get('a_board'))
{
diff --git a/phpBB/includes/session.php b/phpBB/includes/session.php
index 435618f7ff..828739115f 100644
--- a/phpBB/includes/session.php
+++ b/phpBB/includes/session.php
@@ -1332,6 +1332,16 @@ class session
}
return true;
}
+
+
+ function unset_admin()
+ {
+ global $db;
+ $sql = 'UPDATE ' . SESSIONS_TABLE . '
+ SET session_admin = 0
+ WHERE session_id = \'' . $db->sql_escape($this->session_id) . '\'';
+ $db->sql_query($sql);
+ }
}