2015-01-22 16:18:56 +00:00
|
|
|
<?php
|
|
|
|
|
2015-01-23 15:28:37 +00:00
|
|
|
namespace Wallabag\CoreBundle\Entity;
|
2015-01-22 16:18:56 +00:00
|
|
|
|
|
|
|
use Doctrine\ORM\Mapping as ORM;
|
2015-02-20 16:20:12 +00:00
|
|
|
use JMS\Serializer\Annotation\XmlRoot;
|
2015-02-20 19:29:33 +00:00
|
|
|
use JMS\Serializer\Annotation\ExclusionPolicy;
|
|
|
|
use JMS\Serializer\Annotation\Expose;
|
2015-02-24 06:42:09 +00:00
|
|
|
use Doctrine\Common\Collections\ArrayCollection;
|
2015-01-22 16:18:56 +00:00
|
|
|
|
|
|
|
/**
|
2015-05-30 11:52:26 +00:00
|
|
|
* Tag.
|
2015-01-22 16:18:56 +00:00
|
|
|
*
|
2015-02-20 16:20:12 +00:00
|
|
|
* @XmlRoot("tag")
|
2015-10-24 13:28:02 +00:00
|
|
|
* @ORM\Table(name="`tag`")
|
2015-02-20 16:20:12 +00:00
|
|
|
* @ORM\Entity(repositoryClass="Wallabag\CoreBundle\Repository\TagRepository")
|
2015-02-20 19:29:33 +00:00
|
|
|
* @ExclusionPolicy("all")
|
2015-01-22 16:18:56 +00:00
|
|
|
*/
|
2015-02-06 17:15:19 +00:00
|
|
|
class Tag
|
2015-01-22 16:18:56 +00:00
|
|
|
{
|
|
|
|
/**
|
2015-05-30 11:52:26 +00:00
|
|
|
* @var int
|
2015-01-22 16:18:56 +00:00
|
|
|
*
|
2015-02-20 19:29:33 +00:00
|
|
|
* @Expose
|
2015-02-06 17:15:19 +00:00
|
|
|
* @ORM\Column(name="id", type="integer")
|
2015-01-22 16:18:56 +00:00
|
|
|
* @ORM\Id
|
2015-02-06 17:15:19 +00:00
|
|
|
* @ORM\GeneratedValue(strategy="AUTO")
|
2015-01-22 16:18:56 +00:00
|
|
|
*/
|
|
|
|
private $id;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @var string
|
|
|
|
*
|
2015-02-20 19:29:33 +00:00
|
|
|
* @Expose
|
2015-02-06 17:15:19 +00:00
|
|
|
* @ORM\Column(name="label", type="text")
|
2015-01-22 16:18:56 +00:00
|
|
|
*/
|
2015-02-06 17:15:19 +00:00
|
|
|
private $label;
|
2015-01-22 16:18:56 +00:00
|
|
|
|
2015-02-20 19:29:33 +00:00
|
|
|
/**
|
2015-02-24 06:42:09 +00:00
|
|
|
* @ORM\ManyToMany(targetEntity="Entry", mappedBy="tags", cascade={"persist"})
|
2015-02-20 19:29:33 +00:00
|
|
|
*/
|
|
|
|
private $entries;
|
|
|
|
|
2015-02-26 08:41:42 +00:00
|
|
|
/**
|
2015-10-02 12:51:41 +00:00
|
|
|
* @ORM\ManyToOne(targetEntity="Wallabag\UserBundle\Entity\User", inversedBy="tags")
|
2015-02-26 08:41:42 +00:00
|
|
|
*/
|
|
|
|
private $user;
|
|
|
|
|
2015-10-03 04:29:55 +00:00
|
|
|
public function __construct(\Wallabag\UserBundle\Entity\User $user)
|
2015-02-24 06:42:09 +00:00
|
|
|
{
|
2015-08-20 05:53:55 +00:00
|
|
|
$this->user = $user;
|
2015-02-24 06:42:09 +00:00
|
|
|
$this->entries = new ArrayCollection();
|
|
|
|
}
|
2015-06-02 16:54:34 +00:00
|
|
|
|
|
|
|
public function __toString()
|
|
|
|
{
|
|
|
|
return $this->label;
|
|
|
|
}
|
|
|
|
|
2015-01-22 16:18:56 +00:00
|
|
|
/**
|
2015-05-30 11:52:26 +00:00
|
|
|
* Get id.
|
2015-01-22 16:18:56 +00:00
|
|
|
*
|
2015-05-30 11:52:26 +00:00
|
|
|
* @return int
|
2015-01-22 16:18:56 +00:00
|
|
|
*/
|
|
|
|
public function getId()
|
|
|
|
{
|
|
|
|
return $this->id;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2015-05-30 11:52:26 +00:00
|
|
|
* Set label.
|
|
|
|
*
|
|
|
|
* @param string $label
|
2015-01-22 16:18:56 +00:00
|
|
|
*
|
2015-02-06 17:15:19 +00:00
|
|
|
* @return Tag
|
2015-01-22 16:18:56 +00:00
|
|
|
*/
|
2015-02-06 17:15:19 +00:00
|
|
|
public function setLabel($label)
|
2015-01-22 16:18:56 +00:00
|
|
|
{
|
2015-02-06 17:15:19 +00:00
|
|
|
$this->label = $label;
|
2015-01-22 16:18:56 +00:00
|
|
|
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2015-05-30 11:52:26 +00:00
|
|
|
* Get label.
|
2015-01-22 16:18:56 +00:00
|
|
|
*
|
2015-01-31 18:09:34 +00:00
|
|
|
* @return string
|
2015-01-22 16:18:56 +00:00
|
|
|
*/
|
2015-02-06 17:15:19 +00:00
|
|
|
public function getLabel()
|
2015-01-22 16:18:56 +00:00
|
|
|
{
|
2015-02-20 15:38:24 +00:00
|
|
|
return $this->label;
|
2015-01-22 16:18:56 +00:00
|
|
|
}
|
2015-02-24 06:42:09 +00:00
|
|
|
|
|
|
|
public function addEntry(Entry $entry)
|
|
|
|
{
|
|
|
|
$this->entries[] = $entry;
|
|
|
|
}
|
2015-03-05 18:41:23 +00:00
|
|
|
|
2015-08-19 09:46:21 +00:00
|
|
|
public function hasEntry($entry)
|
|
|
|
{
|
|
|
|
return $this->entries->contains($entry);
|
|
|
|
}
|
|
|
|
|
2015-03-05 18:41:23 +00:00
|
|
|
/**
|
|
|
|
* @return User
|
|
|
|
*/
|
|
|
|
public function getUser()
|
|
|
|
{
|
|
|
|
return $this->user;
|
|
|
|
}
|
2015-01-22 16:18:56 +00:00
|
|
|
}
|