openvk/Web/Models/Entities/Ticket.php

74 lines
1.7 KiB
PHP
Raw Normal View History

2020-06-07 19:04:43 +03:00
<?php declare(strict_types=1);
namespace openvk\Web\Models\Entities;
use openvk\Web\Util\DateTime;
use Nette\Database\Table\ActiveRow;
use openvk\Web\Models\RowModel;
use Chandler\Database\DatabaseConnection;
use openvk\Web\Models\Repositories\Users;
use Chandler\Database\DatabaseConnection as DB;
use Nette\InvalidStateException as ISE;
use Nette\Database\Table\Selection;
class Ticket extends RowModel
{
protected $tableName = "tickets";
function getId(): int
{
return $this->getRecord()->id;
}
function getStatus(): string
{
if ($this->getRecord()->type === 0)
{
return 'Вопрос находится на рассмотрении.';
} elseif ($this->getRecord()->type === 1) {
return 'Есть ответ.';
} elseif ($this->getRecord()->type === 2) {
return 'Закрыто.';
}
}
function getType(): int
{
return $this->getRecord()->type;
}
function getName(): string
{
return ovk_proc_strtr($this->getRecord()->name, 100);
}
function getContext(): string
{
return $this->getRecord()->text;
}
function getTime(): DateTime
{
return new DateTime($this->getRecord()->created);
}
function isDeleted(): bool
{
if ($this->getRecord()->deleted === 0)
{
return false;
} elseif ($this->getRecord()->deleted === 1) {
return true;
}
}
function authorId(): int
{
return $this->getRecord()->user_id;
}
function getUser(): user
{
return (new Users)->get($this->getRecord()->user_id);
}
}