diff --git a/include/class_baseSelector.inc b/include/class_baseSelector.inc index c72940e4dfbc322a7e205dd77c6b3eba5fd924d8..88e9363959c4310cece41ab46a43560c48186610 100644 --- a/include/class_baseSelector.inc +++ b/include/class_baseSelector.inc @@ -1,8 +1,9 @@ <?php /* This code is part of FusionDirectory (http://www.fusiondirectory.org/) + Copyright (C) 2003-2010 Cajus Pollmeier - Copyright (C) 2011-2019 FusionDirectory + Copyright (C) 2011-2020 FusionDirectory This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -34,7 +35,7 @@ class baseSelector private $action; private $height = 500; private $submitButton = TRUE; - protected $tree = ''; + protected $tree = NULL; protected $pathMapping = []; protected $lastState; @@ -181,7 +182,8 @@ class baseSelector return TRUE; } - $this->renderTree(); + /* Force tree render next time render() is called */ + $this->tree = NULL; $this->lastState = TRUE; return TRUE; @@ -255,6 +257,10 @@ class baseSelector */ function render (): string { + if (!isset($this->tree)) { + $this->renderTree(); + } + return $this->tree; } diff --git a/include/class_standAlonePage.inc b/include/class_standAlonePage.inc index 705d96fa8ce27dde55fa07868ae9b335dc41629c..0633ae6a574302e12f9a5e4be057e7c0d5bf0157 100644 --- a/include/class_standAlonePage.inc +++ b/include/class_standAlonePage.inc @@ -139,6 +139,7 @@ class standAlonePage function setupSmarty () { global $config; + $smarty = get_smarty(); /* Set template compile directory */