Advertisement
Guest User

ArticleEntity

a guest
Jul 27th, 2018
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.36 KB | None | 0 0
  1. <?php
  2.  
  3. namespace SoftUniBlogBundle\Entity;
  4.  
  5. use Doctrine\ORM\Mapping as ORM;
  6.  
  7. /**
  8.  * Article
  9.  *
  10.  * @ORM\Table(name="articles")
  11.  * @ORM\Entity(repositoryClass="SoftUniBlogBundle\Repository\ArticleRepository")
  12.  */
  13. class Article
  14. {
  15.     /**
  16.      * @var int
  17.      *
  18.      * @ORM\Column(name="id", type="integer")
  19.      * @ORM\Id
  20.      * @ORM\GeneratedValue(strategy="AUTO")
  21.      */
  22.     private $id;
  23.  
  24.     /**
  25.      * @var string
  26.      *
  27.      * @ORM\Column(name="Title", type="string", length=255)
  28.      */
  29.     private $title;
  30.  
  31.     /**
  32.      * @var string
  33.      *
  34.      * @ORM\Column(name="content", type="text")
  35.      */
  36.     private $content;
  37.  
  38.     /**
  39.      * @var \DateTime
  40.      *
  41.      * @ORM\Column(name="dateAdded", type="datetime")
  42.      */
  43.     private $dateAdded;
  44.  
  45.     /**
  46.      * @var int
  47.      *
  48.      * @ORM\Column(name="authorId", type="integer")
  49.      */
  50.     private $authorId;
  51.  
  52.     /**
  53.      * @var User
  54.      *
  55.      * @ORM\ManyToOne(targetEntity="SoftUniBlogBundle\Entity\User", inversedBy="articles")
  56.      * @ORM\JoinColumn(name="authorId", referencedColumnName="id")
  57.      */
  58.     private $author;
  59.  
  60.     /**
  61.      * Article constructor.
  62.      */
  63.     public function __construct()
  64.     {
  65.         $this->setDateAdded(new \DateTime('now'));
  66.     }
  67.  
  68.     /**
  69.      * Get id.
  70.      *
  71.      * @return int
  72.      */
  73.     public function getId()
  74.     {
  75.         return $this->id;
  76.     }
  77.  
  78.     /**
  79.      * Set title.
  80.      *
  81.      * @param string $title
  82.      *
  83.      * @return Article
  84.      */
  85.     public function setTitle($title)
  86.     {
  87.         $this->title = $title;
  88.  
  89.         return $this;
  90.     }
  91.  
  92.     /**
  93.      * Get title.
  94.      *
  95.      * @return string
  96.      */
  97.     public function getTitle()
  98.     {
  99.         return $this->title;
  100.     }
  101.  
  102.     /**
  103.      * Set content.
  104.      *
  105.      * @param string $content
  106.      *
  107.      * @return Article
  108.      */
  109.     public function setContent($content)
  110.     {
  111.         $this->content = $content;
  112.  
  113.         return $this;
  114.     }
  115.  
  116.     /**
  117.      * Get content.
  118.      *
  119.      * @return string
  120.      */
  121.     public function getContent()
  122.     {
  123.         return $this->content;
  124.     }
  125.  
  126.     /**
  127.      * Set dateAdded.
  128.      *
  129.      * @param \DateTime $dateAdded
  130.      *
  131.      * @return Article
  132.      */
  133.     public function setDateAdded($dateAdded)
  134.     {
  135.         $this->dateAdded = $dateAdded;
  136.  
  137.         return $this;
  138.     }
  139.  
  140.     /**
  141.      * Get dateAdded.
  142.      *
  143.      * @return \DateTime
  144.      */
  145.     public function getDateAdded()
  146.     {
  147.         return $this->dateAdded;
  148.     }
  149.  
  150.     /**
  151.      * Set authorId.
  152.      *
  153.      * @param int $authorId
  154.      *
  155.      * @return Article
  156.      */
  157.     public function setAuthorId($authorId)
  158.     {
  159.         $this->authorId = $authorId;
  160.  
  161.         return $this;
  162.     }
  163.  
  164.     /**
  165.      * Get authorId.
  166.      *
  167.      * @return int
  168.      */
  169.     public function getAuthorId()
  170.     {
  171.         return $this->authorId;
  172.     }
  173.  
  174.     /**
  175.      * @return User
  176.      */
  177.     public function getAuthor(): User
  178.     {
  179.         return $this->author;
  180.     }
  181.  
  182.     /**
  183.      * @param User $author
  184.      */
  185.     public function setAuthor(User $author): void
  186.     {
  187.         $this->author = $author;
  188.     }
  189.  
  190.     /**
  191.      * @return string
  192.      */
  193.     public function getSummary()
  194.     {
  195.         $summary = substr($this->getContent(), 0, strlen($this->getContent()) / 2) . "...";
  196.         return $summary;
  197.     }
  198. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement