1
0
mirror of https://github.com/flarum/core.git synced 2025-07-23 17:51:24 +02:00

Allow author to delete discussion if there are no replies

Also disallow the first post in a discussion to be deleted or hidden
(thus preventing discussions with zero posts)

closes flarum/core#90 closes flarum/core#92
This commit is contained in:
Toby Zerner
2015-06-23 10:34:33 +09:30
parent dfe1a9bae5
commit 3223f65ce3
8 changed files with 80 additions and 30 deletions

View File

@@ -16,16 +16,17 @@ class DiscussionSerializer extends DiscussionBasicSerializer
$state = $discussion->stateFor($user);
$attributes += [
'commentsCount' => (int) $discussion->comments_count,
'startTime' => $discussion->start_time->toRFC3339String(),
'lastTime' => $discussion->last_time ? $discussion->last_time->toRFC3339String() : null,
'lastPostNumber' => $discussion->last_post_number,
'canReply' => $discussion->can($user, 'reply'),
'canRename' => $discussion->can($user, 'rename'),
'canDelete' => $discussion->can($user, 'delete'),
'commentsCount' => (int) $discussion->comments_count,
'participantsCount' => (int) $discussion->participants_count,
'startTime' => $discussion->start_time->toRFC3339String(),
'lastTime' => $discussion->last_time ? $discussion->last_time->toRFC3339String() : null,
'lastPostNumber' => $discussion->last_post_number,
'canReply' => $discussion->can($user, 'reply'),
'canRename' => $discussion->can($user, 'rename'),
'canDelete' => $discussion->can($user, 'delete'),
'readTime' => $state && $state->read_time ? $state->read_time->toRFC3339String() : null,
'readNumber' => $state ? (int) $state->read_number : 0
'readTime' => $state && $state->read_time ? $state->read_time->toRFC3339String() : null,
'readNumber' => $state ? (int) $state->read_number : 0
];
return $this->extendAttributes($discussion, $attributes);