diff options
| author | Paul S. Owen <psotfx@users.sourceforge.net> | 2003-03-31 21:47:10 +0000 |
|---|---|---|
| committer | Paul S. Owen <psotfx@users.sourceforge.net> | 2003-03-31 21:47:10 +0000 |
| commit | 6e3908893d90d5490ff188de53a8edd73f528606 (patch) | |
| tree | fd2b295daf9c7a5a3d925af14765e5c8bb46440b /phpBB/includes/session.php | |
| parent | 372c2d65d1bc613473ffa1773615e763c3326be6 (diff) | |
| download | forums-6e3908893d90d5490ff188de53a8edd73f528606.tar forums-6e3908893d90d5490ff188de53a8edd73f528606.tar.gz forums-6e3908893d90d5490ff188de53a8edd73f528606.tar.bz2 forums-6e3908893d90d5490ff188de53a8edd73f528606.tar.xz forums-6e3908893d90d5490ff188de53a8edd73f528606.zip | |
Improve feedback for banned users
git-svn-id: file:///svn/phpbb/trunk@3769 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/session.php')
| -rw-r--r-- | phpBB/includes/session.php | 32 |
1 files changed, 20 insertions, 12 deletions
diff --git a/phpBB/includes/session.php b/phpBB/includes/session.php index 60e28f490e..102ecd46b6 100644 --- a/phpBB/includes/session.php +++ b/phpBB/includes/session.php @@ -181,16 +181,15 @@ class session $autologin = ''; $this->data['user_id'] = $user_id = ANONYMOUS; } - - // Is user banned? Are they excluded? + if (!$this->data['user_founder']) { $banned = false; - $sql = "SELECT ban_ip, ban_userid, ban_email, ban_exclude - FROM " . BANLIST_TABLE . " - WHERE ban_end >= $current_time - OR ban_end = 0"; + $sql = 'SELECT ban_ip, ban_userid, ban_email, ban_exclude, ban_give_reason, ban_end + FROM ' . BANLIST_TABLE . ' + WHERE ban_end >= ' . time() . ' + OR ban_end = 0'; $result = $db->sql_query($sql); if ($row = $db->sql_fetchrow($result)) @@ -218,10 +217,17 @@ class session if ($banned) { - // TODO - // Note that at present this doesn't surround the administrator - // text with an appropriate URL - trigger_error('BOARD_BANNED'); + // Initiate environment ... since it won't be set at this stage + $this->setup(); + + // Determine which message to output + $till_date = (!empty($row['ban_end'])) ? $this->format_date($row['ban_end']) : ''; + $message = (!empty($row['ban_end'])) ? 'BOARD_BAN_TIME' : 'BOARD_BAN_PERM'; + + $message = sprintf($this->lang[$message], $till_date, '<a href="mailto:' . $config['board_contact'] . '">', '</a>'); + // More internal HTML ... :D + $message .= (!empty($row['ban_show_reason'])) ? '<br /><br />' . sprintf($this->lang['BOARD_BAN_REASON'], $row['ban_show_reason']) : ''; + trigger_error($message); } } @@ -390,7 +396,7 @@ class user extends session $this->lang_path = $phpbb_root_path . 'language/' . $this->lang_name . '/'; $this->date_format = $config['default_dateformat']; $this->timezone = $config['board_timezone'] * 3600; - $this->dst = 0; + $this->dst = $config['board_dst'] * 3600; if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { @@ -509,6 +515,8 @@ class auth { global $db, $cache; + $this->founder = ($userdata['user_founder']) ? true : false; + if (!($this->acl_options = $cache->get('acl_options'))) { $sql = "SELECT auth_value, is_global, is_local @@ -577,7 +585,7 @@ class auth } } - return $cache[$f][$opt]; + return ($this->founder) ? true : $cache[$f][$opt]; } function acl_gets() |
