From 13a522dfbd64d1eb14b6e3715289753b0506ded0 Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sat, 24 Sep 2016 19:56:15 +0200 Subject: =?UTF-8?q?Display=20a=20message=20when=20async=20import=20won?= =?UTF-8?q?=E2=80=99t=20work?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mostly if Redis or RabbitMQ isn’t installed / launched. I guess it’ll avoid some issues. --- .../ImportBundle/Controller/ImportController.php | 36 +++++++++++++--------- .../Resources/views/Import/check_queue.html.twig | 16 ++++++++-- 2 files changed, 36 insertions(+), 16 deletions(-) (limited to 'src/Wallabag/ImportBundle') diff --git a/src/Wallabag/ImportBundle/Controller/ImportController.php b/src/Wallabag/ImportBundle/Controller/ImportController.php index ea4f7d7b..36a2a399 100644 --- a/src/Wallabag/ImportBundle/Controller/ImportController.php +++ b/src/Wallabag/ImportBundle/Controller/ImportController.php @@ -25,33 +25,41 @@ class ImportController extends Controller { $nbRedisMessages = null; $nbRabbitMessages = null; + $redisNotInstalled = false; + $rabbitNotInstalled = false; if (!$this->get('security.authorization_checker')->isGranted('ROLE_SUPER_ADMIN')) { - return $this->render('WallabagImportBundle:Import:check_queue.html.twig', [ - 'nbRedisMessages' => $nbRedisMessages, - 'nbRabbitMessages' => $nbRabbitMessages, - ]); + return $this->render('WallabagImportBundle:Import:check_queue.html.twig'); } if ($this->get('craue_config')->get('import_with_rabbitmq')) { - $nbRabbitMessages = $this->getTotalMessageInRabbitQueue('pocket') - + $this->getTotalMessageInRabbitQueue('readability') - + $this->getTotalMessageInRabbitQueue('wallabag_v1') - + $this->getTotalMessageInRabbitQueue('wallabag_v2') - ; + // in case rabbit is activated but not installed + try { + $nbRabbitMessages = $this->getTotalMessageInRabbitQueue('pocket') + + $this->getTotalMessageInRabbitQueue('readability') + + $this->getTotalMessageInRabbitQueue('wallabag_v1') + + $this->getTotalMessageInRabbitQueue('wallabag_v2'); + } catch (\Exception $e) { + $rabbitNotInstalled = true; + } } elseif ($this->get('craue_config')->get('import_with_redis')) { $redis = $this->get('wallabag_core.redis.client'); - $nbRedisMessages = $redis->llen('wallabag.import.pocket') - + $redis->llen('wallabag.import.readability') - + $redis->llen('wallabag.import.wallabag_v1') - + $redis->llen('wallabag.import.wallabag_v2') - ; + try { + $nbRedisMessages = $redis->llen('wallabag.import.pocket') + + $redis->llen('wallabag.import.readability') + + $redis->llen('wallabag.import.wallabag_v1') + + $redis->llen('wallabag.import.wallabag_v2'); + } catch (\Exception $e) { + $redisNotInstalled = true; + } } return $this->render('WallabagImportBundle:Import:check_queue.html.twig', [ 'nbRedisMessages' => $nbRedisMessages, 'nbRabbitMessages' => $nbRabbitMessages, + 'redisNotInstalled' => $redisNotInstalled, + 'rabbitNotInstalled' => $rabbitNotInstalled, ]); } diff --git a/src/Wallabag/ImportBundle/Resources/views/Import/check_queue.html.twig b/src/Wallabag/ImportBundle/Resources/views/Import/check_queue.html.twig index 7168ea35..a2633698 100644 --- a/src/Wallabag/ImportBundle/Resources/views/Import/check_queue.html.twig +++ b/src/Wallabag/ImportBundle/Resources/views/Import/check_queue.html.twig @@ -1,11 +1,23 @@ -{% if nbRedisMessages > 0 %} +{% if nbRedisMessages is defined and nbRedisMessages > 0 %} {% endif %} -{% if nbRabbitMessages > 0 %} +{% if nbRabbitMessages is defined and nbRabbitMessages > 0 %} {% endif %} + +{% if redisNotInstalled is defined and redisNotInstalled %} +
+ {{ 'flashes.import.error.redis_enabled_not_installed'|trans|raw }} +
+{% endif %} + +{% if rabbitNotInstalled is defined and rabbitNotInstalled %} +
+ {{ 'flashes.import.error.rabbit_enabled_not_installed'|trans|raw }} +
+{% endif %} -- cgit v1.2.3