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.
*
* @ORM\Entity(repositoryClass="Wallabag\CoreBundle\Repository\ConfigRepository")
- * @ORM\Table
+ * @ORM\Table(name="`config`")
* @ORM\Entity
*/
class Config
* @Assert\Range(
* min = 1,
* max = 100000,
- * maxMessage = "This will certainly kill the app"
+ * maxMessage = "validator.item_per_page_too_high"
* )
* @ORM\Column(name="items_per_page", type="integer", nullable=false)
*/
* @Assert\Range(
* min = 1,
* max = 100000,
- * maxMessage = "This will certainly kill the app"
+ * maxMessage = "validator.rss_limit_too_high"
* )
*/
private $rssLimit;
+ /**
+ * @var float
+ *
+ * @ORM\Column(name="reading_speed", type="float", nullable=true)
+ */
+ private $readingSpeed;
+
+ /**
+ * @var string
+ *
+ * @ORM\Column(name="pocket_consumer_key", type="string", nullable=true)
+ */
+ private $pocketConsumerKey;
+
/**
* @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(\Wallabag\UserBundle\Entity\User $user)
+ public function __construct(User $user)
{
$this->user = $user;
+ $this->taggingRules = new ArrayCollection();
}
/**
*
* @return Config
*/
- public function setUser(\Wallabag\UserBundle\Entity\User $user = null)
+ public function setUser(User $user = null)
{
$this->user = $user;
/**
* Set rssLimit.
*
- * @param string $rssLimit
+ * @param int $rssLimit
*
* @return Config
*/
/**
* Get rssLimit.
*
- * @return string
+ * @return int
*/
public function getRssLimit()
{
return $this->rssLimit;
}
+
+ /**
+ * Set readingSpeed.
+ *
+ * @param float $readingSpeed
+ *
+ * @return Config
+ */
+ public function setReadingSpeed($readingSpeed)
+ {
+ $this->readingSpeed = $readingSpeed;
+
+ return $this;
+ }
+
+ /**
+ * Get readingSpeed.
+ *
+ * @return float
+ */
+ public function getReadingSpeed()
+ {
+ return $this->readingSpeed;
+ }
+
+ /**
+ * Set pocketConsumerKey.
+ *
+ * @param string $pocketConsumerKey
+ *
+ * @return Config
+ */
+ public function setPocketConsumerKey($pocketConsumerKey)
+ {
+ $this->pocketConsumerKey = $pocketConsumerKey;
+
+ return $this;
+ }
+
+ /**
+ * Get pocketConsumerKey.
+ *
+ * @return string
+ */
+ public function getPocketConsumerKey()
+ {
+ return $this->pocketConsumerKey;
+ }
+
+ /**
+ * @param TaggingRule $rule
+ *
+ * @return Config
+ */
+ public function addTaggingRule(TaggingRule $rule)
+ {
+ $this->taggingRules[] = $rule;
+
+ return $this;
+ }
+
+ /**
+ * @return ArrayCollection<TaggingRule>
+ */
+ public function getTaggingRules()
+ {
+ return $this->taggingRules;
+ }
}