1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-08 17:56:52 +02:00

Enable per session view online, change layout, potential for links to terms and privacy policy

git-svn-id: file:///svn/phpbb/trunk@3623 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
Paul S. Owen
2003-03-09 16:11:08 +00:00
parent cd9b3af2b5
commit 5cdf2b0b59
7 changed files with 138 additions and 116 deletions

View File

@@ -39,7 +39,7 @@ if ($config['gzip_compress'])
if ($user->data['user_id'] != ANONYMOUS)
{
$u_login_logout = 'login.'.$phpEx. $SID . '&logout=true';
$l_login_logout = $user->lang['LOGOUT'] . ' [ ' . $user->data['username'] . ' ]';
$l_login_logout = sprintf($user->lang['LOGOUT_USER'], $user->data['username']);
}
else
{
@@ -66,7 +66,7 @@ if (!empty($_REQUEST['f']))
$reading_sql = 'AND s.session_page LIKE \'%f=' . intval($_REQUEST['f']) . '%\'';
}
$sql = "SELECT u.username, u.user_id, u.user_allow_viewonline, u.user_colour, s.session_ip
$sql = "SELECT u.username, u.user_id, u.user_allow_viewonline, u.user_colour, s.session_ip, s.session_allow_viewonline
FROM " . USERS_TABLE . " u, " . SESSIONS_TABLE ." s
WHERE s.session_time >= " . (time() - 300) . "
$reading_sql
@@ -87,19 +87,20 @@ while ($row = $db->sql_fetchrow($result))
$row['username'] = '<b style="color:#' . $row['user_colour'] . '">' . $row['username'] . '</b>';
}
if ($row['user_allow_viewonline'])
if ($row['user_allow_viewonline'] && $row['session_allow_viewonline'])
{
$user_online_link = '<a href="' . "memberlist.$phpEx$SID&amp;mode=viewprofile&amp;u=" . $row['user_id'] . '">' . $row['username'] . '</a>';
$user_online_link = $row['username'];
$logged_visible_online++;
}
else
{
$user_online_link = '<a href="' . "memberlist.$phpEx$SID&amp;mode=viewprofile&amp;u=" . $row['user_id'] . '"><i>' . $row['username'] . '</i></a>';
$user_online_link = '<i>' . $row['username'] . '</i>';
$logged_hidden_online++;
}
if ($row['user_allow_viewonline'] || $auth->acl_get('a_'))
{
$user_online_link = '<a href="' . "memberlist.$phpEx$SID&amp;mode=viewprofile&amp;u=" . $row['user_id'] . '">' . $user_online_link . '</a>';
$online_userlist .= ($online_userlist != '') ? ', ' . $user_online_link : $user_online_link;
}
}

View File

@@ -130,7 +130,7 @@ class session
}
// Create a new session
function create(&$user_id, &$autologin, $set_autologin = false)
function create(&$user_id, &$autologin, $set_autologin = false, $viewonline = 1)
{
global $SID, $db, $config;
@@ -229,7 +229,7 @@ class session
$db->sql_return_on_error(true);
$sql = "UPDATE " . SESSIONS_TABLE . "
SET session_user_id = $user_id, session_last_visit = " . $this->data['session_last_visit'] . ", session_start = $current_time, session_time = $current_time, session_browser = '$this->browser', session_page = '$this->page'
SET session_user_id = $user_id, session_last_visit = " . $this->data['session_last_visit'] . ", session_start = $current_time, session_time = $current_time, session_browser = '$this->browser', session_page = '$this->page', session_allow_viewonline = $viewonline
WHERE session_id = '" . $this->session_id . "'";
if (!$db->sql_query($sql) || !$db->sql_affectedrows())
{
@@ -237,8 +237,8 @@ class session
$this->session_id = md5(uniqid($user_ip));
$sql = "INSERT INTO " . SESSIONS_TABLE . "
(session_id, session_user_id, session_last_visit, session_start, session_time, session_ip, session_browser, session_page)
VALUES ('" . $this->session_id . "', $user_id, " . $this->data['session_last_visit'] . ", $current_time, $current_time, '$this->ip', '$this->browser', '$this->page')";
(session_id, session_user_id, session_last_visit, session_start, session_time, session_ip, session_browser, session_page, session_allow_viewonline)
VALUES ('" . $this->session_id . "', $user_id, " . $this->data['session_last_visit'] . ", $current_time, $current_time, '$this->ip', '$this->browser', '$this->page', $viewonline)";
$db->sql_query($sql);
}
$db->sql_return_on_error(false);
@@ -1196,7 +1196,7 @@ class auth
}
// Authentication plug-ins is largely down to Sergey Kanareykin, our thanks to him.
function login($username, $password, $autologin = false)
function login($username, $password, $autologin = false, $viewonline = 1)
{
global $config, $user, $phpbb_root_path, $phpEx;
@@ -1209,13 +1209,16 @@ class auth
$method = 'login_' . $method;
if (function_exists($method))
{
if (!($login = $method($username, $password)))
$login = $method($username, $password);
// If login returned anything other than an array there was an error
if (!is_array($login))
{
return false;
return $login;
}
$autologin = (!empty($autologin)) ? md5($password) : '';
return ($login['user_active']) ? $user->create($login['user_id'], $autologin, true) : false;
return ($login['user_active']) ? $user->create($login['user_id'], $autologin, true, $viewonline) : false;
}
}