readonly = false; $this->template = false; $this->size = 0; $this->id = 0; } public function __toString(): string { return $this->getTitle(); } public function isTemplate(): bool { return $this->template; } public function setTemplate(bool $template): self { $this->template = $template; return $this; } /** * Set path. * * @param string $path * * @return CDocument */ public function setPath($path) { $this->path = $path; return $this; } /** * Get path. * * @return string */ public function getPath() { return $this->path; } /** * Set comment. * * @param string $comment * * @return CDocument */ public function setComment($comment) { $this->comment = $comment; return $this; } /** * Get comment. * * @return string */ public function getComment() { return $this->comment; } /** * Set title. * * @param string $title * * @return CDocument */ public function setTitle($title) { $this->title = $title; return $this; } /** * Get title. * * @return string */ public function getTitle() { return (string) $this->title; } /** * Set filetype. * * @param string $filetype * * @return CDocument */ public function setFiletype($filetype) { $this->filetype = $filetype; return $this; } /** * Get filetype. * * @return string */ public function getFiletype() { return $this->filetype; } /** * Set size. * * @return CDocument */ public function setSize(int $size) { $this->size = $size ?: 0; return $this; } /** * Get size. * * @return int */ public function getSize() { return $this->size; } /** * Set readonly. * * @param bool $readonly * * @return CDocument */ public function setReadonly($readonly) { $this->readonly = $readonly; return $this; } /** * Get readonly. * * @return bool */ public function getReadonly() { return $this->readonly; } /** * Set id. * * @param int $id * * @return CDocument */ public function setId($id) { $this->id = $id; return $this; } /** * Get id. * * @return int */ public function getId() { return $this->id; } public function getCourse(): Course { return $this->course; } /** * @param Course $course * * @return CDocument */ public function setCourse($course) { $this->course = $course; return $this; } /** * @return int */ public function getIid() { return $this->iid; } /** * @return Session */ public function getSession() { return $this->session; } /** * @param Session $session * * @return CDocument */ public function setSession($session) { $this->session = $session; return $this; } public function postPersist(LifecycleEventArgs $args) { // Update id with iid value $em = $args->getEntityManager(); $this->setId($this->getIid()); $em->persist($this); $em->flush(); } /** * Resource identifier. */ public function getResourceIdentifier(): int { return $this->getIid(); } public function getResourceName(): string { return $this->getTitle(); } }