mirror of
https://github.com/torrentpier/torrentpier
synced 2025-08-22 06:13:58 -07:00
parent
c7c1cb920b
commit
645cdb2515
2 changed files with 28 additions and 79 deletions
|
@ -23,7 +23,7 @@ class User
|
||||||
*
|
*
|
||||||
* @var array
|
* @var array
|
||||||
*/
|
*/
|
||||||
public array $cfg = [
|
public $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 array $opt_js = [
|
public $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 array $opt_js_guest = [
|
public $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 array $sessiondata = [
|
public $sessiondata = [
|
||||||
'uk' => null,
|
'uk' => null,
|
||||||
'uid' => null,
|
'uid' => null,
|
||||||
'sid' => '',
|
'sid' => '',
|
||||||
|
@ -76,59 +76,14 @@ class User
|
||||||
*
|
*
|
||||||
* @var array
|
* @var array
|
||||||
*/
|
*/
|
||||||
public array $data = [];
|
public $data = [];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User ID
|
* Shortcuts
|
||||||
*
|
*
|
||||||
* @var string
|
* @var
|
||||||
*/
|
*/
|
||||||
public string $id;
|
public $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
|
||||||
|
@ -262,12 +217,12 @@ class User
|
||||||
/**
|
/**
|
||||||
* Create new session for the given user
|
* Create new session for the given user
|
||||||
*
|
*
|
||||||
* @param array $userdata
|
* @param $userdata
|
||||||
* @param bool $auto_created
|
* @param bool $auto_created
|
||||||
*
|
*
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function session_create(array $userdata, $auto_created = false)
|
public function session_create($userdata, $auto_created = false)
|
||||||
{
|
{
|
||||||
global $bb_cfg, $lang;
|
global $bb_cfg, $lang;
|
||||||
|
|
||||||
|
@ -537,13 +492,13 @@ class User
|
||||||
/**
|
/**
|
||||||
* Verify autologin_id
|
* Verify autologin_id
|
||||||
*
|
*
|
||||||
* @param array $userdata
|
* @param $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(array $userdata, bool $expire_check = false, bool $create_new = true)
|
public function verify_autologin_id($userdata, $expire_check = false, $create_new = true)
|
||||||
{
|
{
|
||||||
global $bb_cfg;
|
global $bb_cfg;
|
||||||
|
|
||||||
|
@ -567,12 +522,12 @@ class User
|
||||||
/**
|
/**
|
||||||
* Create autologin_id
|
* Create autologin_id
|
||||||
*
|
*
|
||||||
* @param array $userdata
|
* @param $userdata
|
||||||
* @param bool $create_new
|
* @param bool $create_new
|
||||||
*
|
*
|
||||||
* @return bool|string
|
* @return bool|string
|
||||||
*/
|
*/
|
||||||
public function create_autologin_id(array $userdata, bool $create_new = true)
|
public function create_autologin_id($userdata, $create_new = true)
|
||||||
{
|
{
|
||||||
$autologin_id = ($create_new) ? make_rand_str(LOGIN_KEY_LENGTH) : '';
|
$autologin_id = ($create_new) ? make_rand_str(LOGIN_KEY_LENGTH) : '';
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@ class SqlDb
|
||||||
public $result;
|
public $result;
|
||||||
public $db_server = '';
|
public $db_server = '';
|
||||||
public $selected_db;
|
public $selected_db;
|
||||||
public bool $inited = false;
|
public $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 string $name
|
* @param $name
|
||||||
* @param int $timeout
|
* @param int $timeout
|
||||||
*
|
*
|
||||||
* @return mixed
|
* @return mixed
|
||||||
*/
|
*/
|
||||||
public function get_lock(string $name, $timeout = 0)
|
public function get_lock($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 string $name
|
* @param $name
|
||||||
*
|
*
|
||||||
* @return mixed
|
* @return mixed
|
||||||
*/
|
*/
|
||||||
public function release_lock(string $name)
|
public function release_lock($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 string $name
|
* @param $name
|
||||||
*
|
*
|
||||||
* @return mixed
|
* @return mixed
|
||||||
*/
|
*/
|
||||||
public function is_free_lock(string $name)
|
public function is_free_lock($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 string $name
|
* @param $name
|
||||||
*
|
*
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
public function get_lock_name(string $name): string
|
public function get_lock_name($name)
|
||||||
{
|
{
|
||||||
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(string $msg = 'DB Error')
|
public function trigger_error($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(string $mode = ''): string
|
public function debug_find_source($mode = '')
|
||||||
{
|
{
|
||||||
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,11 +867,10 @@ 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, string $log_file = 'sql_queries')
|
public function log_next_query($queries_count = 1, $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;
|
||||||
|
@ -882,7 +881,7 @@ class SqlDb
|
||||||
*
|
*
|
||||||
* @param string $log_file
|
* @param string $log_file
|
||||||
*/
|
*/
|
||||||
public function log_query(string $log_file = 'sql_queries')
|
public function log_query($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 = [];
|
||||||
|
@ -905,12 +904,11 @@ class SqlDb
|
||||||
*
|
*
|
||||||
* @param string $log_file
|
* @param string $log_file
|
||||||
*/
|
*/
|
||||||
public function log_slow_query(string $log_file = 'sql_slow_bb')
|
public function log_slow_query($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);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1025,10 +1023,6 @@ 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;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue