2026-02-24 21:02:41 +03:00
|
|
|
<?php
|
2026-04-16 22:35:07 +03:00
|
|
|
|
2026-06-25 18:39:28 +03:00
|
|
|
use XcVm\Domain\User\TicketRepository;
|
2026-06-24 21:32:10 +03:00
|
|
|
use XcVm\Core\Http\RequestManager;
|
2026-02-24 21:02:41 +03:00
|
|
|
/**
|
2026-03-07 21:53:45 +03:00
|
|
|
* Контроллер просмотра тикета (admin/ticket_view.php)
|
2026-04-05 22:38:36 +03:00
|
|
|
*
|
2026-04-16 22:35:07 +03:00
|
|
|
* @renders Views/admin/ticket_view.php
|
|
|
|
|
*
|
2026-04-05 22:38:36 +03:00
|
|
|
* @package XC_VM_Public_Controllers_Admin
|
|
|
|
|
* @author Divarion_D <https://github.com/Divarion-D>
|
|
|
|
|
* @copyright 2025-2026 Vateron Media
|
|
|
|
|
* @link https://github.com/Vateron-Media/XC_VM
|
|
|
|
|
* @license AGPL-3.0 https://www.gnu.org/licenses/agpl-3.0.html
|
2026-02-24 21:02:41 +03:00
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
class TicketViewController extends BaseAdminController {
|
|
|
|
|
public function index() {
|
|
|
|
|
global $db, $rUserInfo;
|
|
|
|
|
|
|
|
|
|
$this->requirePermission();
|
|
|
|
|
|
|
|
|
|
$rTicketInfo = null;
|
2026-03-07 21:53:45 +03:00
|
|
|
if (isset(RequestManager::getAll()['id'])) {
|
2026-04-09 21:24:48 +03:00
|
|
|
$rTicketInfo = TicketRepository::getById(RequestManager::getAll()['id']);
|
2026-02-24 21:02:41 +03:00
|
|
|
}
|
|
|
|
|
if (!$rTicketInfo) {
|
|
|
|
|
$this->redirect('tickets');
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($rUserInfo['id'] != $rTicketInfo['member_id']) {
|
2026-03-07 21:53:45 +03:00
|
|
|
$db->query('UPDATE `tickets` SET `admin_read` = 1 WHERE `id` = ?;', RequestManager::getAll()['id']);
|
2026-02-24 21:02:41 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$this->setTitle('View Ticket');
|
|
|
|
|
$this->render('ticket_view', compact('rTicketInfo'));
|
|
|
|
|
}
|
|
|
|
|
}
|