From 525eab395cf4f5883ea50e5584c9a05b7b7e5325 Mon Sep 17 00:00:00 2001 From: Hypolite Petovan Date: Fri, 18 Nov 2022 20:44:53 -0500 Subject: [PATCH] Improve error message when conversation isn't available in Module\Item\Display - Retrieve the parent post no matter what. Previously it was depending on the user's settings, which gave unpredictable behavior if the parent post wasn't retrieved for whatever reason. - List possible reasons the conversation isn't showing up based on the condition in Model\Post::selectViewForUser - Allow HTML in exception messages --- src/Module/Item/Display.php | 12 ++++++++++-- view/templates/exception.tpl | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/Module/Item/Display.php b/src/Module/Item/Display.php index 42112a3e0..df500f7cc 100644 --- a/src/Module/Item/Display.php +++ b/src/Module/Item/Display.php @@ -136,7 +136,7 @@ class Display extends BaseModule } if ($item['gravity'] != Item::GRAVITY_PARENT) { - $parent = Post::selectFirstForUser($itemUid, $fields, [ + $parent = Post::selectFirst($fields, [ 'uid' => [0, $itemUid], 'uri-id' => $item['parent-uri-id'] ], ['order' => ['uid' => true]]); @@ -249,7 +249,15 @@ class Display extends BaseModule $item = Post::selectFirstForUser($pageUid, $fields, $condition); if (empty($item)) { - throw new HTTPException\NotFoundException($this->t('The requested item doesn\'t exist or has been deleted.')); + $this->page['aside'] = ''; + throw new HTTPException\NotFoundException($this->t('Unfortunately, the requested conversation isn\'t available to you.

+

Possible reasons include:

+

')); } $item['uri-id'] = $item['parent-uri-id']; diff --git a/view/templates/exception.tpl b/view/templates/exception.tpl index 0456136bc..ad1a15f87 100644 --- a/view/templates/exception.tpl +++ b/view/templates/exception.tpl @@ -1,7 +1,7 @@

{{$title}}

-

{{$message}}

+

{{$message nofilter}}

{{if $thrown}}
{{$thrown}}
 {{$stack_trace}}