]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - src/Wallabag/ImportBundle/Controller/WallabagV1Controller.php
Add a real configuration for CS-Fixer
[github/wallabag/wallabag.git] / src / Wallabag / ImportBundle / Controller / WallabagV1Controller.php
index e50a6c35a8f3bd6b25896a1a05efe1d0e44500d8..d700d8a883a38ca7a09f1fb0f02343cceff37c79 100644 (file)
@@ -2,58 +2,40 @@
 
 namespace Wallabag\ImportBundle\Controller;
 
-use Symfony\Bundle\FrameworkBundle\Controller\Controller;
 use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
 use Symfony\Component\HttpFoundation\Request;
-use Wallabag\ImportBundle\Form\Type\UploadImportType;
 
-class WallabagV1Controller extends Controller
+class WallabagV1Controller extends WallabagController
 {
     /**
      * @Route("/wallabag-v1", name="import_wallabag_v1")
      */
     public function indexAction(Request $request)
     {
-        $form = $this->createForm(new UploadImportType());
-        $form->handleRequest($request);
-
-        $wallabag = $this->get('wallabag_import.wallabag_v1.import');
-
-        if ($form->isValid()) {
-            $file = $form->get('file')->getData();
-            $name = $this->getUser()->getId().'.json';
-
-            if (in_array($file->getClientMimeType(), $this->getParameter('wallabag_import.allow_mimetypes')) && $file->move($this->getParameter('wallabag_import.resource_dir'), $name)) {
-                $res = $wallabag
-                    ->setUser($this->getUser())
-                    ->setFilepath($this->getParameter('wallabag_import.resource_dir').'/'.$name)
-                    ->import();
-
-                $message = 'Import failed, please try again.';
-                if (true === $res) {
-                    $summary = $wallabag->getSummary();
-                    $message = 'Import summary: '.$summary['imported'].' imported, '.$summary['skipped'].' already saved.';
-
-                    unlink($this->getParameter('wallabag_import.resource_dir').'/'.$name);
-                }
+        return parent::indexAction($request);
+    }
 
-                $this->get('session')->getFlashBag()->add(
-                    'notice',
-                    $message
-                );
+    /**
+     * {@inheritdoc}
+     */
+    protected function getImportService()
+    {
+        $service = $this->get('wallabag_import.wallabag_v1.import');
 
-                return $this->redirect($this->generateUrl('homepage'));
-            } else {
-                $this->get('session')->getFlashBag()->add(
-                    'notice',
-                    'Error while processing import. Please verify your import file.'
-                );
-            }
+        if ($this->get('craue_config')->get('import_with_rabbitmq')) {
+            $service->setProducer($this->get('old_sound_rabbit_mq.import_wallabag_v1_producer'));
+        } elseif ($this->get('craue_config')->get('import_with_redis')) {
+            $service->setProducer($this->get('wallabag_import.producer.redis.wallabag_v1'));
         }
 
-        return $this->render('WallabagImportBundle:WallabagV1:index.html.twig', [
-            'form' => $form->createView(),
-            'import' => $wallabag,
-        ]);
+        return $service;
+    }
+
+    /**
+     * {@inheritdoc}
+     */
+    protected function getImportTemplate()
+    {
+        return 'WallabagImportBundle:WallabagV1:index.html.twig';
     }
 }