From 5faeba22490dfadac0c40e034e7273e132392365 Mon Sep 17 00:00:00 2001 From: Nicolas Iooss Date: Mon, 14 Oct 2013 21:20:42 +0200 Subject: [PATCH] Don't force platal core to be in core/ directory * Add a $globals->coreroot variable * pl_autoload searches in core first, then in spoolroot Signed-off-by: Nicolas Iooss --- classes/plerrorreport.php | 2 +- classes/plglobals.php | 4 +++- classes/plmodule.php | 2 +- classes/plpage.php | 6 +++--- include/platal.inc.php | 6 ++++-- 5 files changed, 12 insertions(+), 8 deletions(-) diff --git a/classes/plerrorreport.php b/classes/plerrorreport.php index 8d9b8a8..56545e2 100644 --- a/classes/plerrorreport.php +++ b/classes/plerrorreport.php @@ -128,7 +128,7 @@ class PlErrorReportFeed extends PlFeed $globals->baseurl . '/site_errors', 'Erreurs d\'exécution', $globals->baseurl . '/images/logo.png', - $globals->spoolroot . '/core/templates/site_errors.feed.tpl'); + $globals->coreroot . '/templates/site_errors.feed.tpl'); } protected function fetch(PlUser $user) diff --git a/classes/plglobals.php b/classes/plglobals.php index fd11a25..6f71bbf 100644 --- a/classes/plglobals.php +++ b/classes/plglobals.php @@ -103,6 +103,7 @@ class PlGlobals public $baseurl_http; /** paths */ + public $coreroot; public $spoolroot; /** Localization configuration. @@ -127,7 +128,8 @@ class PlGlobals */ public function __construct(array $files) { - $this->spoolroot = dirname(dirname(dirname(__FILE__))); + $this->coreroot = dirname(dirname(__FILE__)); + $this->spoolroot = dirname($this->coreroot); $this->readConfig($files); if (isset($_SERVER) && isset($_SERVER['SERVER_NAME'])) { diff --git a/classes/plmodule.php b/classes/plmodule.php index d6ad810..1797abe 100644 --- a/classes/plmodule.php +++ b/classes/plmodule.php @@ -122,7 +122,7 @@ abstract class PLModule { global $globals; if ($modname == 'core') { - $mod_path = $globals->spoolroot . '/core/modules/' . $modname; + $mod_path = $globals->coreroot . '/modules/' . $modname; } else { $mod_path = $globals->spoolroot . '/modules/' . $modname; } diff --git a/classes/plpage.php b/classes/plpage.php index c2cd19e..9841123 100644 --- a/classes/plpage.php +++ b/classes/plpage.php @@ -45,7 +45,7 @@ abstract class PlPage extends Smarty $this->template_dir = $globals->spoolroot . '/templates/'; $this->compile_dir = $globals->spoolroot . '/spool/templates_c/'; array_unshift($this->plugins_dir, - $globals->spoolroot . '/core/plugins/', + $globals->coreroot . '/plugins/', $globals->spoolroot . '/plugins/'); $this->config_dir = $globals->spoolroot . '/configs/'; @@ -79,7 +79,7 @@ abstract class PlPage extends Smarty public static function getCoreTpl($tpl) { global $globals; - return $globals->spoolroot . '/core/templates/' . $tpl; + return $globals->coreroot . '/templates/' . $tpl; } // }}} @@ -516,7 +516,7 @@ function core_include($source, $smarty) { global $globals; return preg_replace('/\{include( [^}]*)? core=([^} ]+)(.*?)\}/ui', - '{include\1 file="' . $globals->spoolroot . '/core/templates/\2"\3}', + '{include\1 file="' . $globals->coreroot . '/templates/\2"\3}', $source); } diff --git a/include/platal.inc.php b/include/platal.inc.php index f314932..7fbdc08 100644 --- a/include/platal.inc.php +++ b/include/platal.inc.php @@ -54,9 +54,11 @@ function pl_autoload($cls, array $pathes = array()) } else if (starts_with($cls, 'pldbtable')) { $cls = 'pldbtableentry'; } - $basepath = dirname(dirname(dirname(__FILE__))); + $corebasepath = dirname(dirname(__FILE__)); + $basepath = dirname($corebasepath); + $corebasename = basename($corebasepath); - array_unshift($pathes, 'core/classes', 'classes'); + array_unshift($pathes, $corebasename . '/classes', 'classes'); foreach ($pathes as $path) { if (file_exists("$basepath/$path/$cls.php")) { if (include_once "$basepath/$path/$cls.php") { -- 2.1.4