]> git.mxchange.org Git - friendica.git/commitdiff
Merge pull request #11895 from annando/smarty-sub-dir
authorPhilipp <admin+Github@philipp.info>
Fri, 9 Sep 2022 06:20:04 +0000 (08:20 +0200)
committerGitHub <noreply@github.com>
Fri, 9 Sep 2022 06:20:04 +0000 (08:20 +0200)
Smarty: Configuration added to store without sub directories

src/Render/FriendicaSmarty.php
src/Render/FriendicaSmartyEngine.php
static/defaults.config.php

index 50282c38ebaad62c425d4a2f43249cdb7f483e8e..13ff6234e26dbdd754b99c1482d893228e1f5f86 100644 (file)
@@ -33,7 +33,7 @@ class FriendicaSmarty extends Smarty
 
        public $filename;
 
-       public function __construct(string $theme, array $theme_info, string $work_dir)
+       public function __construct(string $theme, array $theme_info, string $work_dir, bool $use_sub_dirs)
        {
                parent::__construct();
 
@@ -64,7 +64,7 @@ class FriendicaSmarty extends Smarty
                 * RAM available + have enabled caching inode tables (aka.
                 * "descriptors"). Still it won't hurt you.
                 */
-               $this->setUseSubDirs(true);
+               $this->setUseSubDirs($use_sub_dirs);
 
                $this->left_delimiter  = Renderer::getTemplateLeftDelimiter();
                $this->right_delimiter = Renderer::getTemplateRightDelimiter();
index 1f766ec65dbbc4fcac81a6483e7f95af19bd1dcc..5ea01166fd49a0d14dab88221e8a487800e995cd 100644 (file)
@@ -44,10 +44,13 @@ final class FriendicaSmartyEngine extends TemplateEngine
         */
        public function __construct(string $theme, array $theme_info)
        {
-               $this->theme = $theme;
+               $this->theme      = $theme;
                $this->theme_info = $theme_info;
-               $work_dir = DI::config()->get('smarty3', 'config_dir');
-               $this->smarty = new FriendicaSmarty($this->theme, $this->theme_info, $work_dir);
+
+               $work_dir     = DI::config()->get('smarty3', 'config_dir');
+               $use_sub_dirs = DI::config()->get('smarty3', 'use_sub_dirs');
+
+               $this->smarty = new FriendicaSmarty($this->theme, $this->theme_info, $work_dir, $use_sub_dirs);
 
                if (!is_writable($work_dir)) {
                        $admin_message = DI::l10n()->t('The folder %s must be writable by webserver.', $work_dir);
index 7625de0bd4fcb096e7484c1d76a97e2ce7286595..adffad89674e36f4672cfc59d234e8597da6cfeb 100644 (file)
@@ -714,5 +714,10 @@ return [
                // config_dir (String)
                // Base working directory for the templating engine, must be writeable by the webserver user
                'config_dir' => 'view/smarty3',
+
+               // use_sub_dirs (Boolean)
+               // By default the template cache is stored in several sub directories.
+               // 
+               'use_sub_dirs' => true,
        ],
 ];