protected function getDefaultAttributes($discussion)
{
$gate = $this->gate->forUser($this->actor);
$attributes = parent::getDefaultAttributes($discussion) + ['commentsCount' => (int) $discussion->comments_count, 'participantsCount' => (int) $discussion->participants_count, 'startTime' => $this->formatDate($discussion->start_time), 'lastTime' => $this->formatDate($discussion->last_time), 'lastPostNumber' => (int) $discussion->last_post_number, 'canReply' => $gate->allows('reply', $discussion), 'canRename' => $gate->allows('rename', $discussion), 'canDelete' => $gate->allows('delete', $discussion), 'canHide' => $gate->allows('hide', $discussion)];
if ($discussion->hide_time) {
$attributes['isHidden'] = true;
$attributes['hideTime'] = $this->formatDate($discussion->hide_time);
}
Discussion::setStateUser($this->actor);
if ($state = $discussion->state) {
$attributes += ['readTime' => $this->formatDate($state->read_time), 'readNumber' => (int) $state->read_number];
}
return $attributes;
}