]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - src/Wallabag/ImportBundle/Controller/ReadabilityController.php
php-cs-fixer
[github/wallabag/wallabag.git] / src / Wallabag / ImportBundle / Controller / ReadabilityController.php
index b61aa99cfe14597985a9ad41efcd5515977e5d9e..729a97a3bbb90bf39c526c6546043dd6cc1f59a7 100644 (file)
@@ -2,8 +2,8 @@
 
 namespace Wallabag\ImportBundle\Controller;
 
-use Symfony\Bundle\FrameworkBundle\Controller\Controller;
 use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
+use Symfony\Bundle\FrameworkBundle\Controller\Controller;
 use Symfony\Component\HttpFoundation\Request;
 use Wallabag\ImportBundle\Form\Type\UploadImportType;
 
@@ -18,16 +18,22 @@ class ReadabilityController extends Controller
         $form->handleRequest($request);
 
         $readability = $this->get('wallabag_import.readability.import');
+        $readability->setUser($this->getUser());
 
-        if ($form->isValid()) {
+        if ($this->get('craue_config')->get('import_with_rabbitmq')) {
+            $readability->setProducer($this->get('old_sound_rabbit_mq.import_readability_producer'));
+        } elseif ($this->get('craue_config')->get('import_with_redis')) {
+            $readability->setProducer($this->get('wallabag_import.producer.redis.readability'));
+        }
+
+        if ($form->isSubmitted() && $form->isValid()) {
             $file = $form->get('file')->getData();
             $markAsRead = $form->get('mark_as_read')->getData();
-            $name = 'readability_'.$this->getUser()->getId().'.json';
+            $name = 'readability_' . $this->getUser()->getId() . '.json';
 
-            if (in_array($file->getClientMimeType(), $this->getParameter('wallabag_import.allow_mimetypes')) && $file->move($this->getParameter('wallabag_import.resource_dir'), $name)) {
+            if (null !== $file && \in_array($file->getClientMimeType(), $this->getParameter('wallabag_import.allow_mimetypes'), true) && $file->move($this->getParameter('wallabag_import.resource_dir'), $name)) {
                 $res = $readability
-                    ->setUser($this->getUser())
-                    ->setFilepath($this->getParameter('wallabag_import.resource_dir').'/'.$name)
+                    ->setFilepath($this->getParameter('wallabag_import.resource_dir') . '/' . $name)
                     ->setMarkAsRead($markAsRead)
                     ->import();
 
@@ -40,7 +46,13 @@ class ReadabilityController extends Controller
                         '%skipped%' => $summary['skipped'],
                     ]);
 
-                    unlink($this->getParameter('wallabag_import.resource_dir').'/'.$name);
+                    if (0 < $summary['queued']) {
+                        $message = $this->get('translator')->trans('flashes.import.notice.summary_with_queue', [
+                            '%queued%' => $summary['queued'],
+                        ]);
+                    }
+
+                    unlink($this->getParameter('wallabag_import.resource_dir') . '/' . $name);
                 }
 
                 $this->get('session')->getFlashBag()->add(
@@ -49,12 +61,12 @@ class ReadabilityController extends Controller
                 );
 
                 return $this->redirect($this->generateUrl('homepage'));
-            } else {
-                $this->get('session')->getFlashBag()->add(
-                    'notice',
-                    'flashes.import.notice.failed_on_file'
-                );
             }
+
+            $this->get('session')->getFlashBag()->add(
+                'notice',
+                'flashes.import.notice.failed_on_file'
+            );
         }
 
         return $this->render('WallabagImportBundle:Readability:index.html.twig', [