From 40310bf39680d6bd573cf5a38e2d08ebded2adfa Mon Sep 17 00:00:00 2001
From: andileco <daniel@andile.co>
Date: Wed, 19 Apr 2017 09:43:24 -0400
Subject: [PATCH] Make the default settings form Charting Library field match
 the views options form.

---
 src/Form/ChartsConfigForm.php | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/Form/ChartsConfigForm.php b/src/Form/ChartsConfigForm.php
index d57ba92..4361988 100644
--- a/src/Form/ChartsConfigForm.php
+++ b/src/Form/ChartsConfigForm.php
@@ -140,7 +140,12 @@ class ChartsConfigForm extends ConfigFormBase {
     $charts_info = $this->charts_info();
     $library_options = [];
     foreach ($charts_info as $library_name => $library_info) {
-      $library_options[$library_name] = $library_info['label'];
+      if (\Drupal::moduleHandler()->moduleExists($charts_info[$library_name]['module'])) {
+        $library_options[$library_name] = $library_info['label'];
+      }
+    }
+    if (count($library_options) == 0) {
+      drupal_set_message(t('There are no enabled charting libraries. Please enable a Charts sub-module.'));
     }
     $form['library'] = [
       '#title' => $this->t('Charting library'),
@@ -148,7 +153,7 @@ class ChartsConfigForm extends ConfigFormBase {
       '#options' => $library_options,
       '#default_value' => $options['library'],
       '#required' => TRUE,
-      '#access' => count($library_options) > 1,
+      '#access' => count($library_options) > 0,
       '#attributes' => ['class' => ['chart-library-select']],
       '#weight' => -15,
       '#parents' => array_merge($parents, ['library']),
-- 
GitLab