X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FWallabag%2FCoreBundle%2FEntity%2FConfig.php;h=e1a2090e54e68cfc0e235b59fbc9cb41f9abe734;hb=bca5485946a72942c76dbb65c29e40818dca4976;hp=7b4464a17cddc1374f8e779b9e6bbeb3a5ce9909;hpb=0e7971d8354b0923d2e8f38690b9fe46e695dd93;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Entity/Config.php b/src/Wallabag/CoreBundle/Entity/Config.php index 7b4464a1..e1a2090e 100644 --- a/src/Wallabag/CoreBundle/Entity/Config.php +++ b/src/Wallabag/CoreBundle/Entity/Config.php @@ -2,20 +2,22 @@ namespace Wallabag\CoreBundle\Entity; +use Doctrine\Common\Collections\ArrayCollection; use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Validator\Constraints as Assert; +use Wallabag\UserBundle\Entity\User; /** - * Config + * Config. * * @ORM\Entity(repositoryClass="Wallabag\CoreBundle\Repository\ConfigRepository") - * @ORM\Table(name="config") + * @ORM\Table(name="`config`") * @ORM\Entity */ class Config { /** - * @var integer + * @var int * * @ORM\Column(name="id", type="integer") * @ORM\Id @@ -32,12 +34,17 @@ class Config private $theme; /** - * @var string + * @var int * * @Assert\NotBlank() + * @Assert\Range( + * min = 1, + * max = 100000, + * maxMessage = "This will certainly kill the app" + * ) * @ORM\Column(name="items_per_page", type="integer", nullable=false) */ - private $items_per_page; + private $itemsPerPage; /** * @var string @@ -48,24 +55,55 @@ class Config private $language; /** - * @ORM\ManyToOne(targetEntity="User", inversedBy="config") + * @var string + * + * @ORM\Column(name="rss_token", type="string", nullable=true) + */ + private $rssToken; + + /** + * @var int + * + * @ORM\Column(name="rss_limit", type="integer", nullable=true) + * @Assert\Range( + * min = 1, + * max = 100000, + * maxMessage = "This will certainly kill the app" + * ) + */ + private $rssLimit; + + /** + * @var float + * + * @ORM\Column(name="reading_speed", type="float", nullable=true) + */ + private $readingSpeed; + + /** + * @ORM\OneToOne(targetEntity="Wallabag\UserBundle\Entity\User", inversedBy="config") */ private $user; + /** + * @ORM\OneToMany(targetEntity="Wallabag\CoreBundle\Entity\TaggingRule", mappedBy="config", cascade={"remove"}) + * @ORM\OrderBy({"id" = "ASC"}) + */ + private $taggingRules; + /* * @param User $user */ public function __construct(User $user) { $this->user = $user; - $this->items_per_page = 12; - $this->language = 'en_US'; + $this->taggingRules = new ArrayCollection(); } /** - * Get id + * Get id. * - * @return integer + * @return int */ public function getId() { @@ -73,9 +111,10 @@ class Config } /** - * Set theme + * Set theme. + * + * @param string $theme * - * @param string $theme * @return Config */ public function setTheme($theme) @@ -86,7 +125,7 @@ class Config } /** - * Get theme + * Get theme. * * @return string */ @@ -96,32 +135,34 @@ class Config } /** - * Set items_per_page + * Set itemsPerPage. + * + * @param int $itemsPerPage * - * @param integer $itemsPerPage * @return Config */ public function setItemsPerPage($itemsPerPage) { - $this->items_per_page = $itemsPerPage; + $this->itemsPerPage = $itemsPerPage; return $this; } /** - * Get items_per_page + * Get itemsPerPage. * - * @return integer + * @return int */ public function getItemsPerPage() { - return $this->items_per_page; + return $this->itemsPerPage; } /** - * Set language + * Set language. + * + * @param string $language * - * @param string $language * @return Config */ public function setLanguage($language) @@ -132,7 +173,7 @@ class Config } /** - * Get language + * Get language. * * @return string */ @@ -142,12 +183,13 @@ class Config } /** - * Set user + * Set user. + * + * @param User $user * - * @param \Wallabag\CoreBundle\Entity\User $user * @return Config */ - public function setUser(\Wallabag\CoreBundle\Entity\User $user = null) + public function setUser(User $user = null) { $this->user = $user; @@ -155,12 +197,104 @@ class Config } /** - * Get user + * Get user. * - * @return \Wallabag\CoreBundle\Entity\User + * @return User */ public function getUser() { return $this->user; } + + /** + * Set rssToken. + * + * @param string $rssToken + * + * @return Config + */ + public function setRssToken($rssToken) + { + $this->rssToken = $rssToken; + + return $this; + } + + /** + * Get rssToken. + * + * @return string + */ + public function getRssToken() + { + return $this->rssToken; + } + + /** + * Set rssLimit. + * + * @param int $rssLimit + * + * @return Config + */ + public function setRssLimit($rssLimit) + { + $this->rssLimit = $rssLimit; + + return $this; + } + + /** + * Get rssLimit. + * + * @return int + */ + public function getRssLimit() + { + return $this->rssLimit; + } + + /** + * Set readingSpeed. + * + * @param int $readingSpeed + * + * @return Config + */ + public function setReadingSpeed($readingSpeed) + { + $this->readingSpeed = $readingSpeed; + + return $this; + } + + /** + * Get readingSpeed. + * + * @return int + */ + public function getReadingSpeed() + { + return $this->readingSpeed; + } + + /** + * @param TaggingRule $rule + * + * @return Config + */ + public function addTaggingRule(TaggingRule $rule) + { + $this->taggingRules[] = $rule; + + return $this; + } + + /** + * @return ArrayCollection + */ + public function getTaggingRules() + { + return $this->taggingRules; + } }