getRecord()->id; } function getWid(): int { return $this->getRecord()->wall_id; } function getAuthorType(): string { return $this->getWid() < 0 ? "club" : "user"; } function getVid(): int { return $this->getRecord()->virtual_id; } function getPost(): ?Post { return (new Posts)->getPostById($this->getWid(), $this->getVid()); } function getAuthor() { if ($this->getAuthorType() === "club") return (new Clubs)->get($this->getWid()); return (new Users)->get($this->getWid()); } function getNewContent(): ?string { return $this->getRecord()->newContent; } function getCreationDate(): DateTime { return new DateTime($this->getRecord()->created); } function canBeApplied(): bool { return $this->getPost()->getChangeId() != $this->getId(); } }