<?php
namespace App\Entity\Feed;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* FeedMessage
*
* @ORM\Table(name="tam_feed_message")
* @ORM\Entity(repositoryClass="App\Repository\Feed\FeedMessageRepository")
*/
class FeedMessage
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var \App\Entity\FeedElement
*
* @ORM\ManyToOne(targetEntity="\App\Entity\Feed\FeedElement", fetch="EAGER", inversedBy="messages")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="feed_element", referencedColumnName="id", onDelete="SET NULL")
* })
*/
private $feedElement;
/**
* @var \App\Entity\User
*
* @ORM\ManyToOne(targetEntity="\App\Entity\User", fetch="EAGER", inversedBy="feedMessages")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="sender", referencedColumnName="id", onDelete="CASCADE")
* })
*/
private $sender;
/**
* @var string
*
* @ORM\Column(name="message", type="text", nullable=true)
*/
private $message;
/**
* @var \DateTime
*
* @ORM\Column(name="date_message", type="datetime", nullable=false)
*/
private $dateMessage;
public function __construct()
{
$this->dateMessage = new \DateTime();
}
/**
* Get id
*
* @return int
*/
public function getId()
{
return $this->id;
}
/**
* Set feedElement
*
* @param FeedElement $feedElement
*
* @return FeedMessage
*/
public function setFeedElement($feedElement)
{
$this->feedElement = $feedElement;
return $this;
}
/**
* Get feedElement
*
* @return FeedElement
*/
public function getFeedElement()
{
return $this->feedElement;
}
/**
* Set sender
*
* @param User $sender
*
* @return FeedElement
*/
public function setSender($sender)
{
$this->sender = $sender;
return $this;
}
/**
* Get sender
*
* @return User
*/
public function getSender()
{
return $this->sender;
}
/**
* Set message
*
* @param string $message
*
* @return FeedElement
*/
public function setMessage($message)
{
$this->message = $message;
return $this;
}
/**
* Get message
*
* @return string
*/
public function getMessage()
{
return $this->message;
}
/**
* Set dateMessage
*
* @param \DateTime $dateMessage
*
* @return FeedElement
*/
public function setDateMessage($dateMessage)
{
$this->dateMessage = $dateMessage;
return $this;
}
/**
* Get dateMessage
*
* @return \DateTime
*/
public function getDateMessage()
{
return $this->dateMessage;
}
/***********************
* OTHER FUNCTION
***********************/
public function getArrayForJson($schemeAndBaseURL){
$array = array();
$array['id'] = $this->getId();
$array['sender'] = $this->getSender()->getSimpleArrayForJson($schemeAndBaseURL);
$array['message'] = $this->getMessage();
$array['dateMessage'] = $this->getDateMessage()->format("Y-m-d\TH:i:sP");
return $array;
}
}