X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=application%2FPageBuilder.php;h=32c7f9f18b01ba131be61bb778dc3d7a9239b727;hb=3cc8c898307ad53507a128db2b11238be2641c32;hp=82580787a8a5356ca138448f9f053b12dbea678b;hpb=92a381f51737de1e4a03c482fe7c43da311ad556;p=github%2Fshaarli%2FShaarli.git diff --git a/application/PageBuilder.php b/application/PageBuilder.php index 82580787..32c7f9f1 100644 --- a/application/PageBuilder.php +++ b/application/PageBuilder.php @@ -14,13 +14,21 @@ class PageBuilder */ private $tpl; + /** + * @var ConfigManager $conf Configuration Manager instance. + */ + protected $conf; + /** * PageBuilder constructor. * $tpl is initialized at false for lazy loading. + * + * @param ConfigManager $conf Configuration Manager instance (reference). */ - function __construct() + function __construct(&$conf) { $this->tpl = false; + $this->conf = $conf; } /** @@ -33,17 +41,17 @@ class PageBuilder try { $version = ApplicationUtils::checkUpdate( shaarli_version, - $GLOBALS['config']['UPDATECHECK_FILENAME'], - $GLOBALS['config']['UPDATECHECK_INTERVAL'], - $GLOBALS['config']['ENABLE_UPDATECHECK'], + $this->conf->get('resource.update_check'), + $this->conf->get('updates.check_updates_interval'), + $this->conf->get('updates.check_updates'), isLoggedIn(), - $GLOBALS['config']['UPDATECHECK_BRANCH'] + $this->conf->get('updates.check_updates_branch') ); $this->tpl->assign('newVersion', escape($version)); $this->tpl->assign('versionError', ''); } catch (Exception $exc) { - logm($GLOBALS['config']['LOG_FILE'], $_SERVER['REMOTE_ADDR'], $exc->getMessage()); + logm($this->conf->get('resource.log'), $_SERVER['REMOTE_ADDR'], $exc->getMessage()); $this->tpl->assign('newVersion', ''); $this->tpl->assign('versionError', escape($exc->getMessage())); } @@ -60,21 +68,18 @@ class PageBuilder $this->tpl->assign('source', index_url($_SERVER)); $this->tpl->assign('version', shaarli_version); $this->tpl->assign('scripturl', index_url($_SERVER)); - $this->tpl->assign('pagetitle', 'Shaarli'); $this->tpl->assign('privateonly', !empty($_SESSION['privateonly'])); // Show only private links? - if (!empty($GLOBALS['title'])) { - $this->tpl->assign('pagetitle', $GLOBALS['title']); - } - if (!empty($GLOBALS['titleLink'])) { - $this->tpl->assign('titleLink', $GLOBALS['titleLink']); - } - if (!empty($GLOBALS['pagetitle'])) { - $this->tpl->assign('pagetitle', $GLOBALS['pagetitle']); - } - $this->tpl->assign('shaarlititle', empty($GLOBALS['title']) ? 'Shaarli': $GLOBALS['title']); - if (!empty($GLOBALS['plugin_errors'])) { - $this->tpl->assign('plugin_errors', $GLOBALS['plugin_errors']); + $this->tpl->assign('pagetitle', $this->conf->get('general.title', 'Shaarli')); + if ($this->conf->exists('general.header_link')) { + $this->tpl->assign('titleLink', $this->conf->get('general.header_link')); } + $this->tpl->assign('shaarlititle', $this->conf->get('general.title', 'Shaarli')); + $this->tpl->assign('openshaarli', $this->conf->get('security.open_shaarli', false)); + $this->tpl->assign('showatom', $this->conf->get('feed.show_atom', false)); + $this->tpl->assign('hide_timestamps', $this->conf->get('privacy.hide_timestamps', false)); + $this->tpl->assign('token', getToken($this->conf)); + // To be removed with a proper theme configuration. + $this->tpl->assign('conf', $this->conf); } /** @@ -85,7 +90,6 @@ class PageBuilder */ public function assign($placeholder, $value) { - // Lazy initialization if ($this->tpl === false) { $this->initialize(); } @@ -101,7 +105,6 @@ class PageBuilder */ public function assignAll($data) { - // Lazy initialization if ($this->tpl === false) { $this->initialize(); } @@ -113,6 +116,7 @@ class PageBuilder foreach ($data as $key => $value) { $this->assign($key, $value); } + return true; } /** @@ -123,10 +127,10 @@ class PageBuilder */ public function renderPage($page) { - // Lazy initialization - if ($this->tpl===false) { + if ($this->tpl === false) { $this->initialize(); } + $this->tpl->draw($page); }