X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FWallabag%2FUserBundle%2FEventListener%2FCreateConfigListener.php;h=5cabfd35ae21516d2294047ff13e5e4b5b54e425;hb=e673b54f702f274a087e4feff409663d9636e57b;hp=8e2f04e9beca05428dc5c0c4d698e0ddb85252c2;hpb=93a95c09bf7ab389de623f6cda01dfc295aa6b74;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/UserBundle/EventListener/CreateConfigListener.php b/src/Wallabag/UserBundle/EventListener/CreateConfigListener.php index 8e2f04e9..5cabfd35 100644 --- a/src/Wallabag/UserBundle/EventListener/CreateConfigListener.php +++ b/src/Wallabag/UserBundle/EventListener/CreateConfigListener.php @@ -5,8 +5,8 @@ namespace Wallabag\UserBundle\EventListener; use Doctrine\ORM\EntityManager; use FOS\UserBundle\Event\UserEvent; use FOS\UserBundle\FOSUserEvents; -use Symfony\Component\EventDispatcher\EventDispatcherInterface; use Symfony\Component\EventDispatcher\EventSubscriberInterface; +use Symfony\Component\HttpFoundation\Session\Session; use Wallabag\CoreBundle\Entity\Config; /** @@ -21,8 +21,11 @@ class CreateConfigListener implements EventSubscriberInterface private $rssLimit; private $language; private $readingSpeed; + private $actionMarkAsRead; + private $listMode; + private $session; - public function __construct(EntityManager $em, $theme, $itemsOnPage, $rssLimit, $language, $readingSpeed) + public function __construct(EntityManager $em, $theme, $itemsOnPage, $rssLimit, $language, $readingSpeed, $actionMarkAsRead, $listMode, Session $session) { $this->em = $em; $this->theme = $theme; @@ -30,6 +33,9 @@ class CreateConfigListener implements EventSubscriberInterface $this->rssLimit = $rssLimit; $this->language = $language; $this->readingSpeed = $readingSpeed; + $this->actionMarkAsRead = $actionMarkAsRead; + $this->listMode = $listMode; + $this->session = $session; } public static function getSubscribedEvents() @@ -43,14 +49,16 @@ class CreateConfigListener implements EventSubscriberInterface ]; } - public function createConfig(UserEvent $event, $eventName = null, EventDispatcherInterface $eventDispatcher = null) + public function createConfig(UserEvent $event) { $config = new Config($event->getUser()); $config->setTheme($this->theme); $config->setItemsPerPage($this->itemsOnPage); $config->setRssLimit($this->rssLimit); - $config->setLanguage($this->language); + $config->setLanguage($this->session->get('_locale', $this->language)); $config->setReadingSpeed($this->readingSpeed); + $config->setActionMarkAsRead($this->actionMarkAsRead); + $config->setListMode($this->listMode); $this->em->persist($config); $this->em->flush();