diff --git a/Controller/ApiController.php b/Controller/ApiController.php index 4bda90a..c90f39a 100755 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -212,7 +212,7 @@ final class ApiController extends Controller if (!$status) { \phpOMS\Log\FileLogger::getInstance()->error( \phpOMS\Log\FileLogger::MSG_FULL, [ - 'message' => 'Couldn\'t send mail: ' . $mail->id, + 'message' => 'Couldn\'t send ticket mail: ' . $mail->id . ' - ' . $ticket->id, 'line' => __LINE__, 'file' => self::class, ] diff --git a/Controller/BackendController.php b/Controller/BackendController.php index 4fb9a43..6b42e1d 100755 --- a/Controller/BackendController.php +++ b/Controller/BackendController.php @@ -29,6 +29,7 @@ use phpOMS\Asset\AssetType; use phpOMS\Contract\RenderableInterface; use phpOMS\DataStorage\Database\Query\Builder; use phpOMS\DataStorage\Database\Query\OrderType; +use phpOMS\Message\Http\RequestStatusCode; use phpOMS\Message\RequestAbstract; use phpOMS\Message\ResponseAbstract; use phpOMS\Views\View; @@ -139,9 +140,6 @@ final class BackendController extends Controller { $view = new TicketView($this->app->l11nManager, $request, $response); - $view->setTemplate('/Modules/Support/Theme/Backend/support-ticket'); - $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1002901101, $request, $response); - $mapperQuery = TicketMapper::get() ->with('task') ->with('task/createdBy') @@ -159,6 +157,16 @@ final class BackendController extends Controller ? $mapperQuery->where('task', (int) $request->getData('for'))->execute() : $mapperQuery->where('id', (int) $request->getData('id'))->execute(); + if ($view->data['ticket']->id === 0) { + $response->header->status = RequestStatusCode::R_404; + $view->setTemplate('/Web/Backend/Error/404'); + + return $view; + } + + $view->setTemplate('/Modules/Support/Theme/Backend/support-ticket'); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1002901101, $request, $response); + /** @var \Model\Setting $profileImage */ $profileImage = $this->app->appSettings->get(names: ProfileSettingsEnum::DEFAULT_PROFILE_IMAGE, module: 'Profile'); @@ -268,4 +276,20 @@ final class BackendController extends Controller return $view; } + + /** + * Method which generates the module profile view. + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return RenderableInterface Response can be rendered + * + * @since 1.0.0 + */ + public function viewSupportAnalysis(RequestAbstract $request, ResponseAbstract $response, array $data = []) : RenderableInterface + { + return new View($this->app->l11nManager, $request, $response); + } }