mirror of
https://github.com/torrentpier/torrentpier
synced 2025-08-21 13:54:02 -07:00
r574
Гостевая настройка opt_js; удаление устаревшей функции get_loadavg; фикс пагинации на странице поиска пользователей в админке; новые функции обработки ip-адреса; новые значения фактора смерти пира; ярлыки для быстрого вызова некоторых значений из данных сессии; временный фикс чистки кеша предупреждений; фиксы английской локализации; файл обновления до r571. git-svn-id: https://torrentpier2.googlecode.com/svn/trunk@574 a8ac35ab-4ca4-ca47-4c2d-a49a94f06293
This commit is contained in:
parent
abedad2736
commit
9efc9409a8
14 changed files with 151 additions and 93 deletions
57
upgrade/r571-dl_upgrade.php
Normal file
57
upgrade/r571-dl_upgrade.php
Normal file
|
@ -0,0 +1,57 @@
|
|||
<?php
|
||||
|
||||
define('IN_FORUM', true);
|
||||
define('BB_ROOT', './');
|
||||
require(BB_ROOT .'common.php');
|
||||
|
||||
$user->session_start();
|
||||
|
||||
set_die_append_msg();
|
||||
if (!IS_SUPER_ADMIN) bb_die($lang['ONLY_FOR_SUPER_ADMIN']);
|
||||
|
||||
$confirm = request_var('confirm', '');
|
||||
|
||||
if ($confirm)
|
||||
{
|
||||
DB()->query("
|
||||
CREATE TEMPORARY TABLE tmp_buf_dlstatus (
|
||||
user_id mediumint(9) NOT NULL default '0',
|
||||
topic_id mediumint(8) unsigned NOT NULL default '0',
|
||||
user_status tinyint(1) NOT NULL default '0',
|
||||
PRIMARY KEY (user_id, topic_id)
|
||||
) ENGINE = MyISAM
|
||||
");
|
||||
|
||||
DB()->query("
|
||||
INSERT INTO tmp_buf_dlstatus
|
||||
(user_id, topic_id, user_status)
|
||||
SELECT
|
||||
user_id, topic_id, user_status
|
||||
FROM bb_bt_dlstatus_new
|
||||
");
|
||||
|
||||
DB()->query("
|
||||
REPLACE INTO bb_bt_dlstatus_main
|
||||
(user_id, topic_id, user_status)
|
||||
SELECT
|
||||
user_id, topic_id, user_status
|
||||
FROM tmp_buf_dlstatus
|
||||
");
|
||||
|
||||
DB()->query("DROP TEMPORARY TABLE IF EXISTS tmp_buf_dlstatus");
|
||||
DB()->query("RENAME TABLE bb_bt_dlstatus_main TO bb_bt_dlstatus");
|
||||
|
||||
DB()->query("DROP TABLE IF EXISTS bb_bt_dlstatus_mrg");
|
||||
DB()->query("DROP TABLE IF EXISTS bb_bt_dlstatus_new");
|
||||
|
||||
bb_die('<h1 style="color: green">База данных обновлена</h1>');
|
||||
}
|
||||
else
|
||||
{
|
||||
$msg = '<form method="POST">';
|
||||
$msg .= '<h1 style="color: red">!!! Перед тем как нажать на кнопку, сделайте бекап базы данных !!!</h1><br />';
|
||||
$msg .= '<input type="submit" name="confirm" value="Начать обновление Базы Данных (R571)" style="height: 30px; font:bold 14px Arial, Helvetica, sans-serif;" />';
|
||||
$msg .= '</form>';
|
||||
|
||||
bb_die($msg);
|
||||
}
|
|
@ -1232,7 +1232,10 @@ else
|
|||
{
|
||||
$pagination .= ( $pagination == '' ) ? '<a href="'.$base_url.'&sort='.$sort.'&order='.$order.'&page='. ($page + 1) .'">'.$lang['NEXT'].'</a>' : ' | <a href="'.$base_url.'&sort='.$sort.'&order='.$order.'&page='. ($page + 1) .'">'.$lang['NEXT'].'</a>';
|
||||
}
|
||||
|
||||
if ($num_pages > 2)
|
||||
{
|
||||
$pagination .= ' <input type="text" name="page" maxlength="5" size="2" class="post" /> <input type="submit" name="submit" value="'.$lang['GO'].'" class="post" />';
|
||||
}
|
||||
$template->assign_vars(array(
|
||||
'TPL_ADMIN_USER_SEARCH_RESULTS' => true,
|
||||
|
||||
|
|
|
@ -1995,7 +1995,7 @@ function mkdir_rec ($path, $mode)
|
|||
|
||||
function verify_id ($id, $length)
|
||||
{
|
||||
return (preg_match('#^[a-zA-Z0-9]{'. $length .'}$#', $id) && is_string($id));
|
||||
return (is_string($id) && preg_match('#^[a-zA-Z0-9]{'. $length .'}$#', $id));
|
||||
}
|
||||
|
||||
function clean_filename ($fname)
|
||||
|
@ -2004,45 +2004,33 @@ function clean_filename ($fname)
|
|||
return str_replace($s, '_', str_compact($fname));
|
||||
}
|
||||
|
||||
function encode_ip ($dotquad_ip)
|
||||
function encode_ip ($ip)
|
||||
{
|
||||
$ip_sep = explode('.', $dotquad_ip);
|
||||
if (count($ip_sep) == 4)
|
||||
{
|
||||
return sprintf('%02x%02x%02x%02x', $ip_sep[0], $ip_sep[1], $ip_sep[2], $ip_sep[3]);
|
||||
}
|
||||
|
||||
$ip_sep = explode(':', preg_replace('/(^:)|(:$)/', '', $dotquad_ip));
|
||||
$res = '';
|
||||
foreach ($ip_sep as $x)
|
||||
{
|
||||
$res .= sprintf('%0'. ($x == '' ? (9 - count($ip_sep)) * 4 : 4) .'s', $x);
|
||||
}
|
||||
return $res;
|
||||
$d = explode('.', $ip);
|
||||
return sprintf('%02x%02x%02x%02x', $d[0], $d[1], $d[2], $d[3]);
|
||||
}
|
||||
|
||||
function decode_ip ($int_ip)
|
||||
function decode_ip ($ip)
|
||||
{
|
||||
$int_ip = trim($int_ip);
|
||||
return long2ip("0x{$ip}");
|
||||
}
|
||||
|
||||
if (strlen($int_ip) == 32)
|
||||
{
|
||||
$int_ip = substr(chunk_split($int_ip, 4, ':'), 0, 39);
|
||||
$int_ip = ':'. implode(':', array_map("hexhex", explode(':',$int_ip))) .':';
|
||||
preg_match_all("/(:0)+/", $int_ip, $zeros);
|
||||
if (count($zeros[0]) > 0)
|
||||
{
|
||||
$match = '';
|
||||
foreach($zeros[0] as $zero)
|
||||
if (strlen($zero) > strlen($match))
|
||||
$match = $zero;
|
||||
$int_ip = preg_replace('/'. $match .'/', ':', $int_ip, 1);
|
||||
}
|
||||
return preg_replace('/(^:([^:]))|(([^:]):$)/', '$2$4', $int_ip);
|
||||
}
|
||||
if (strlen($int_ip) !== 8) $int_ip = '00000000';
|
||||
$hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
|
||||
return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.' . hexdec($hexipbang[2]) . '.' . hexdec($hexipbang[3]);
|
||||
function ip2int ($ip)
|
||||
{
|
||||
return (float) sprintf('%u', ip2long($ip)); // для совместимости с 32 битными системами
|
||||
}
|
||||
|
||||
// long2ip( mask_ip_int(ip2int('1.2.3.4'), 24) ) = '1.2.3.255'
|
||||
function mask_ip_int ($ip, $mask)
|
||||
{
|
||||
$ip_int = is_numeric($ip) ? $ip : ip2int($ip);
|
||||
$ip_masked = $ip_int | ((1 << (32 - $mask)) - 1);
|
||||
return (float) sprintf('%u', $ip_masked);
|
||||
}
|
||||
|
||||
function bb_crc32 ($str)
|
||||
{
|
||||
return (float) sprintf('%u', crc32($str));
|
||||
}
|
||||
|
||||
function hexhex ($value)
|
||||
|
@ -2174,21 +2162,7 @@ function hide_bb_path ($path)
|
|||
function tr_drop_request ($drop_type)
|
||||
{
|
||||
if (DBG_LOG) dbg_log(' ', "request-dropped-$drop_type");
|
||||
dummy_exit(mt_rand(300, 900));
|
||||
}
|
||||
|
||||
function get_loadavg ()
|
||||
{
|
||||
if (is_callable('sys_getloadavg'))
|
||||
{
|
||||
$loadavg = join(' ', sys_getloadavg());
|
||||
}
|
||||
else if (strpos(PHP_OS, 'Linux') !== false)
|
||||
{
|
||||
$loadavg = @file_get_contents('/proc/loadavg');
|
||||
}
|
||||
|
||||
return !empty($loadavg) ? $loadavg : 0;
|
||||
dummy_exit(mt_rand(60, 600));
|
||||
}
|
||||
|
||||
function sys ($param)
|
||||
|
@ -2277,7 +2251,7 @@ else if (defined('IN_TRACKER'))
|
|||
// Exit if tracker is disabled via ON/OFF trigger
|
||||
if (file_exists(BB_DISABLED))
|
||||
{
|
||||
dummy_exit(mt_rand(1200, 2400)); # die('d14:failure reason20:temporarily disablede');
|
||||
dummy_exit(mt_rand(60, 2400)); # die('d14:failure reason20:temporarily disablede');
|
||||
}
|
||||
}
|
||||
}
|
|
@ -56,7 +56,7 @@ $domain_name = (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : $do
|
|||
// Increase number of revision after update
|
||||
$bb_cfg['tp_version'] = '2.5 (unstable)';
|
||||
$bb_cfg['tp_release_date'] = '30-01-2014';
|
||||
$bb_cfg['tp_release_state'] = 'R573';
|
||||
$bb_cfg['tp_release_state'] = 'R574';
|
||||
|
||||
// Database
|
||||
$charset = 'utf8';
|
||||
|
@ -475,10 +475,10 @@ $bb_cfg['max_smilies'] = 10; // Максимальное
|
|||
// PM
|
||||
$bb_cfg['privmsg_disable'] = false; // отключить систему личных сообщений на форуме
|
||||
$bb_cfg['max_outgoing_pm_cnt'] = 10; // ограничение на кол. одновременных исходящих лс (для замедления рассылки спама)
|
||||
$bb_cfg['max_inbox_privmsgs'] = 200;
|
||||
$bb_cfg['max_savebox_privmsgs'] = 20;
|
||||
$bb_cfg['max_sentbox_privmsgs'] = 50;
|
||||
$bb_cfg['pm_days_keep'] = 180; // время хранения ЛС
|
||||
$bb_cfg['max_inbox_privmsgs'] = 200; // максимальное число сообщений в папке входящие
|
||||
$bb_cfg['max_savebox_privmsgs'] = 25; // максимальное число сообщений в папке сохраненные
|
||||
$bb_cfg['max_sentbox_privmsgs'] = 50; // максимальное число сообщений в папке отправленные
|
||||
$bb_cfg['pm_days_keep'] = 180; // время хранения ЛС
|
||||
|
||||
// Actions log
|
||||
$bb_cfg['log_days_keep'] = 90;
|
||||
|
@ -509,7 +509,6 @@ $bb_cfg['ad_blocks'] = array(
|
|||
);
|
||||
|
||||
// Misc
|
||||
define('LOADAVG', function_exists('get_loadavg') ? get_loadavg() : 0);
|
||||
define('MEM_USAGE', function_exists('memory_get_usage'));
|
||||
|
||||
$bb_cfg['mem_on_start'] = (MEM_USAGE) ? memory_get_usage() : 0;
|
||||
|
|
|
@ -48,7 +48,6 @@ foreach ($cron_jobs as $job)
|
|||
$msg[] = 'start';
|
||||
$msg[] = date('m-d');
|
||||
$msg[] = date('H:i:s');
|
||||
$msg[] = sprintf('%-4s', round(get_loadavg(), 1));
|
||||
$msg[] = sprintf('%05d', getmypid());
|
||||
$msg[] = $job['cron_title'];
|
||||
$msg = join(LOG_SEPR, $msg);
|
||||
|
@ -75,7 +74,6 @@ foreach ($cron_jobs as $job)
|
|||
$msg[] = ' end';
|
||||
$msg[] = date('m-d');
|
||||
$msg[] = date('H:i:s');
|
||||
$msg[] = sprintf('%-4s', round(get_loadavg(), 1));
|
||||
$msg[] = sprintf('%05d', getmypid());
|
||||
$msg[] = round(utime() - $cron_start_time) .'/'. round(utime() - TIMESTART) . ' sec';
|
||||
$msg = join(LOG_SEPR, $msg);
|
||||
|
|
|
@ -1916,10 +1916,6 @@ function message_die ($msg_code, $msg_text = '', $msg_title = '', $err_line = ''
|
|||
if (!$msg_title) $msg_title = $lang['INFORMATION'];
|
||||
break;
|
||||
|
||||
case CRITICAL_MESSAGE:
|
||||
if (!$msg_title) $msg_title = $lang['CRITICAL_INFORMATION'];
|
||||
break;
|
||||
|
||||
case GENERAL_ERROR:
|
||||
if (!$msg_text) $msg_text = $lang['AN_ERROR_OCCURED'];
|
||||
if (!$msg_title) $msg_title = $lang['GENERAL_ERROR'];
|
||||
|
|
|
@ -7,14 +7,14 @@ if (!defined('BB_ROOT')) die(basename(__FILE__));
|
|||
//
|
||||
function prepare_post(&$mode, &$post_data, &$error_msg, &$username, &$subject, &$message, &$poll_title, &$poll_options, &$poll_length)
|
||||
{
|
||||
global $bb_cfg, $userdata, $lang;
|
||||
global $bb_cfg, $user, $userdata, $lang;
|
||||
|
||||
// Check username
|
||||
if (!empty($username))
|
||||
{
|
||||
$username = clean_username($username);
|
||||
|
||||
if (!$userdata['session_logged_in'] || ($userdata['session_logged_in'] && $username != $userdata['username']))
|
||||
if (!$userdata['session_logged_in'] || ($userdata['session_logged_in'] && $username != $user->name))
|
||||
{
|
||||
require(INC_DIR .'functions_validate.php');
|
||||
|
||||
|
@ -462,7 +462,7 @@ function delete_post($mode, $post_data, &$message, &$meta, $forum_id, $topic_id,
|
|||
//
|
||||
function user_notification($mode, &$post_data, &$topic_title, &$forum_id, &$topic_id, &$post_id, &$notify_user)
|
||||
{
|
||||
global $bb_cfg, $lang, $userdata;
|
||||
global $bb_cfg, $lang, $user, $userdata;
|
||||
|
||||
if (!$bb_cfg['topic_notify_enabled'])
|
||||
{
|
||||
|
@ -565,7 +565,7 @@ function user_notification($mode, &$post_data, &$topic_title, &$forum_id, &$topi
|
|||
$emailer->assign_vars(array(
|
||||
'TOPIC_TITLE' => $topic_title,
|
||||
'SITENAME' => $bb_cfg['sitename'],
|
||||
'USERNAME' => $userdata['username'],
|
||||
'USERNAME' => $user->name,
|
||||
'EMAIL_SIG' => (!empty($bb_cfg['board_email_sig'])) ? str_replace('<br />', "\n", "-- \n" . $bb_cfg['board_email_sig']) : '',
|
||||
'U_TOPIC' => $server_protocol . $server_name . $server_port . $script_name . '?' . POST_POST_URL . "=$post_id#$post_id",
|
||||
'U_STOP_WATCHING_TOPIC' => $server_protocol . $server_name . $server_port . $script_name . '?' . POST_TOPIC_URL . "=$topic_id&unwatch=topic")
|
||||
|
|
|
@ -295,7 +295,7 @@ function reports_module_action($reports, $action_name, $action_params = array())
|
|||
//
|
||||
function report_notify($mode)
|
||||
{
|
||||
global $userdata, $bb_cfg;
|
||||
global $user, $userdata, $bb_cfg;
|
||||
|
||||
$num_args = func_num_args();
|
||||
$notify_users = $reports = array();
|
||||
|
@ -550,7 +550,7 @@ function report_notify($mode)
|
|||
}
|
||||
|
||||
$vars = array_merge($vars, array(
|
||||
'REPORT_AUTHOR' => $userdata['username'],
|
||||
'REPORT_AUTHOR' => $user->name,
|
||||
'REPORT_TIME' => bb_date($report['report_time']),
|
||||
'REPORT_REASON' => $report_reason)
|
||||
);
|
||||
|
@ -1067,6 +1067,9 @@ function report_insert($module_id, $report_subject, $report_reason, $report_titl
|
|||
}
|
||||
}
|
||||
|
||||
CACHE('bb_cache')->rm('report_count_obtain');
|
||||
CACHE('bb_cache')->rm('report_count_obtain_exp');
|
||||
|
||||
return $report_id;
|
||||
}
|
||||
|
||||
|
@ -1152,6 +1155,9 @@ function reports_update_status($report_ids, $report_status, $comment = '', $auth
|
|||
{
|
||||
report_notify('change', $report_status, $report_ids);
|
||||
}
|
||||
|
||||
CACHE('bb_cache')->rm('report_count_obtain');
|
||||
CACHE('bb_cache')->rm('report_count_obtain_exp');
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -1235,6 +1241,9 @@ function reports_delete($report_ids, $auth_check = true, $module_action = true)
|
|||
{
|
||||
reports_module_action($reports, 'delete');
|
||||
}
|
||||
|
||||
CACHE('bb_cache')->rm('report_count_obtain');
|
||||
CACHE('bb_cache')->rm('report_count_obtain_exp');
|
||||
}
|
||||
|
||||
//
|
||||
|
|
|
@ -5,7 +5,7 @@ if (!defined('BB_ROOT')) die(basename(__FILE__));
|
|||
// !!! $username должен быть предварительно обработан clean_username() !!!
|
||||
function validate_username ($username, $check_ban_and_taken = true)
|
||||
{
|
||||
global $userdata, $lang;
|
||||
global $user, $lang;
|
||||
|
||||
static $name_chars = 'a-z0-9а-яё_@$%^&;(){}\#\-\'.:+ ';
|
||||
|
||||
|
@ -45,7 +45,7 @@ function validate_username ($username, $check_ban_and_taken = true)
|
|||
|
||||
if ($row = DB()->fetch_row("SELECT username FROM ". BB_USERS ." WHERE username = '$username_sql' LIMIT 1"))
|
||||
{
|
||||
if ((!IS_GUEST && $row['username'] != $userdata['username']) || IS_GUEST)
|
||||
if ((!IS_GUEST && $row['username'] != $user->name) || IS_GUEST)
|
||||
{
|
||||
return $lang['USERNAME_TAKEN'];
|
||||
}
|
||||
|
|
|
@ -185,7 +185,6 @@ define('SEARCH_TYPE_TRACKER', 1);
|
|||
// Error codes
|
||||
define('GENERAL_MESSAGE', 200);
|
||||
define('GENERAL_ERROR', 202);
|
||||
define('CRITICAL_MESSAGE', 203);
|
||||
define('CRITICAL_ERROR', 204);
|
||||
|
||||
define('E_AJAX_GENERAL_ERROR', 1000);
|
||||
|
@ -415,12 +414,12 @@ define('PROFILE_URL', 'profile.php?mode=viewprofile&u=');
|
|||
define('BONUS_URL', 'profile.php?mode=bonus');
|
||||
define('TOPIC_URL', 'viewtopic.php?t=');
|
||||
|
||||
define('USER_AGENT', @strtolower($_SERVER['HTTP_USER_AGENT']));
|
||||
define('USER_AGENT', strtolower($_SERVER['HTTP_USER_AGENT']));
|
||||
define('UA_OPERA', strpos(USER_AGENT, 'pera'));
|
||||
define('UA_IE', strpos(USER_AGENT, 'msie'));
|
||||
|
||||
define('HTML_SELECT_MAX_LENGTH', 60);
|
||||
define('HTML_WBR_LENGTH', 12);
|
||||
define('HTML_WBR_LENGTH', 12);
|
||||
|
||||
define('HTML_CHECKED', ' checked="checked" ');
|
||||
define('HTML_DISABLED', ' disabled="disabled" ');
|
||||
|
|
|
@ -176,7 +176,7 @@ $template->assign_vars(array(
|
|||
'USER_RUS' => ($userdata['user_lang'] != 'english') ? true : false,
|
||||
|
||||
'INCLUDE_BBCODE_JS' => !empty($page_cfg['include_bbcode_js']),
|
||||
'USER_OPTIONS_JS' => ($logged_in) ? bb_json_encode($user->opt_js) : '{}',
|
||||
'USER_OPTIONS_JS' => (IS_GUEST) ? '{}' : bb_json_encode($user->opt_js),
|
||||
|
||||
'USE_TABLESORTER' => !empty($page_cfg['use_tablesorter']),
|
||||
|
||||
|
|
|
@ -33,6 +33,16 @@ class user_common
|
|||
'h_tsp' => 0, // show released title {...}
|
||||
);
|
||||
|
||||
/**
|
||||
* Defaults options for guests
|
||||
*/
|
||||
var $opt_js_guest = array(
|
||||
'h_av' => 1,
|
||||
'h_rnk_i' => 1,
|
||||
'h_smile' => 1,
|
||||
'h_sig' => 1,
|
||||
);
|
||||
|
||||
/**
|
||||
* Sessiondata
|
||||
*/
|
||||
|
@ -556,6 +566,22 @@ class user_common
|
|||
return $autologin_id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set shortcuts
|
||||
*/
|
||||
function set_shortcuts ()
|
||||
{
|
||||
$this->id =& $this->data['user_id'];
|
||||
$this->active =& $this->data['user_active'];
|
||||
$this->name =& $this->data['username'];
|
||||
$this->lastvisit =& $this->data['user_lastvisit'];
|
||||
$this->regdate =& $this->data['user_regdate'];
|
||||
$this->level =& $this->data['user_level'];
|
||||
$this->opt =& $this->data['user_opt'];
|
||||
|
||||
$this->ip = CLIENT_IP;
|
||||
}
|
||||
|
||||
/**
|
||||
* Initialise user settings
|
||||
*/
|
||||
|
@ -642,7 +668,11 @@ class user_common
|
|||
*/
|
||||
function load_opt_js ()
|
||||
{
|
||||
if (!IS_GUEST && !empty($_COOKIE['opt_js']))
|
||||
if (IS_GUEST)
|
||||
{
|
||||
$this->opt_js = array_merge($this->opt_js, $this->opt_js_guest);
|
||||
}
|
||||
else if (!empty($_COOKIE['opt_js']))
|
||||
{
|
||||
$opt_js = bb_json_decode($_COOKIE['opt_js']);
|
||||
|
||||
|
@ -653,15 +683,6 @@ class user_common
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Set shortcuts
|
||||
*/
|
||||
function set_shortcuts ()
|
||||
{
|
||||
$this->id =& $this->data['user_id'];
|
||||
$this->opt =& $this->data['user_opt'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get not auth forums
|
||||
*/
|
||||
|
|
|
@ -59,8 +59,8 @@ $lang['DISABLED'] = 'Disabled';
|
|||
$lang['ERROR'] = 'Error';
|
||||
$lang['SELECT_ACTION'] = 'Select action';
|
||||
|
||||
$lang['NEXT'] = 'Next';
|
||||
$lang['PREVIOUS'] = 'Previous';
|
||||
$lang['NEXT_PAGE'] = 'Next';
|
||||
$lang['PREVIOUS_PAGE'] = 'Previous';
|
||||
$lang['GOTO_PAGE'] = 'Goto page';
|
||||
$lang['GOTO_SHORT'] = 'Page';
|
||||
$lang['JOINED'] = 'Joined';
|
||||
|
|
|
@ -73,8 +73,6 @@ foreach ($rowset as $cnt => $row)
|
|||
$peers_in_last_sec[] = sprintf('%3s', $row['peers']) . (($cnt && !(++$cnt%15)) ? " \n" : '');
|
||||
}
|
||||
|
||||
|
||||
|
||||
function commify_callback ($matches)
|
||||
{
|
||||
return commify($matches[0]);
|
||||
|
@ -85,7 +83,6 @@ function commify_ob ($contents)
|
|||
}
|
||||
ob_start('commify_ob');
|
||||
|
||||
|
||||
echo '<html><body><head></head>';
|
||||
echo '
|
||||
<br /><br /><br />
|
||||
|
@ -125,9 +122,14 @@ echo '</table>';
|
|||
|
||||
echo '<div align="center"><pre>';
|
||||
|
||||
if ($loadavg = get_loadavg())
|
||||
if ($l = sys('la'))
|
||||
{
|
||||
echo "\n\n<b>loadavg: </b>$loadavg\n\n";
|
||||
$l = explode(' ', $l);
|
||||
for ($i=0; $i < 3; $i++)
|
||||
{
|
||||
$l[$i] = round($l[$i], 1);
|
||||
}
|
||||
echo "\n\n<b>loadavg: </b>$l[0] $l[1] $l[2]\n\n";
|
||||
}
|
||||
|
||||
echo 'gen time: <b>'. sprintf('%.3f', (array_sum(explode(' ', microtime())) - TIMESTART)) ."</b> sec\n";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue