diff options
author | Dhruv <dhruv.goel92@gmail.com> | 2013-08-08 13:56:39 +0530 |
---|---|---|
committer | Dhruv <dhruv.goel92@gmail.com> | 2013-08-08 13:56:39 +0530 |
commit | f35d732f40181a033e5ecd4e48fc846a82a73955 (patch) | |
tree | 7ca90c3fbe3a7702584f3c105745e58b275eebc4 /phpBB/includes/functions_container.php | |
parent | 08a6bd2218e050ef2e82e644416a725b2a6cca99 (diff) | |
parent | 32499c8808bb72812f66ba00e35c5af128a4d4e2 (diff) | |
download | forums-f35d732f40181a033e5ecd4e48fc846a82a73955.tar forums-f35d732f40181a033e5ecd4e48fc846a82a73955.tar.gz forums-f35d732f40181a033e5ecd4e48fc846a82a73955.tar.bz2 forums-f35d732f40181a033e5ecd4e48fc846a82a73955.tar.xz forums-f35d732f40181a033e5ecd4e48fc846a82a73955.zip |
Merge remote-tracking branch 'nickvergessen/ticket/11574' into develop
# By Joas Schilling (16) and Igor Wiedler (6)
# Via Joas Schilling (5) and Igor Wiedler (2)
* nickvergessen/ticket/11574: (22 commits)
[ticket/11574] Remove install/udpate/new/ fallback from database_update.php
[ticket/11574] Do not display incompatible package note after successful update
[ticket/11574] Remove old "continue step"-message
[ticket/11574] Change order of files and database update
[ticket/11574] Fix more issues in the updater
[ticket/11574] Add trailing slash for consistency
[ticket/11574] Fix table prefix in database updater
[ticket/11574] Fix various path issues in the updater
[ticket/11574] Make install language filename less crazy
[ticket/11574] Use alternate DI config file for updater
[ticket/11574] Include normalizer so it loads form the correct directory
[ticket/11574] Only fall back to install/update versions, when IN_INSTALL ;)
[ticket/11574] Use log object instead of old function
[ticket/11574] Include vendor into update packages
[ticket/11574] Create phpbb_log object before using it.
[ticket/11574] Add correct language parameter to return links
[ticket/11574] Use request object rather then request_var function
[ticket/11574] Load new language files whenever possible
[ticket/11574] Require new files in install/index.php and add a class loader
[ticket/11574] Require new files in database_update.php and add a class loader
...
Diffstat (limited to 'phpBB/includes/functions_container.php')
-rw-r--r-- | phpBB/includes/functions_container.php | 41 |
1 files changed, 34 insertions, 7 deletions
diff --git a/phpBB/includes/functions_container.php b/phpBB/includes/functions_container.php index f63dde0614..7cbfa17a0e 100644 --- a/phpBB/includes/functions_container.php +++ b/phpBB/includes/functions_container.php @@ -118,7 +118,10 @@ function phpbb_create_container(array $extensions, $phpbb_root_path, $php_ext) */ function phpbb_create_install_container($phpbb_root_path, $php_ext) { - $core = new phpbb_di_extension_core($phpbb_root_path); + $other_config_path = $phpbb_root_path . 'install/update/new/config/'; + $config_path = file_exists($other_config_path . 'services.yml') ? $other_config_path : $phpbb_root_path . 'config/'; + + $core = new phpbb_di_extension_core($config_path); $container = phpbb_create_container(array($core), $phpbb_root_path, $php_ext); $container->setParameter('core.root_path', $phpbb_root_path); @@ -136,6 +139,32 @@ function phpbb_create_install_container($phpbb_root_path, $php_ext) } /** +* Create updater container +* +* @param string $phpbb_root_path Root path +* @param string $php_ext PHP Extension +* @param array $config_path Path to config directory +* @return ContainerBuilder object (compiled) +*/ +function phpbb_create_update_container($phpbb_root_path, $php_ext, $config_path) +{ + $config_file = $phpbb_root_path . 'config.' . $php_ext; + return phpbb_create_compiled_container( + $config_file, + array( + new phpbb_di_extension_config($config_file), + new phpbb_di_extension_core($config_path), + ), + array( + new phpbb_di_pass_collection_pass(), + new phpbb_di_pass_kernel_pass(), + ), + $phpbb_root_path, + $php_ext + ); +} + +/** * Create a compiled ContainerBuilder object * * @param array $extensions Array of Container extension objects @@ -146,11 +175,6 @@ function phpbb_create_install_container($phpbb_root_path, $php_ext) */ function phpbb_create_compiled_container($config_file, array $extensions, array $passes, $phpbb_root_path, $php_ext) { - $installed_exts = phpbb_bootstrap_enabled_exts($config_file, $phpbb_root_path); - - // Now pass the enabled extension paths into the ext compiler extension - $extensions[] = new phpbb_di_extension_ext($installed_exts); - // Create the final container to be compiled and cached $container = phpbb_create_container($extensions, $phpbb_root_path, $php_ext); @@ -231,11 +255,14 @@ function phpbb_create_dumped_container_unless_debug($config_file, array $extensi function phpbb_create_default_container($phpbb_root_path, $php_ext) { $config_file = $phpbb_root_path . 'config.' . $php_ext; + $installed_exts = phpbb_bootstrap_enabled_exts($config_file, $phpbb_root_path); + return phpbb_create_dumped_container_unless_debug( $config_file, array( new phpbb_di_extension_config($config_file), - new phpbb_di_extension_core($phpbb_root_path), + new phpbb_di_extension_core($phpbb_root_path . 'config'), + new phpbb_di_extension_ext($installed_exts), ), array( new phpbb_di_pass_collection_pass(), |