Minor improvements (#778)

This commit is contained in:
Roman Kelesidis 2023-06-05 23:14:40 +07:00 committed by GitHub
commit 5fa582ab8b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 79 additions and 28 deletions

View file

@ -23,7 +23,7 @@ class User
* *
* @var array * @var array
*/ */
public $cfg = [ public array $cfg = [
'req_login' => false, // requires user to be logged in 'req_login' => false, // requires user to be logged in
'req_session_admin' => false, // requires active admin session (for moderation or admin actions) 'req_session_admin' => false, // requires active admin session (for moderation or admin actions)
]; ];
@ -33,7 +33,7 @@ class User
* *
* @var array * @var array
*/ */
public $opt_js = [ public array $opt_js = [
'only_new' => 0, // show ony new posts or topics 'only_new' => 0, // show ony new posts or topics
'h_av' => 0, // hide avatar 'h_av' => 0, // hide avatar
'h_rnk_i' => 0, // hide rank images 'h_rnk_i' => 0, // hide rank images
@ -53,7 +53,7 @@ class User
* *
* @var array * @var array
*/ */
public $opt_js_guest = [ public array $opt_js_guest = [
'h_av' => 1, // hide avatar 'h_av' => 1, // hide avatar
'h_rnk_i' => 1, // hide rank images 'h_rnk_i' => 1, // hide rank images
'h_smile' => 1, // hide smilies 'h_smile' => 1, // hide smilies
@ -65,7 +65,7 @@ class User
* *
* @var array * @var array
*/ */
public $sessiondata = [ public array $sessiondata = [
'uk' => null, 'uk' => null,
'uid' => null, 'uid' => null,
'sid' => '', 'sid' => '',
@ -76,14 +76,59 @@ class User
* *
* @var array * @var array
*/ */
public $data = []; public array $data = [];
/** /**
* Shortcuts * User ID
* *
* @var * @var string
*/ */
public $id; public string $id;
/**
* User active (1|0)
*/
public $active;
/**
* Username
*
* @var string
*/
public string $name;
/**
* User options
*
* @var string
*/
public string $opt;
/**
* User IP
*
* @var string
*/
public string $ip;
/**
* User level
*/
public $level;
/**
* User registration date
*
* @var string
*/
public string $regdate;
/**
* User last visit date
*
* @var string
*/
public string $lastvisit;
/** /**
* User constructor * User constructor
@ -217,12 +262,12 @@ class User
/** /**
* Create new session for the given user * Create new session for the given user
* *
* @param $userdata * @param array $userdata
* @param bool $auto_created * @param bool $auto_created
* *
* @return array * @return array
*/ */
public function session_create($userdata, $auto_created = false) public function session_create(array $userdata, $auto_created = false)
{ {
global $bb_cfg, $lang; global $bb_cfg, $lang;
@ -492,13 +537,13 @@ class User
/** /**
* Verify autologin_id * Verify autologin_id
* *
* @param $userdata * @param array $userdata
* @param bool $expire_check * @param bool $expire_check
* @param bool $create_new * @param bool $create_new
* *
* @return bool|string * @return bool|string
*/ */
public function verify_autologin_id($userdata, $expire_check = false, $create_new = true) public function verify_autologin_id(array $userdata, bool $expire_check = false, bool $create_new = true)
{ {
global $bb_cfg; global $bb_cfg;
@ -522,12 +567,12 @@ class User
/** /**
* Create autologin_id * Create autologin_id
* *
* @param $userdata * @param array $userdata
* @param bool $create_new * @param bool $create_new
* *
* @return bool|string * @return bool|string
*/ */
public function create_autologin_id($userdata, $create_new = true) public function create_autologin_id(array $userdata, bool $create_new = true)
{ {
$autologin_id = ($create_new) ? make_rand_str(LOGIN_KEY_LENGTH) : ''; $autologin_id = ($create_new) ? make_rand_str(LOGIN_KEY_LENGTH) : '';

View file

@ -25,7 +25,7 @@ class SqlDb
public $result; public $result;
public $db_server = ''; public $db_server = '';
public $selected_db; public $selected_db;
public $inited = false; public bool $inited = false;
public string $engine = 'MySQL'; public string $engine = 'MySQL';
public $locked = false; public $locked = false;
@ -649,12 +649,12 @@ class SqlDb
/** /**
* Obtain user level lock * Obtain user level lock
* *
* @param $name * @param string $name
* @param int $timeout * @param int $timeout
* *
* @return mixed * @return mixed
*/ */
public function get_lock($name, $timeout = 0) public function get_lock(string $name, $timeout = 0)
{ {
$lock_name = $this->get_lock_name($name); $lock_name = $this->get_lock_name($name);
$timeout = (int)$timeout; $timeout = (int)$timeout;
@ -670,11 +670,11 @@ class SqlDb
/** /**
* Obtain user level lock status * Obtain user level lock status
* *
* @param $name * @param string $name
* *
* @return mixed * @return mixed
*/ */
public function release_lock($name) public function release_lock(string $name)
{ {
$lock_name = $this->get_lock_name($name); $lock_name = $this->get_lock_name($name);
$row = $this->fetch_row("SELECT RELEASE_LOCK('$lock_name') AS lock_result"); $row = $this->fetch_row("SELECT RELEASE_LOCK('$lock_name') AS lock_result");
@ -689,11 +689,11 @@ class SqlDb
/** /**
* Release user level lock * Release user level lock
* *
* @param $name * @param string $name
* *
* @return mixed * @return mixed
*/ */
public function is_free_lock($name) public function is_free_lock(string $name)
{ {
$lock_name = $this->get_lock_name($name); $lock_name = $this->get_lock_name($name);
$row = $this->fetch_row("SELECT IS_FREE_LOCK('$lock_name') AS lock_result"); $row = $this->fetch_row("SELECT IS_FREE_LOCK('$lock_name') AS lock_result");
@ -703,11 +703,11 @@ class SqlDb
/** /**
* Make per db unique lock name * Make per db unique lock name
* *
* @param $name * @param string $name
* *
* @return string * @return string
*/ */
public function get_lock_name($name) public function get_lock_name(string $name): string
{ {
if (!$this->selected_db) { if (!$this->selected_db) {
$this->init(); $this->init();
@ -833,7 +833,7 @@ class SqlDb
* *
* @param string $msg * @param string $msg
*/ */
public function trigger_error($msg = 'DB Error') public function trigger_error(string $msg = 'DB Error')
{ {
if (error_reporting()) { if (error_reporting()) {
$msg .= ' [' . $this->debug_find_source() . ']'; $msg .= ' [' . $this->debug_find_source() . ']';
@ -848,7 +848,7 @@ class SqlDb
* *
* @return string * @return string
*/ */
public function debug_find_source($mode = '') public function debug_find_source(string $mode = ''): string
{ {
foreach (debug_backtrace() as $trace) { foreach (debug_backtrace() as $trace) {
if (!empty($trace['file']) && $trace['file'] !== __FILE__) { if (!empty($trace['file']) && $trace['file'] !== __FILE__) {
@ -867,10 +867,11 @@ class SqlDb
/** /**
* Prepare for logging * Prepare for logging
*
* @param int $queries_count * @param int $queries_count
* @param string $log_file * @param string $log_file
*/ */
public function log_next_query($queries_count = 1, $log_file = 'sql_queries') public function log_next_query($queries_count = 1, string $log_file = 'sql_queries')
{ {
$this->DBS['log_file'] = $log_file; $this->DBS['log_file'] = $log_file;
$this->DBS['log_counter'] = $queries_count; $this->DBS['log_counter'] = $queries_count;
@ -881,7 +882,7 @@ class SqlDb
* *
* @param string $log_file * @param string $log_file
*/ */
public function log_query($log_file = 'sql_queries') public function log_query(string $log_file = 'sql_queries')
{ {
$q_time = ($this->cur_query_time >= 10) ? round($this->cur_query_time, 0) : sprintf('%.4f', $this->cur_query_time); $q_time = ($this->cur_query_time >= 10) ? round($this->cur_query_time, 0) : sprintf('%.4f', $this->cur_query_time);
$msg = []; $msg = [];
@ -904,11 +905,12 @@ class SqlDb
* *
* @param string $log_file * @param string $log_file
*/ */
public function log_slow_query($log_file = 'sql_slow_bb') public function log_slow_query(string $log_file = 'sql_slow_bb')
{ {
if (!\defined('IN_FIRST_SLOW_QUERY') && CACHE('bb_cache')->get('dont_log_slow_query')) { if (!\defined('IN_FIRST_SLOW_QUERY') && CACHE('bb_cache')->get('dont_log_slow_query')) {
return; return;
} }
$this->log_query($log_file); $this->log_query($log_file);
} }
@ -1023,6 +1025,10 @@ class SqlDb
case 'display': case 'display':
echo '<a name="explain"></a><div class="med">' . $this->explain_out . '</div>'; echo '<a name="explain"></a><div class="med">' . $this->explain_out . '</div>';
break; break;
default:
bb_simple_die("Unknown mode: $mode");
break;
} }
} }
} }