1
0
mirror of https://github.com/flarum/core.git synced 2025-08-06 16:36:47 +02:00

revert: recover start method used by ecosystem

This commit is contained in:
Sami Mazouz
2024-11-02 16:29:01 +01:00
parent 6e90945922
commit 849faf8065
2 changed files with 19 additions and 10 deletions

View File

@@ -242,16 +242,7 @@ class DiscussionResource extends AbstractDatabaseResource
/** @param Discussion $model */ /** @param Discussion $model */
public function creating(object $model, \Tobyz\JsonApiServer\Context $context): ?object public function creating(object $model, \Tobyz\JsonApiServer\Context $context): ?object
{ {
$actor = $context->getActor(); return Discussion::start(null, $context->getActor());
$model->created_at = Carbon::now();
$model->user_id = $actor->id;
$model->setRelation('user', $actor);
$model->raise(new Started($model));
return $model;
} }
/** @param Discussion $model */ /** @param Discussion $model */

View File

@@ -114,6 +114,24 @@ class Discussion extends AbstractModel
}); });
} }
/**
* Start a new discussion. Raises the DiscussionWasStarted event.
*/
public static function start(?string $title, User $user): static
{
$discussion = new static;
$discussion->title = $title;
$discussion->created_at = Carbon::now();
$discussion->user_id = $user->id;
$discussion->setRelation('user', $user);
$discussion->raise(new Event\Started($discussion));
return $discussion;
}
public function rename(string $title): static public function rename(string $title): static
{ {
if ($this->title !== $title) { if ($this->title !== $title) {