show "parent unknown" when parent not federated

in some cases (visibility is private of parent comment), there is no
parent federated to my instance, and then the comment "hangs around"
with no information, why there is no parent.

For normal users this can be confusing, why all exept "this" comment
have parents.

So i added a simple text instead of link to parent with a "title" field
with a small explanation, why parent is not viewable.

translations done
This commit is contained in:
Jakobus Schürz 2023-10-09 20:10:02 +02:00
parent 45efa4ec87
commit 4b2e920957
3 changed files with 81 additions and 57 deletions

View file

@ -499,10 +499,13 @@ class Post
$parent_guid = $thread_parent[$item['thr-parent-id']]['guid'] ?? ''; $parent_guid = $thread_parent[$item['thr-parent-id']]['guid'] ?? '';
$parent_username = $thread_parent[$item['thr-parent-id']]['name'] ?? ''; $parent_username = $thread_parent[$item['thr-parent-id']]['name'] ?? '';
$parent_unknown = $parent_username ? '' : DI::l10n()->t('parent unknown');
$tmp_item = [ $tmp_item = [
'parentguid' => $parent_guid, 'parentguid' => $parent_guid,
'isreplyto' => DI::l10n()->t('is reply to %s', $parent_username), 'isreplyto' => DI::l10n()->t('is reply to %s', $parent_username),
'isunknown' => $parent_unknown,
'isunknown_label' => DI::l10n()->t('parent is probably private or not federated'),
'template' => $this->getTemplate(), 'template' => $this->getTemplate(),
'type' => implode('', array_slice(explode('/', $item['verb']), -1)), 'type' => implode('', array_slice(explode('/', $item['verb']), -1)),
'comment_firstcollapsed' => false, 'comment_firstcollapsed' => false,

View file

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 2023.09-rc\n" "Project-Id-Version: 2023.09-rc\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-09 01:51+0200\n" "POT-Creation-Date: 2023-10-09 20:09+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -295,7 +295,7 @@ msgstr ""
#: mod/message.php:201 mod/message.php:357 mod/photos.php:1301 #: mod/message.php:201 mod/message.php:357 mod/photos.php:1301
#: src/Content/Conversation.php:399 src/Content/Conversation.php:1549 #: src/Content/Conversation.php:399 src/Content/Conversation.php:1549
#: src/Module/Item/Compose.php:206 src/Module/Post/Edit.php:145 #: src/Module/Item/Compose.php:206 src/Module/Post/Edit.php:145
#: src/Module/Profile/UnkMail.php:154 src/Object/Post.php:584 #: src/Module/Profile/UnkMail.php:154 src/Object/Post.php:587
msgid "Please wait" msgid "Please wait"
msgstr "" msgstr ""
@ -317,7 +317,7 @@ msgstr ""
#: src/Module/Moderation/Report/Create.php:263 #: src/Module/Moderation/Report/Create.php:263
#: src/Module/Profile/Profile.php:274 src/Module/Profile/UnkMail.php:155 #: src/Module/Profile/Profile.php:274 src/Module/Profile/UnkMail.php:155
#: src/Module/Settings/Profile/Index.php:257 #: src/Module/Settings/Profile/Index.php:257
#: src/Module/Settings/Server/Action.php:79 src/Object/Post.php:1103 #: src/Module/Settings/Server/Action.php:79 src/Object/Post.php:1106
#: view/theme/duepuntozero/config.php:85 view/theme/frio/config.php:171 #: view/theme/duepuntozero/config.php:85 view/theme/frio/config.php:171
#: view/theme/quattro/config.php:87 view/theme/vier/config.php:135 #: view/theme/quattro/config.php:87 view/theme/vier/config.php:135
msgid "Submit" msgid "Submit"
@ -602,25 +602,25 @@ msgstr ""
#: mod/photos.php:1139 mod/photos.php:1195 mod/photos.php:1275 #: mod/photos.php:1139 mod/photos.php:1195 mod/photos.php:1275
#: src/Module/Contact.php:619 src/Module/Item/Compose.php:188 #: src/Module/Contact.php:619 src/Module/Item/Compose.php:188
#: src/Object/Post.php:1100 #: src/Object/Post.php:1103
msgid "This is you" msgid "This is you"
msgstr "" msgstr ""
#: mod/photos.php:1141 mod/photos.php:1197 mod/photos.php:1277 #: mod/photos.php:1141 mod/photos.php:1197 mod/photos.php:1277
#: src/Module/Moderation/Reports.php:95 src/Object/Post.php:578 #: src/Module/Moderation/Reports.php:95 src/Object/Post.php:581
#: src/Object/Post.php:1102 #: src/Object/Post.php:1105
msgid "Comment" msgid "Comment"
msgstr "" msgstr ""
#: mod/photos.php:1143 mod/photos.php:1199 mod/photos.php:1279 #: mod/photos.php:1143 mod/photos.php:1199 mod/photos.php:1279
#: src/Content/Conversation.php:414 src/Module/Calendar/Event/Form.php:248 #: src/Content/Conversation.php:414 src/Module/Calendar/Event/Form.php:248
#: src/Module/Item/Compose.php:201 src/Module/Post/Edit.php:165 #: src/Module/Item/Compose.php:201 src/Module/Post/Edit.php:165
#: src/Object/Post.php:1116 #: src/Object/Post.php:1119
msgid "Preview" msgid "Preview"
msgstr "" msgstr ""
#: mod/photos.php:1144 src/Content/Conversation.php:367 #: mod/photos.php:1144 src/Content/Conversation.php:367
#: src/Module/Post/Edit.php:130 src/Object/Post.php:1104 #: src/Module/Post/Edit.php:130 src/Object/Post.php:1107
msgid "Loading..." msgid "Loading..."
msgstr "" msgstr ""
@ -1243,7 +1243,7 @@ msgid "Visible to <strong>everybody</strong>"
msgstr "" msgstr ""
#: src/Content/Conversation.php:337 src/Module/Item/Compose.php:200 #: src/Content/Conversation.php:337 src/Module/Item/Compose.php:200
#: src/Object/Post.php:1115 #: src/Object/Post.php:1118
msgid "Please enter a image/video/audio/webpage URL:" msgid "Please enter a image/video/audio/webpage URL:"
msgstr "" msgstr ""
@ -1288,52 +1288,52 @@ msgid "attach file"
msgstr "" msgstr ""
#: src/Content/Conversation.php:372 src/Module/Item/Compose.php:190 #: src/Content/Conversation.php:372 src/Module/Item/Compose.php:190
#: src/Module/Post/Edit.php:171 src/Object/Post.php:1105 #: src/Module/Post/Edit.php:171 src/Object/Post.php:1108
msgid "Bold" msgid "Bold"
msgstr "" msgstr ""
#: src/Content/Conversation.php:373 src/Module/Item/Compose.php:191 #: src/Content/Conversation.php:373 src/Module/Item/Compose.php:191
#: src/Module/Post/Edit.php:172 src/Object/Post.php:1106 #: src/Module/Post/Edit.php:172 src/Object/Post.php:1109
msgid "Italic" msgid "Italic"
msgstr "" msgstr ""
#: src/Content/Conversation.php:374 src/Module/Item/Compose.php:192 #: src/Content/Conversation.php:374 src/Module/Item/Compose.php:192
#: src/Module/Post/Edit.php:173 src/Object/Post.php:1107 #: src/Module/Post/Edit.php:173 src/Object/Post.php:1110
msgid "Underline" msgid "Underline"
msgstr "" msgstr ""
#: src/Content/Conversation.php:375 src/Module/Item/Compose.php:193 #: src/Content/Conversation.php:375 src/Module/Item/Compose.php:193
#: src/Module/Post/Edit.php:174 src/Object/Post.php:1109 #: src/Module/Post/Edit.php:174 src/Object/Post.php:1112
msgid "Quote" msgid "Quote"
msgstr "" msgstr ""
#: src/Content/Conversation.php:376 src/Module/Item/Compose.php:194 #: src/Content/Conversation.php:376 src/Module/Item/Compose.php:194
#: src/Module/Post/Edit.php:175 src/Object/Post.php:1110 #: src/Module/Post/Edit.php:175 src/Object/Post.php:1113
msgid "Add emojis" msgid "Add emojis"
msgstr "" msgstr ""
#: src/Content/Conversation.php:377 src/Module/Item/Compose.php:195 #: src/Content/Conversation.php:377 src/Module/Item/Compose.php:195
#: src/Object/Post.php:1108 #: src/Object/Post.php:1111
msgid "Content Warning" msgid "Content Warning"
msgstr "" msgstr ""
#: src/Content/Conversation.php:378 src/Module/Item/Compose.php:196 #: src/Content/Conversation.php:378 src/Module/Item/Compose.php:196
#: src/Module/Post/Edit.php:176 src/Object/Post.php:1111 #: src/Module/Post/Edit.php:176 src/Object/Post.php:1114
msgid "Code" msgid "Code"
msgstr "" msgstr ""
#: src/Content/Conversation.php:379 src/Module/Item/Compose.php:197 #: src/Content/Conversation.php:379 src/Module/Item/Compose.php:197
#: src/Object/Post.php:1112 #: src/Object/Post.php:1115
msgid "Image" msgid "Image"
msgstr "" msgstr ""
#: src/Content/Conversation.php:380 src/Module/Item/Compose.php:198 #: src/Content/Conversation.php:380 src/Module/Item/Compose.php:198
#: src/Module/Post/Edit.php:177 src/Object/Post.php:1113 #: src/Module/Post/Edit.php:177 src/Object/Post.php:1116
msgid "Link" msgid "Link"
msgstr "" msgstr ""
#: src/Content/Conversation.php:381 src/Module/Item/Compose.php:199 #: src/Content/Conversation.php:381 src/Module/Item/Compose.php:199
#: src/Module/Post/Edit.php:178 src/Object/Post.php:1114 #: src/Module/Post/Edit.php:178 src/Object/Post.php:1117
msgid "Link or Media" msgid "Link or Media"
msgstr "" msgstr ""
@ -1493,21 +1493,21 @@ msgstr ""
msgid "Pinned item" msgid "Pinned item"
msgstr "" msgstr ""
#: src/Content/Conversation.php:1509 src/Object/Post.php:527 #: src/Content/Conversation.php:1509 src/Object/Post.php:530
#: src/Object/Post.php:528 #: src/Object/Post.php:531
#, php-format #, php-format
msgid "View %s's profile @ %s" msgid "View %s's profile @ %s"
msgstr "" msgstr ""
#: src/Content/Conversation.php:1522 src/Object/Post.php:515 #: src/Content/Conversation.php:1522 src/Object/Post.php:518
msgid "Categories:" msgid "Categories:"
msgstr "" msgstr ""
#: src/Content/Conversation.php:1523 src/Object/Post.php:516 #: src/Content/Conversation.php:1523 src/Object/Post.php:519
msgid "Filed under:" msgid "Filed under:"
msgstr "" msgstr ""
#: src/Content/Conversation.php:1531 src/Object/Post.php:541 #: src/Content/Conversation.php:1531 src/Object/Post.php:544
#, php-format #, php-format
msgid "%s from %s" msgid "%s from %s"
msgstr "" msgstr ""
@ -12045,107 +12045,115 @@ msgstr ""
msgid "Share via external services" msgid "Share via external services"
msgstr "" msgstr ""
#: src/Object/Post.php:505 #: src/Object/Post.php:502
msgid "parent unknown"
msgstr ""
#: src/Object/Post.php:506
#, php-format #, php-format
msgid "is reply to %s" msgid "is reply to %s"
msgstr "" msgstr ""
#: src/Object/Post.php:529 #: src/Object/Post.php:508
msgid "to" msgid "parent is probably private or not federated"
msgstr ""
#: src/Object/Post.php:530
msgid "via"
msgstr ""
#: src/Object/Post.php:531
msgid "Wall-to-Wall"
msgstr "" msgstr ""
#: src/Object/Post.php:532 #: src/Object/Post.php:532
msgid "to"
msgstr ""
#: src/Object/Post.php:533
msgid "via"
msgstr ""
#: src/Object/Post.php:534
msgid "Wall-to-Wall"
msgstr ""
#: src/Object/Post.php:535
msgid "via Wall-To-Wall:" msgid "via Wall-To-Wall:"
msgstr "" msgstr ""
#: src/Object/Post.php:579 #: src/Object/Post.php:582
#, php-format #, php-format
msgid "Reply to %s" msgid "Reply to %s"
msgstr "" msgstr ""
#: src/Object/Post.php:582 #: src/Object/Post.php:585
msgid "More" msgid "More"
msgstr "" msgstr ""
#: src/Object/Post.php:601 #: src/Object/Post.php:604
msgid "Notifier task is pending" msgid "Notifier task is pending"
msgstr "" msgstr ""
#: src/Object/Post.php:602 #: src/Object/Post.php:605
msgid "Delivery to remote servers is pending" msgid "Delivery to remote servers is pending"
msgstr "" msgstr ""
#: src/Object/Post.php:603 #: src/Object/Post.php:606
msgid "Delivery to remote servers is underway" msgid "Delivery to remote servers is underway"
msgstr "" msgstr ""
#: src/Object/Post.php:604 #: src/Object/Post.php:607
msgid "Delivery to remote servers is mostly done" msgid "Delivery to remote servers is mostly done"
msgstr "" msgstr ""
#: src/Object/Post.php:605 #: src/Object/Post.php:608
msgid "Delivery to remote servers is done" msgid "Delivery to remote servers is done"
msgstr "" msgstr ""
#: src/Object/Post.php:627 #: src/Object/Post.php:630
#, php-format #, php-format
msgid "%d comment" msgid "%d comment"
msgid_plural "%d comments" msgid_plural "%d comments"
msgstr[0] "" msgstr[0] ""
msgstr[1] "" msgstr[1] ""
#: src/Object/Post.php:628 #: src/Object/Post.php:631
msgid "Show more" msgid "Show more"
msgstr "" msgstr ""
#: src/Object/Post.php:629 #: src/Object/Post.php:632
msgid "Show fewer" msgid "Show fewer"
msgstr "" msgstr ""
#: src/Object/Post.php:665 #: src/Object/Post.php:668
#, php-format #, php-format
msgid "Reshared by: %s" msgid "Reshared by: %s"
msgstr "" msgstr ""
#: src/Object/Post.php:670 #: src/Object/Post.php:673
#, php-format #, php-format
msgid "Viewed by: %s" msgid "Viewed by: %s"
msgstr "" msgstr ""
#: src/Object/Post.php:675 #: src/Object/Post.php:678
#, php-format #, php-format
msgid "Liked by: %s" msgid "Liked by: %s"
msgstr "" msgstr ""
#: src/Object/Post.php:680 #: src/Object/Post.php:683
#, php-format #, php-format
msgid "Disliked by: %s" msgid "Disliked by: %s"
msgstr "" msgstr ""
#: src/Object/Post.php:685 #: src/Object/Post.php:688
#, php-format #, php-format
msgid "Attended by: %s" msgid "Attended by: %s"
msgstr "" msgstr ""
#: src/Object/Post.php:690 #: src/Object/Post.php:693
#, php-format #, php-format
msgid "Maybe attended by: %s" msgid "Maybe attended by: %s"
msgstr "" msgstr ""
#: src/Object/Post.php:695 #: src/Object/Post.php:698
#, php-format #, php-format
msgid "Not attended by: %s" msgid "Not attended by: %s"
msgstr "" msgstr ""
#: src/Object/Post.php:700 #: src/Object/Post.php:703
#, php-format #, php-format
msgid "Reacted with %s by: %s" msgid "Reacted with %s by: %s"
msgstr "" msgstr ""

View file

@ -64,6 +64,13 @@ as the value of $top_child_total (this is done at the end of this file)
<i class="fa fa-reply" aria-hidden="true"></i> <a id="btn-{{$item.id}}" class="" href="javascript:;" onclick="scrollToItem('item-' + '{{$item.parentguid}}');">{{$item.isreplyto}}</a> <i class="fa fa-reply" aria-hidden="true"></i> <a id="btn-{{$item.id}}" class="" href="javascript:;" onclick="scrollToItem('item-' + '{{$item.parentguid}}');">{{$item.isreplyto}}</a>
{{if $item.reshared}}<i class="hidden-xs">&#x2022;</i>{{/if}} {{if $item.reshared}}<i class="hidden-xs">&#x2022;</i>{{/if}}
</span> </span>
{{else}}
{{if $item.thread_level!=1 && $item.isunknown}}
<span class="visible-sm-inline visible-xs wall-item-responses time">
<i title="{{$item.isunknown_label}}" aria-label="{{$item.isunknown_label}}">{{$item.isunknown}}</i>
{{if $item.reshared}}<i class="hidden-xs">&#x2022;</i>{{/if}}
</span>
{{/if}}
{{/if}} {{/if}}
{{if $item.reshared}} {{if $item.reshared}}
<span class="wall-item-announce wall-item-responses time" id="wall-item-announce-{{$item.id}}"><i class="fa fa-retweet" aria-hidden="true"></i> {{$item.reshared nofilter}}</span> <span class="wall-item-announce wall-item-responses time" id="wall-item-announce-{{$item.id}}"><i class="fa fa-retweet" aria-hidden="true"></i> {{$item.reshared nofilter}}</span>
@ -222,11 +229,17 @@ as the value of $top_child_total (this is done at the end of this file)
</h5> </h5>
<small> <small>
{{if $item.parentguid}} {{if $item.parentguid}}
<i class="hidden-xs hidden-sm"> <span class="hidden-xs hidden-sm">
<a id="btn-{{$item.id}}" class="time" href="javascript:;" onclick="scrollToItem('item-' + '{{$item.parentguid}}');"><i class="fa fa-reply" aria-hidden="true"></i> {{$item.isreplyto}}</a> <a id="btn-{{$item.id}}" class="time" href="javascript:;" onclick="scrollToItem('item-' + '{{$item.parentguid}}');"><i class="fa fa-reply" aria-hidden="true"></i> {{$item.isreplyto}}</a>
<span class="hidden-xs">&#x2022;</span> <i class="hidden-xs">&#x2022;</i>
<!--br class="visible-xs"--> </span>
</i> {{else}}
{{if $item.isunknown}}
<span class="hidden-xs hidden-sm time">
<i title="{{$item.isunknown_label}}" aria-label="{{$item.isunknown_label}}">{{$item.isunknown}}</i>
<i class="hidden-xs">&#x2022;</i>
</span>
{{/if}}
{{/if}} {{/if}}
<a href="{{$item.plink.orig}}"> <a href="{{$item.plink.orig}}">
<time class="time" title="{{$item.localtime}}" data-toggle="tooltip" datetime="{{$item.utc}}">{{$item.ago}}</time> <time class="time" title="{{$item.localtime}}" data-toggle="tooltip" datetime="{{$item.utc}}">{{$item.ago}}</time>