id = (string)$question['id']; $this->expires_at = !empty($question['end-time']) ? DateTimeFormat::utc($question['end-time'], DateTimeFormat::JSON) : null; $this->expired = $expired; $this->multiple = (bool)$question['multiple']; $this->votes_count = $votes; $this->voters_count = $this->multiple ? $question['voters'] : null; $this->voted = $voted; $this->own_votes = $ownvotes; $this->options = $options; $this->emojis = []; } public function toArray(): array { $status = parent::toArray(); if (is_null($status['voted'])) { unset($status['voted']); } if (is_null($status['own_votes'])) { unset($status['own_votes']); } return $status; } }