mirror of
https://github.com/kamilwylegala/cakephp2-php8.git
synced 2025-01-31 17:16:18 +00:00
Adding searching for paths when cake core is installed in the php include_path
Corrected setting for cache key git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@6002 3807eeeb-6ff5-0310-8944-8be069107fe0
This commit is contained in:
parent
c000940e36
commit
412cc7adfb
1 changed files with 69 additions and 28 deletions
|
@ -177,7 +177,7 @@ class Configure extends Object {
|
||||||
$items = array();
|
$items = array();
|
||||||
$Folder =& new Folder($path);
|
$Folder =& new Folder($path);
|
||||||
$contents = $Folder->read(false, true);
|
$contents = $Folder->read(false, true);
|
||||||
if(is_array($contents)) {
|
if (is_array($contents)) {
|
||||||
if(!$suffix) {
|
if(!$suffix) {
|
||||||
return $contents[0];
|
return $contents[0];
|
||||||
} else {
|
} else {
|
||||||
|
@ -440,29 +440,61 @@ class Configure extends Object {
|
||||||
*/
|
*/
|
||||||
function __buildPaths($paths) {
|
function __buildPaths($paths) {
|
||||||
$_this =& Configure::getInstance();
|
$_this =& Configure::getInstance();
|
||||||
|
$cache = false;
|
||||||
|
$basePaths = Cache::read('base_paths', '_cake_core_');
|
||||||
|
if (!$basePaths) {
|
||||||
|
$cache = true;
|
||||||
|
$all = explode(PATH_SEPARATOR, ini_get('include_path'));
|
||||||
|
$all = array_flip(array_flip((array_merge(array(CAKE_CORE_INCLUDE_PATH), $all))));
|
||||||
|
foreach ($all as $path) {
|
||||||
|
$path = rtrim($path, DS);
|
||||||
|
if ($path == '.') {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (is_dir($path . DS . 'cake' . DS . 'libs' . DS . 'model' . DS . 'behaviors')) {
|
||||||
|
$paths['behavior'][] = $path . DS . 'cake' . DS . 'libs' . DS . 'model' . DS . 'behaviors';
|
||||||
|
}
|
||||||
|
if (is_dir($path . DS . 'cake' . DS . 'libs' . DS . 'controller' . DS . 'components')) {
|
||||||
|
$paths['component'][] = $path . DS . 'cake' . DS . 'libs' . DS . 'controller' . DS . 'components';
|
||||||
|
}
|
||||||
|
if (is_dir($path . DS . 'cake' . DS . 'libs' . DS . 'view' . DS . 'helpers')) {
|
||||||
|
$paths['helper'][] = $path . DS . 'cake' . DS . 'libs' . DS . 'view' . DS . 'helpers';
|
||||||
|
}
|
||||||
|
if (is_dir($path . DS . 'cake' . DS . 'libs' . DS . 'controller')) {
|
||||||
|
$paths['controller'][] = $path . DS . 'cake' . DS . 'libs' . DS . 'controller';
|
||||||
|
}
|
||||||
|
if (is_dir($path . DS . 'cake' . DS . 'libs' . DS . 'view')) {
|
||||||
|
$paths['view'][] = $path . DS . 'cake' . DS . 'libs' . DS . 'view';
|
||||||
|
}
|
||||||
|
if (is_dir($path . DS . 'cake' . DS . 'libs' . DS . 'model')) {
|
||||||
|
$paths['model'][] = $path . DS . 'cake' . DS . 'libs' . DS . 'model';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$basePaths = array(
|
$basePaths = array(
|
||||||
'plugin' => APP . 'plugins' . DS,
|
'plugin' => APP . 'plugins' . DS,
|
||||||
'behavior' => array(BEHAVIORS, CAKE_CORE_INCLUDE_PATH . DS . 'cake' . DS . 'libs' . DS . 'model' . DS . 'behaviors' . DS),
|
'behavior' => array_merge(array(BEHAVIORS), $paths['behavior']),
|
||||||
'component' => array(COMPONENTS, CAKE_CORE_INCLUDE_PATH . DS . 'cake' . DS . 'libs' . DS . 'controller' . DS . 'components' . DS),
|
'component' => array_merge(array(COMPONENTS), $paths['component']),
|
||||||
'helper' => array(HELPERS, APP, CAKE_CORE_INCLUDE_PATH . DS . 'cake' . DS . 'libs' . DS . 'view' . DS . 'helpers' . DS),
|
'helper' => array_merge(array(HELPERS, APP), $paths['helper']),
|
||||||
'controller' => array(CONTROLLERS, APP, CAKE_CORE_INCLUDE_PATH . DS . 'cake' . DS . 'libs' . DS . 'controller' . DS),
|
'controller' => array_merge(array(CONTROLLERS, APP), $paths['controller']),
|
||||||
'view' => array(VIEWS, CAKE_CORE_INCLUDE_PATH . DS . 'cake' . DS . 'libs' . DS . 'view'. DS),
|
'view' => array_merge(array(VIEWS), $paths['view']),
|
||||||
'model' => array(MODELS, APP, CAKE_CORE_INCLUDE_PATH . DS . 'cake' . DS . 'libs' . DS . 'model'. DS)
|
'model' => array_merge(array(MODELS), $paths['model']));
|
||||||
);
|
}
|
||||||
|
|
||||||
foreach ($basePaths as $type => $default) {
|
foreach ($basePaths as $type => $default) {
|
||||||
$pathsVar = $type . 'Paths';
|
$pathsVar = $type . 'Paths';
|
||||||
if (!is_array($default)) {
|
if (!is_array($default)) {
|
||||||
$default = array($default);
|
$default = array($default);
|
||||||
}
|
}
|
||||||
|
|
||||||
$_this->{$pathsVar} = $default;
|
$_this->{$pathsVar} = $default;
|
||||||
|
|
||||||
if (isset($paths[$pathsVar]) && !empty($paths[$pathsVar])) {
|
if (isset($paths[$pathsVar]) && !empty($paths[$pathsVar])) {
|
||||||
$_this->{$pathsVar} = array_merge((array)$paths[$pathsVar], $_this->{$pathsVar});
|
$_this->{$pathsVar} = array_merge((array)$paths[$pathsVar], $_this->{$pathsVar});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if ($cache) {
|
||||||
|
Cache::write('base_paths', array_filter($basePaths), '_cake_core_');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Loads the app/config/bootstrap.php
|
* Loads the app/config/bootstrap.php
|
||||||
|
@ -475,6 +507,19 @@ class Configure extends Object {
|
||||||
function __loadBootstrap($boot) {
|
function __loadBootstrap($boot) {
|
||||||
$_this =& Configure::getInstance();
|
$_this =& Configure::getInstance();
|
||||||
|
|
||||||
|
if($_this->read('Cache.disable') !== true) {
|
||||||
|
$cache = Cache::settings();
|
||||||
|
if(empty($cache)) {
|
||||||
|
trigger_error('Cache not configured properly. Please check Cache::config(); in APP/config/core.php', E_USER_WARNING);
|
||||||
|
Cache::config('default', array('engine' => 'File'));
|
||||||
|
$cache = Cache::settings();
|
||||||
|
}
|
||||||
|
$settings = array('prefix' => 'cake_core_', 'path' => CACHE . 'persistent' . DS);
|
||||||
|
if (Configure::read() > 1) {
|
||||||
|
$settings = array('prefix' => 'cake_core_', 'duration' => 10, 'path' => CACHE . 'persistent' . DS);
|
||||||
|
}
|
||||||
|
Cache::config('_cake_core_' , array_merge($cache, $settings));
|
||||||
|
}
|
||||||
|
|
||||||
if ($boot) {
|
if ($boot) {
|
||||||
$_this->write('App', array('base' => false, 'baseUrl' => false, 'dir' => APP_DIR, 'webroot' => WEBROOT_DIR));
|
$_this->write('App', array('base' => false, 'baseUrl' => false, 'dir' => APP_DIR, 'webroot' => WEBROOT_DIR));
|
||||||
|
@ -492,21 +537,6 @@ class Configure extends Object {
|
||||||
$_this->__buildPaths(compact('modelPaths', 'viewPaths', 'controllerPaths', 'helperPaths', 'componentPaths', 'behaviorPaths', 'pluginPaths'));
|
$_this->__buildPaths(compact('modelPaths', 'viewPaths', 'controllerPaths', 'helperPaths', 'componentPaths', 'behaviorPaths', 'pluginPaths'));
|
||||||
}
|
}
|
||||||
|
|
||||||
if($_this->read('Cache.disable') !== true) {
|
|
||||||
$cache = Cache::settings();
|
|
||||||
if(empty($cache)) {
|
|
||||||
trigger_error('Cache not configured properly. Please check Cache::config(); in APP/config/core.php', E_USER_WARNING);
|
|
||||||
Cache::config('default', array('engine' => 'File'));
|
|
||||||
$cache = Cache::settings();
|
|
||||||
}
|
|
||||||
$settings = array('prefix' => 'cake_core_', 'path' => CACHE . 'persistent' . DS);
|
|
||||||
if (Configure::read() > 1) {
|
|
||||||
$settings = array('prefix' => 'cake_core_', 'duration' => 10, 'path' => CACHE . 'persistent' . DS);
|
|
||||||
}
|
|
||||||
Cache::config('_cake_core_' , array_merge($cache, $settings));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if (defined('BASE_URL')) {
|
if (defined('BASE_URL')) {
|
||||||
trigger_error('BASE_URL Deprecated: See Configure::write(\'App.baseUrl\', \'' . BASE_URL . '\'); in APP/config/core.php', E_USER_WARNING);
|
trigger_error('BASE_URL Deprecated: See Configure::write(\'App.baseUrl\', \'' . BASE_URL . '\'); in APP/config/core.php', E_USER_WARNING);
|
||||||
$_this->write('App.baseUrl', BASE_URL);
|
$_this->write('App.baseUrl', BASE_URL);
|
||||||
|
@ -712,7 +742,7 @@ class App extends Object {
|
||||||
static $instance = array();
|
static $instance = array();
|
||||||
if (!$instance) {
|
if (!$instance) {
|
||||||
$instance[0] =& new App();
|
$instance[0] =& new App();
|
||||||
$map = Cache::read('file_map', 'import_map');
|
$map = Cache::read('file_map', '_cake_core_');
|
||||||
|
|
||||||
if ($map) {
|
if ($map) {
|
||||||
$instance[0]->__map = $map;
|
$instance[0]->__map = $map;
|
||||||
|
@ -917,7 +947,18 @@ class App extends Object {
|
||||||
*/
|
*/
|
||||||
function __paths($type) {
|
function __paths($type) {
|
||||||
if ($type === 'Core') {
|
if ($type === 'Core') {
|
||||||
return array(CAKE_CORE_INCLUDE_PATH . DS . 'cake' . DS . 'libs');
|
$all = explode(PATH_SEPARATOR, ini_get('include_path'));
|
||||||
|
$all = array_flip(array_flip((array_merge(array(CAKE_CORE_INCLUDE_PATH), $all))));
|
||||||
|
foreach ($all as $path) {
|
||||||
|
$path = rtrim($path, DS);
|
||||||
|
if ($path == '.') {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (is_dir($path . DS . 'cake' . DS . 'libs')) {
|
||||||
|
$paths[] = $path . DS . 'cake' . DS . 'libs';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $paths;
|
||||||
}
|
}
|
||||||
$paths = Configure::read(strtolower($type) . 'Paths');
|
$paths = Configure::read(strtolower($type) . 'Paths');
|
||||||
return $paths;
|
return $paths;
|
||||||
|
|
Loading…
Add table
Reference in a new issue