From 721ce1b8f45d7616d44df13d2ce0f71a99a842ea Mon Sep 17 00:00:00 2001
From: Florian Bogner <f.bogner@pcsg.de>
Date: Mon, 15 May 2017 12:32:57 +0200
Subject: [PATCH] feat: Added the possibility to enable plugins on first
 install

---
 plugins/activePlugins.json           |  5 +++++
 src/QUI/Ckeditor/Plugins/Manager.php | 14 +++++++++++++-
 2 files changed, 18 insertions(+), 1 deletion(-)
 create mode 100644 plugins/activePlugins.json

diff --git a/plugins/activePlugins.json b/plugins/activePlugins.json
new file mode 100644
index 0000000..7cebdad
--- /dev/null
+++ b/plugins/activePlugins.json
@@ -0,0 +1,5 @@
+[
+  "widget",
+  "dialog",
+  "autocorrect"
+]
\ No newline at end of file
diff --git a/src/QUI/Ckeditor/Plugins/Manager.php b/src/QUI/Ckeditor/Plugins/Manager.php
index 953618a..ade96e2 100644
--- a/src/QUI/Ckeditor/Plugins/Manager.php
+++ b/src/QUI/Ckeditor/Plugins/Manager.php
@@ -114,14 +114,26 @@ class Manager
 
         );
 
+        $activePlugins    = array();
+        $defaultStateFile = dirname(dirname(dirname(dirname(dirname(__FILE__))))) . "/plugins/activePlugins.json";
+        if (file_exists($defaultStateFile)) {
+            $json          = file_get_contents($defaultStateFile);
+            $activePlugins = json_decode($json, true);
+        }
+
+
         foreach ($srcDirs as $srcDir) {
-            $targetDir = $this->installedPluginDir;
 
             if (!is_dir($srcDir)) {
                 return;
             }
 
             foreach (scandir($srcDir) as $entry) {
+                $targetDir = $this->installedPluginDir;
+                if (in_array($entry, $activePlugins)) {
+                    $targetDir = $this->activePluginDir;
+                }
+
                 if ($entry == "." || $entry == "..") {
                     continue;
                 }
-- 
GitLab