Add same code in Models\Account + Optimize code

This commit is contained in:
slawkens
2025-10-15 15:59:49 +02:00
parent 12e40b2592
commit 7f60b3d31d
2 changed files with 11 additions and 9 deletions

View File

@@ -443,15 +443,16 @@ class OTS_Account extends OTS_Row_DAO implements IteratorAggregate, Countable
throw new E_OTS_NotLoaded();
}
if(isset($this->data['premium_ends_at']) || isset($this->data['premend'])) {
$col = isset($this->data['premium_ends_at']) ? 'premium_ends_at' : 'premend';
if(isset($this->data['premium_ends_at']) || isset($this->data['premend']) ||
(isCanary() && isset($this->data['lastday']))) {
$col = (isset($this->premium_ends_at) ? 'premium_ends_at' : (isset($this->data['lastday']) ? 'lastday' : 'premend'));
$ret = ceil(($this->data[$col] - time()) / (24 * 60 * 60));
return max($ret, 0);
}
if (isCanary() && isset($this->data['lastday'])) {
$ret = ceil(($this->data['lastday'] - time()) / 86400);
return $ret > 0 ? $ret : 0;
return max($ret, 0);
}
if($this->data['premdays'] == 0) {

View File

@@ -33,10 +33,11 @@ class Account extends Model {
public function getPremiumDaysAttribute()
{
if(isset($this->premium_ends_at) || isset($this->premend)) {
$col = isset($this->premium_ends_at) ? 'premium_ends_at' : 'premend';
if(isset($this->premium_ends_at) || isset($this->premend) ||
(isCanary() && isset($this->data['lastday']))) {
$col = (isset($this->premium_ends_at) ? 'premium_ends_at' : (isset($this->data['lastday']) ? 'lastday' : 'premend'));
$ret = ceil(($this->{$col}- time()) / (24 * 60 * 60));
return $ret > 0 ? $ret : 0;
return max($ret, 0);
}
if($this->premdays == 0) {