Flarum\Core\Post\DiscussionRenamedPost::reply PHP Method

reply() public static method

Create a new instance in reply to a discussion.
public static reply ( integer $discussionId, integer $userId, string $oldTitle, string $newTitle ) : static
$discussionId integer
$userId integer
$oldTitle string
$newTitle string
return static
    public static function reply($discussionId, $userId, $oldTitle, $newTitle)
    {
        $post = new static();
        $post->content = static::buildContent($oldTitle, $newTitle);
        $post->time = time();
        $post->discussion_id = $discussionId;
        $post->user_id = $userId;
        return $post;
    }

Usage Example

 /**
  * @param \Flarum\Event\DiscussionWasRenamed $event
  */
 public function whenDiscussionWasRenamed(DiscussionWasRenamed $event)
 {
     $post = DiscussionRenamedPost::reply($event->discussion->id, $event->actor->id, $event->oldTitle, $event->discussion->title);
     $post = $event->discussion->mergePost($post);
     if ($event->discussion->start_user_id !== $event->actor->id) {
         $blueprint = new DiscussionRenamedBlueprint($post);
         if ($post->exists) {
             $this->notifications->sync($blueprint, [$event->discussion->startUser]);
         } else {
             $this->notifications->delete($blueprint);
         }
     }
 }