mirror of
https://github.com/slawkens/myaac.git
synced 2025-04-26 17:29:21 +02:00
Support for downgraded TFS 7.72 (with accounts.number)
Part one
This commit is contained in:
parent
a5ccc794bc
commit
eb091e487d
@ -138,11 +138,32 @@ class OTS_Account extends OTS_Row_DAO implements IteratorAggregate, Countable
|
||||
*/
|
||||
public function create($name = NULL, $id = NULL)
|
||||
{
|
||||
// saves blank account info
|
||||
$this->db->exec('INSERT INTO `accounts` (' . (isset($id) ? '`id`,' : '') . (isset($name) ? '`name`,' : '') . '`password`, `email`, `created`) VALUES (' . (isset($id) ? $id . ',' : '') . (isset($name) ? $this->db->quote($name) . ',' : '') . ' \'\', \'\',' . time() . ')');
|
||||
if(isset($name)) {
|
||||
$nameOrNumber = 'name';
|
||||
$nameOrNumberValue = $name;
|
||||
}
|
||||
else {
|
||||
if (USE_ACCOUNT_NUMBER) {
|
||||
$nameOrNumber = 'number';
|
||||
$nameOrNumberValue = $id;
|
||||
$id = null;
|
||||
}
|
||||
else {
|
||||
$nameOrNumber = null;
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($name))
|
||||
// saves blank account info
|
||||
$this->db->exec('INSERT INTO `accounts` (' . (isset($id) ? '`id`,' : '') . (isset($nameOrNumber) ? '`' . $nameOrNumber . '`,' : '') . '`password`, `email`, `created`) VALUES (' . (isset($id) ? $id . ',' : '') . (isset($nameOrNumber) ? $this->db->quote($nameOrNumberValue) . ',' : '') . ' \'\', \'\',' . time() . ')');
|
||||
|
||||
if(isset($name)) {
|
||||
$this->data['name'] = $name;
|
||||
}
|
||||
else {
|
||||
if (USE_ACCOUNT_NUMBER) {
|
||||
$this->data['number'] = $name;
|
||||
}
|
||||
}
|
||||
|
||||
$lastInsertId = $this->db->lastInsertId();
|
||||
if($lastInsertId != 0) {
|
||||
@ -179,15 +200,26 @@ class OTS_Account extends OTS_Row_DAO implements IteratorAggregate, Countable
|
||||
* @param int $id Account number.
|
||||
* @throws PDOException On PDO operation error.
|
||||
*/
|
||||
public function load($id, $fresh = false)
|
||||
public function load($id, $fresh = false, $searchOnlyById = false)
|
||||
{
|
||||
if(!$fresh && isset(self::$cache[$id])) {
|
||||
$this->data = self::$cache[$id];
|
||||
return;
|
||||
}
|
||||
|
||||
$numberColumn = 'id';
|
||||
if (!$searchOnlyById) {
|
||||
$nameOrNumber = '';
|
||||
if (USE_ACCOUNT_NAME) {
|
||||
$nameOrNumber = '`name`,';
|
||||
} else if (USE_ACCOUNT_NUMBER) {
|
||||
$nameOrNumber = '`number`,';
|
||||
$numberColumn = 'number';
|
||||
}
|
||||
}
|
||||
|
||||
// SELECT query on database
|
||||
$this->data = $this->db->query('SELECT `id`, ' . ($this->db->hasColumn('accounts', 'name') ? '`name`,' : '') . '`password`, `email`, `blocked`, `rlname`, `location`, `country`, `web_flags`, ' . ($this->db->hasColumn('accounts', 'premdays') ? '`premdays`, ' : '') . ($this->db->hasColumn('accounts', 'lastday') ? '`lastday`, ' : ($this->db->hasColumn('accounts', 'premend') ? '`premend`,' : ($this->db->hasColumn('accounts', 'premium_ends_at') ? '`premium_ends_at`,' : ''))) . '`created` FROM `accounts` WHERE `id` = ' . (int) $id)->fetch();
|
||||
$this->data = $this->db->query('SELECT `id`, ' . $nameOrNumber . '`password`, `email`, `blocked`, `rlname`, `location`, `country`, `web_flags`, ' . ($this->db->hasColumn('accounts', 'premdays') ? '`premdays`, ' : '') . ($this->db->hasColumn('accounts', 'lastday') ? '`lastday`, ' : ($this->db->hasColumn('accounts', 'premend') ? '`premend`,' : ($this->db->hasColumn('accounts', 'premium_ends_at') ? '`premium_ends_at`,' : ''))) . '`created` FROM `accounts` WHERE `' . $numberColumn . '` = ' . (int) $id)->fetch();
|
||||
self::$cache[$id] = $this->data;
|
||||
}
|
||||
|
||||
@ -306,6 +338,15 @@ class OTS_Account extends OTS_Row_DAO implements IteratorAggregate, Countable
|
||||
return $this->data['id'];
|
||||
}
|
||||
|
||||
public function getNumber()
|
||||
{
|
||||
if (isset($this->data['number'])) {
|
||||
return $this->data['number'];
|
||||
}
|
||||
|
||||
return $this->data['id'];
|
||||
}
|
||||
|
||||
public function getRLName()
|
||||
{
|
||||
if( !isset($this->data['rlname']) )
|
||||
|
@ -602,7 +602,7 @@ class OTS_Player extends OTS_Row_DAO
|
||||
}
|
||||
|
||||
$account = new OTS_Account();
|
||||
$account->load($this->data['account_id']);
|
||||
$account->load($this->data['account_id'], false, true);
|
||||
return $account;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user