diff --git a/phpBB/db/schemas/mysql_basic.sql b/phpBB/db/schemas/mysql_basic.sql index b4a30eb185..d0a6716ff0 100644 --- a/phpBB/db/schemas/mysql_basic.sql +++ b/phpBB/db/schemas/mysql_basic.sql @@ -53,6 +53,8 @@ INSERT INTO phpbb_config (config_name, config_value) VALUES ('privmsg_disable',' INSERT INTO phpbb_config (config_name, config_value) VALUES ('gzip_compress','0'); INSERT INTO phpbb_config (config_name, config_value) VALUES ('coppa_fax', ''); INSERT INTO phpbb_config (config_name, config_value) VALUES ('coppa_mail', ''); +INSERT INTO phpbb_config (config_name, config_value) VALUES ('record_online_users', '0'); +INSERT INTO phpbb_config (config_name, config_value) VALUES ('record_online_date', '0'); # -- Categories diff --git a/phpBB/db/schemas/postgres_basic.sql b/phpBB/db/schemas/postgres_basic.sql index 3f86db2ee2..9d5cdd422d 100644 --- a/phpBB/db/schemas/postgres_basic.sql +++ b/phpBB/db/schemas/postgres_basic.sql @@ -54,6 +54,8 @@ INSERT INTO phpbb_config (config_name, config_value) VALUES ('privmsg_disable',' INSERT INTO phpbb_config (config_name, config_value) VALUES ('gzip_compress','0'); INSERT INTO phpbb_config (config_name, config_value) VALUES ('coppa_fax', ''); INSERT INTO phpbb_config (config_name, config_value) VALUES ('coppa_mail', ''); +INSERT INTO phpbb_config (config_name, config_value) VALUES ('record_online_users', '0'); +INSERT INTO phpbb_config (config_name, config_value) VALUES ('record_online_date', '0'); -- Categories diff --git a/phpBB/includes/page_header.php b/phpBB/includes/page_header.php index ce1684b1a8..123dd3cb00 100644 --- a/phpBB/includes/page_header.php +++ b/phpBB/includes/page_header.php @@ -161,6 +161,48 @@ while( $row = $db->sql_fetchrow($result) ) $prev_user_id = $row['user_id']; } +// +// This block of INSERTs is only here for people that are running RC1 or RC2 of phpBB2. +// Can be removed after most of those users have migrated to a version that has inserted +// the needed conifg keys. +// +if(!isset($board_config['record_online_users']) ) +{ + $sql = "INSERT INTO ". CONFIG_TABLE ." + (config_name, config_value) VALUES ('record_online_users', '".$total_online_users."')"; + if( !$result = $db->sql_query($sql) ) + { + message_die(GENERAL_ERROR, "Couldn't insert config key 'record_online_users'", "", __LINE__, __FILE__, $sql); + } + $sql = "INSERT INTO ". CONFIG_TABLE ." + (config_name, config_value) VALUES ('record_online_date', '".time()."')"; + if( !$result = $db->sql_query($sql) ) + { + message_die(GENERAL_ERROR, "Couldn't insert config key 'record_online_date'", "", __LINE__, __FILE__, $sql); + } + $board_config['record_online_users'] = $total_online_users; + $board_config['record_online_date'] = time(); +} +else if($total_online_users > $board_config['record_online_users']) +{ + $sql = "UPDATE " . CONFIG_TABLE . " + SET config_value = '$total_online_users' + WHERE config_name = 'record_online_users'"; + if( !$result = $db->sql_query($sql) ) + { + message_die(GENERAL_ERROR, "Couldn't update online user record (nr of users)", "", __LINE__, __FILE__, $sql); + } + $sql = "UPDATE " . CONFIG_TABLE . " + SET config_value = '" . time() . "' + WHERE config_name = 'record_online_date'"; + if( !$result = $db->sql_query($sql) ) + { + message_die(GENERAL_ERROR, "Couldn't update online user record (date)", "", __LINE__, __FILE__, $sql); + } + $board_config['record_online_users'] = $total_online_users; + $board_config['record_online_date'] = time(); +} + $online_userlist = $lang['Registered_users'] . " " . $online_userlist; $total_online_users = $logged_visible_online + $logged_hidden_online + $guests_online; @@ -359,6 +401,7 @@ $template->assign_vars(array( "L_SEARCH_SELF" => $lang['Search_your_posts'], "L_WHOSONLINE_ADMIN" => sprintf($lang['Admin_online_color'], '', ''), "L_WHOSONLINE_MOD" => sprintf($lang['Mod_online_color'], '', ''), + "L_RECORD_USERS" => sprintf($lang['Record_online_users'], $board_config['record_online_users'], date($lang['DATE_FORMAT'], $board_config['record_online_date']) ), "U_SEARCH_UNANSWERED" => append_sid("search.".$phpEx."?search_id=unanswered"), "U_SEARCH_SELF" => append_sid("search.".$phpEx."?search_id=egosearch"), diff --git a/phpBB/language/lang_english/lang_main.php b/phpBB/language/lang_english/lang_main.php index 6a16a1ff8c..e1b6fd871a 100644 --- a/phpBB/language/lang_english/lang_main.php +++ b/phpBB/language/lang_english/lang_main.php @@ -132,6 +132,7 @@ $lang['Hidden_users_total'] = "%d Hidden and "; $lang['Guest_users_zero_total'] = "0 Guests"; $lang['Guest_users_total'] = "%d Guests"; $lang['Guest_user_total'] = "%d Guest"; +$lang['Record_online_users'] = "Most users ever online was %s on %s"; // first %s = number of users, second %s is the date. $lang['Admin_online_color'] = "%sAdministrator%s"; $lang['Mod_online_color'] = "%sModerator%s"; diff --git a/phpBB/templates/subSilver/index_body.tpl b/phpBB/templates/subSilver/index_body.tpl index c6f9cc08b9..166cab9724 100644 --- a/phpBB/templates/subSilver/index_body.tpl +++ b/phpBB/templates/subSilver/index_body.tpl @@ -56,7 +56,7 @@ - {TOTAL_USERS_ONLINE}   [ {L_WHOSONLINE_ADMIN} ]   [ {L_WHOSONLINE_MOD} ]
{LOGGED_IN_USER_LIST}
+ {TOTAL_USERS_ONLINE}   [ {L_WHOSONLINE_ADMIN} ]   [ {L_WHOSONLINE_MOD} ]
{L_RECORD_USERS}
{LOGGED_IN_USER_LIST}