src/Entity/Feed/FeedMessage.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Entity\Feed;
  3. use Doctrine\ORM\Mapping as ORM;
  4. use Symfony\Component\Validator\Constraints as Assert;
  5. /**
  6.  * FeedMessage
  7.  *
  8.  * @ORM\Table(name="tam_feed_message")
  9.  * @ORM\Entity(repositoryClass="App\Repository\Feed\FeedMessageRepository")
  10.  */
  11. class FeedMessage
  12. {
  13.     /**
  14.      * @var int
  15.      *
  16.      * @ORM\Column(name="id", type="integer")
  17.      * @ORM\Id
  18.      * @ORM\GeneratedValue(strategy="IDENTITY")
  19.      */
  20.     private $id;
  21.     
  22.     /**
  23.      * @var \App\Entity\FeedElement
  24.      *
  25.      * @ORM\ManyToOne(targetEntity="\App\Entity\Feed\FeedElement", fetch="EAGER", inversedBy="messages")
  26.      * @ORM\JoinColumns({
  27.      *   @ORM\JoinColumn(name="feed_element", referencedColumnName="id", onDelete="SET NULL")
  28.      * })
  29.      */
  30.     private $feedElement;
  31.     
  32.     /**
  33.      * @var \App\Entity\User
  34.      *
  35.      * @ORM\ManyToOne(targetEntity="\App\Entity\User", fetch="EAGER", inversedBy="feedMessages")
  36.      * @ORM\JoinColumns({
  37.      *   @ORM\JoinColumn(name="sender", referencedColumnName="id", onDelete="CASCADE")
  38.      * })
  39.      */
  40.     private $sender;
  41.     
  42.     /**
  43.      * @var string
  44.      *
  45.      * @ORM\Column(name="message", type="text", nullable=true)
  46.      */
  47.     private $message;
  48.         
  49.     /**
  50.      * @var \DateTime
  51.      *
  52.      * @ORM\Column(name="date_message", type="datetime", nullable=false)
  53.      */
  54.     private $dateMessage;
  55.     
  56.     
  57.     public function __construct()
  58.     {
  59.         $this->dateMessage = new \DateTime();
  60.     }
  61.     /**
  62.      * Get id
  63.      *
  64.      * @return int
  65.      */
  66.     public function getId()
  67.     {
  68.         return $this->id;
  69.     }
  70.     
  71.     /**
  72.      * Set feedElement
  73.      *
  74.      * @param FeedElement $feedElement
  75.      *
  76.      * @return FeedMessage
  77.      */
  78.     public function setFeedElement($feedElement)
  79.     {
  80.         $this->feedElement $feedElement;
  81.         return $this;
  82.     }
  83.     /**
  84.      * Get feedElement
  85.      *
  86.      * @return FeedElement
  87.      */
  88.     public function getFeedElement()
  89.     {
  90.         return $this->feedElement;
  91.     }
  92.     
  93.     /**
  94.      * Set sender
  95.      *
  96.      * @param User $sender
  97.      *
  98.      * @return FeedElement
  99.      */
  100.     public function setSender($sender)
  101.     {
  102.         $this->sender $sender;
  103.         return $this;
  104.     }
  105.     /**
  106.      * Get sender
  107.      *
  108.      * @return User
  109.      */
  110.     public function getSender()
  111.     {
  112.         return $this->sender;
  113.     }
  114.     
  115.     /**
  116.      * Set message
  117.      *
  118.      * @param string $message
  119.      *
  120.      * @return FeedElement
  121.      */
  122.     public function setMessage($message)
  123.     {
  124.         $this->message $message;
  125.         return $this;
  126.     }
  127.     /**
  128.      * Get message
  129.      *
  130.      * @return string
  131.      */
  132.     public function getMessage()
  133.     {
  134.         return $this->message;
  135.     }
  136.     
  137.     /**
  138.      * Set dateMessage
  139.      *
  140.      * @param \DateTime $dateMessage
  141.      *
  142.      * @return FeedElement
  143.      */
  144.     public function setDateMessage($dateMessage)
  145.     {
  146.         $this->dateMessage $dateMessage;
  147.         return $this;
  148.     }
  149.     /**
  150.      * Get dateMessage
  151.      *
  152.      * @return \DateTime
  153.      */
  154.     public function getDateMessage()
  155.     {
  156.         return $this->dateMessage;
  157.     }
  158.     
  159.     
  160.     /***********************
  161.      * OTHER FUNCTION
  162.      ***********************/
  163.     
  164.     public function getArrayForJson($schemeAndBaseURL){
  165.         $array = array();
  166.         $array['id'] = $this->getId();
  167.         $array['sender'] = $this->getSender()->getSimpleArrayForJson($schemeAndBaseURL);
  168.         $array['message'] = $this->getMessage();
  169.         $array['dateMessage'] = $this->getDateMessage()->format("Y-m-d\TH:i:sP");
  170.                 
  171.         
  172.         return $array;
  173.         
  174.     }
  175.     
  176.     
  177. }