]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Verify loaded config function, must be completed further.
authorMikael Nordfeldth <mmn@hethane.se>
Sun, 28 Feb 2016 12:31:21 +0000 (13:31 +0100)
committerMikael Nordfeldth <mmn@hethane.se>
Sun, 28 Feb 2016 12:31:21 +0000 (13:31 +0100)
lib/gnusocial.php

index 277c41e7c8d08334bdd6672ddfc824dad1cb1288..2ad688a7904e67dbbe5fcedc0e4cc0e095615edb 100644 (file)
@@ -141,6 +141,8 @@ class GNUsocial
         // Load settings from database; note we need autoload for this
         Config::loadSettings();
 
+        self::verifyLoadedConfig();
+
         self::initPlugins();
     }
 
@@ -418,6 +420,23 @@ class GNUsocial
         }
     }
 
+    /**
+     * Verify that the loaded config is good. Not complete, but will
+     * throw exceptions on common configuration problems I hope.
+     *
+     * Might make changes to the filesystem, to created dirs, but will
+     * not make database changes.
+     */
+    static function verifyLoadedConfig()
+    {
+        if (common_config('htmlpurifier', 'Cache.DefinitionImpl') === 'Serializer'
+                && !is_dir(common_config('htmlpurifier', 'Cache.SerializerPath'))) {
+            if (!mkdir(common_config('htmlpurifier', 'Cache.SerializerPath'))) {
+                throw new ServerException('Could not create HTMLPurifier cache dir: '._ve(common_config('htmlpurifier', 'Cache.SerializerPath')));
+            }
+        }
+    }
+
     /**
      * Are we running from the web with HTTPS?
      *