diff --git a/extensions/mentions/extend.php b/extensions/mentions/extend.php index 21efec757..3dfe67b15 100644 --- a/extensions/mentions/extend.php +++ b/extensions/mentions/extend.php @@ -15,6 +15,7 @@ use Flarum\Api\Serializer\BasicUserSerializer; use Flarum\Api\Serializer\CurrentUserSerializer; use Flarum\Api\Serializer\GroupSerializer; use Flarum\Api\Serializer\PostSerializer; +use Flarum\Approval\Event\PostWasApproved; use Flarum\Extend; use Flarum\Group\Group; use Flarum\Post\Event\Deleted; @@ -106,6 +107,7 @@ return [ ->listen(Posted::class, Listener\UpdateMentionsMetadataWhenVisible::class) ->listen(Restored::class, Listener\UpdateMentionsMetadataWhenVisible::class) ->listen(Revised::class, Listener\UpdateMentionsMetadataWhenVisible::class) + ->listen(PostWasApproved::class, Listener\UpdateMentionsMetadataWhenVisible::class) ->listen(Hidden::class, Listener\UpdateMentionsMetadataWhenInvisible::class) ->listen(Deleted::class, Listener\UpdateMentionsMetadataWhenInvisible::class), diff --git a/extensions/mentions/src/Listener/UpdateMentionsMetadataWhenVisible.php b/extensions/mentions/src/Listener/UpdateMentionsMetadataWhenVisible.php index 366445984..267636b78 100755 --- a/extensions/mentions/src/Listener/UpdateMentionsMetadataWhenVisible.php +++ b/extensions/mentions/src/Listener/UpdateMentionsMetadataWhenVisible.php @@ -9,10 +9,12 @@ namespace Flarum\Mentions\Listener; +use Flarum\Approval\Event\PostWasApproved; use Flarum\Mentions\Notification\GroupMentionedBlueprint; use Flarum\Mentions\Notification\PostMentionedBlueprint; use Flarum\Mentions\Notification\UserMentionedBlueprint; use Flarum\Notification\NotificationSyncer; +use Flarum\Post\CommentPost; use Flarum\Post\Event\Posted; use Flarum\Post\Event\Restored; use Flarum\Post\Event\Revised; @@ -36,10 +38,14 @@ class UpdateMentionsMetadataWhenVisible } /** - * @param Posted|Restored|Revised $event + * @param Posted|Restored|Revised|PostWasApproved $event */ public function handle($event) { + if (! $event->post instanceof CommentPost) { + return; + } + $content = $event->post->parsed_content; $this->syncUserMentions(