2015-06-01 00:39:14 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace Skobkin\Bundle\PointToolsBundle\Entity\Blogs;
|
|
|
|
|
|
|
|
use Doctrine\ORM\Mapping as ORM;
|
|
|
|
use Skobkin\Bundle\PointToolsBundle\Entity\User;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Comment
|
|
|
|
*
|
2015-10-26 02:57:53 +00:00
|
|
|
* @ORM\Table(name="posts.comments", schema="posts", indexes={
|
|
|
|
* @ORM\Index(name="idx_comment_created_at", columns={"created_at"})
|
|
|
|
* })
|
2015-06-01 00:39:14 +00:00
|
|
|
* @ORM\Entity
|
|
|
|
*/
|
|
|
|
class Comment
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* @var integer
|
|
|
|
*
|
|
|
|
* @ORM\Column(name="id", type="integer")
|
|
|
|
* @ORM\Id
|
|
|
|
*/
|
|
|
|
private $id;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var string
|
|
|
|
*
|
|
|
|
* @ORM\Column(name="text", type="text")
|
|
|
|
*/
|
|
|
|
private $text;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var \DateTime
|
|
|
|
*
|
2015-10-26 02:57:53 +00:00
|
|
|
* @ORM\Column(name="created_at", type="datetime")
|
2015-06-01 00:39:14 +00:00
|
|
|
*/
|
|
|
|
private $createdAt;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var boolean
|
|
|
|
*
|
2015-10-26 02:57:53 +00:00
|
|
|
* @ORM\Column(name="is_rec", type="boolean")
|
2015-06-01 00:39:14 +00:00
|
|
|
*/
|
2015-10-26 02:57:53 +00:00
|
|
|
private $rec;
|
2015-06-01 00:39:14 +00:00
|
|
|
|
|
|
|
/**
|
2015-10-26 02:57:53 +00:00
|
|
|
* @var bool
|
2015-06-01 00:39:14 +00:00
|
|
|
*
|
2015-10-26 02:57:53 +00:00
|
|
|
* @ORM\Column(name="is_deleted", type="boolean")
|
2015-06-01 00:39:14 +00:00
|
|
|
*/
|
2015-10-26 02:57:53 +00:00
|
|
|
private $deleted = false;
|
2015-06-01 00:39:14 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @var Post
|
|
|
|
*
|
2015-10-26 02:57:53 +00:00
|
|
|
* @ORM\Id
|
2016-03-16 20:08:48 +00:00
|
|
|
* @ORM\ManyToOne(targetEntity="Skobkin\Bundle\PointToolsBundle\Entity\Blogs\Post", inversedBy="comments")
|
2015-06-01 00:39:14 +00:00
|
|
|
* @ORM\JoinColumn(name="post_id")
|
|
|
|
*/
|
|
|
|
private $post;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var User
|
|
|
|
*
|
|
|
|
* @ORM\ManyToOne(targetEntity="Skobkin\Bundle\PointToolsBundle\Entity\User")
|
|
|
|
* @ORM\JoinColumn(name="author_id")
|
|
|
|
*/
|
|
|
|
private $author;
|
|
|
|
|
|
|
|
/**
|
2015-10-26 02:57:53 +00:00
|
|
|
* @var Comment|null
|
2015-06-01 00:39:14 +00:00
|
|
|
*
|
|
|
|
* @ORM\ManyToOne(targetEntity="Skobkin\Bundle\PointToolsBundle\Entity\Blogs\Comment")
|
|
|
|
* @ORM\JoinColumn(name="to_comment_id", nullable=true)
|
|
|
|
*/
|
|
|
|
private $toComment;
|
|
|
|
|
2015-10-26 02:57:53 +00:00
|
|
|
/**
|
|
|
|
* @param int $id
|
|
|
|
* @param Post $post
|
|
|
|
* @param User $author
|
|
|
|
* @param Comment|null $toComment
|
|
|
|
* @param string $text
|
|
|
|
* @param \DateTime $createdAt
|
|
|
|
* @param bool $isRec
|
|
|
|
*/
|
|
|
|
public function __construct($id, Post $post, User $author, Comment $toComment = null, $text, \DateTime $createdAt, $isRec)
|
|
|
|
{
|
|
|
|
if (!is_numeric($id)) {
|
|
|
|
throw new \InvalidArgumentException('$id must be an integer');
|
|
|
|
}
|
|
|
|
if (!is_bool($isRec)) {
|
|
|
|
throw new \InvalidArgumentException('$isRec must be boolean');
|
|
|
|
}
|
|
|
|
if (!is_string($text)) {
|
|
|
|
throw new \InvalidArgumentException('$text must be a string');
|
|
|
|
}
|
|
|
|
|
|
|
|
$this->id = (int)$id;
|
|
|
|
$this->post = $post;
|
|
|
|
$this->author = $author;
|
|
|
|
$this->toComment = $toComment;
|
|
|
|
$this->text = $text;
|
|
|
|
$this->createdAt = $createdAt;
|
|
|
|
$this->rec = $isRec;
|
|
|
|
}
|
2015-06-01 00:39:14 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Get id
|
|
|
|
*
|
|
|
|
* @return integer
|
|
|
|
*/
|
|
|
|
public function getId()
|
|
|
|
{
|
|
|
|
return $this->id;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set createdAt
|
|
|
|
*
|
|
|
|
* @param \DateTime $createdAt
|
|
|
|
* @return Comment
|
|
|
|
*/
|
|
|
|
public function setCreatedAt($createdAt)
|
|
|
|
{
|
|
|
|
$this->createdAt = $createdAt;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get createdAt
|
|
|
|
*
|
|
|
|
* @return \DateTime
|
|
|
|
*/
|
|
|
|
public function getCreatedAt()
|
|
|
|
{
|
|
|
|
return $this->createdAt;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set text
|
|
|
|
*
|
|
|
|
* @param string $text
|
|
|
|
* @return Comment
|
|
|
|
*/
|
|
|
|
public function setText($text)
|
|
|
|
{
|
|
|
|
$this->text = $text;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get text
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function getText()
|
|
|
|
{
|
|
|
|
return $this->text;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set isRec
|
|
|
|
*
|
2015-10-26 02:57:53 +00:00
|
|
|
* @param boolean $rec
|
2015-06-01 00:39:14 +00:00
|
|
|
* @return Comment
|
|
|
|
*/
|
2015-10-26 02:57:53 +00:00
|
|
|
public function setRec($rec)
|
2015-06-01 00:39:14 +00:00
|
|
|
{
|
2015-10-26 02:57:53 +00:00
|
|
|
$this->rec = $rec;
|
2015-06-01 00:39:14 +00:00
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get isRec
|
|
|
|
*
|
|
|
|
* @return boolean
|
|
|
|
*/
|
|
|
|
public function isRec()
|
|
|
|
{
|
2015-10-26 02:57:53 +00:00
|
|
|
return $this->rec;
|
2015-06-01 00:39:14 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2015-10-26 02:57:53 +00:00
|
|
|
* Get isRec
|
|
|
|
*
|
|
|
|
* @return boolean
|
2015-06-01 00:39:14 +00:00
|
|
|
*/
|
2015-10-26 02:57:53 +00:00
|
|
|
public function getRec()
|
2015-06-01 00:39:14 +00:00
|
|
|
{
|
2015-10-26 02:57:53 +00:00
|
|
|
return $this->rec;
|
2015-06-01 00:39:14 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @return Post
|
|
|
|
*/
|
|
|
|
public function getPost()
|
|
|
|
{
|
|
|
|
return $this->post;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param Post $post
|
|
|
|
* @return Comment
|
|
|
|
*/
|
|
|
|
public function setPost($post)
|
|
|
|
{
|
|
|
|
$this->post = $post;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @return User
|
|
|
|
*/
|
|
|
|
public function getAuthor()
|
|
|
|
{
|
|
|
|
return $this->author;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param User $author
|
|
|
|
* @return Comment
|
|
|
|
*/
|
|
|
|
public function setAuthor($author)
|
|
|
|
{
|
|
|
|
$this->author = $author;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @return Comment
|
|
|
|
*/
|
|
|
|
public function getToComment()
|
|
|
|
{
|
|
|
|
return $this->toComment;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param Comment $toComment
|
|
|
|
* @return Comment
|
|
|
|
*/
|
|
|
|
public function setToComment($toComment)
|
|
|
|
{
|
|
|
|
$this->toComment = $toComment;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
2015-10-26 02:57:53 +00:00
|
|
|
/**
|
|
|
|
* Set deleted
|
|
|
|
*
|
|
|
|
* @param boolean $deleted
|
|
|
|
* @return Comment
|
|
|
|
*/
|
|
|
|
public function setDeleted($deleted)
|
|
|
|
{
|
|
|
|
$this->deleted = $deleted;
|
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get deleted
|
|
|
|
*
|
|
|
|
* @return boolean
|
|
|
|
*/
|
|
|
|
public function getDeleted()
|
|
|
|
{
|
|
|
|
return $this->deleted;
|
|
|
|
}
|
2015-06-01 00:39:14 +00:00
|
|
|
|
2015-10-26 02:57:53 +00:00
|
|
|
/**
|
|
|
|
* Get deleted
|
|
|
|
*
|
|
|
|
* @return boolean
|
|
|
|
*/
|
|
|
|
public function isDeleted()
|
|
|
|
{
|
|
|
|
return $this->deleted;
|
|
|
|
}
|
2015-06-01 00:39:14 +00:00
|
|
|
}
|