From c0d73dcf53edc4c97229004277cadb7667aa8c44 Mon Sep 17 00:00:00 2001 From: Jaap Jansma <jaap.jansma@civicoop.org> Date: Sat, 15 Jun 2019 11:49:49 +0200 Subject: [PATCH] #3 data processor returns a big error upon installation --- Civi/DataProcessor/Output/UIOutputHelper.php | 6 ++++++ dataprocessor.php | 6 +++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Civi/DataProcessor/Output/UIOutputHelper.php b/Civi/DataProcessor/Output/UIOutputHelper.php index bd906c5f..d84710ed 100644 --- a/Civi/DataProcessor/Output/UIOutputHelper.php +++ b/Civi/DataProcessor/Output/UIOutputHelper.php @@ -24,6 +24,12 @@ class UIOutputHelper { */ public static function alterMenu(&$items) { $factory = dataprocessor_get_factory(); + // Check whether the factory exists. Usually just after + // installation the factory does not exists but then no + // outputs exists either. So we can safely return this function. + if (!$factory) { + return; + } $sql = " SELECT o.permission, p.id, p.title, o.configuration, o.type, o.id as output_id diff --git a/dataprocessor.php b/dataprocessor.php index 303b0e37..a8d49f52 100644 --- a/dataprocessor.php +++ b/dataprocessor.php @@ -10,7 +10,11 @@ use \Symfony\Component\DependencyInjection\Definition; * @return \Civi\DataProcessor\Factory */ function dataprocessor_get_factory() { - return \Civi::service('data_processor_factory'); + $container = \Civi::container(); + if ($container->has('data_processor_factory')) { + return \Civi::service('data_processor_factory'); + } + return null; } /** -- GitLab