From 18d38b8e058e2b67da1879d0470bf177ae3e41e6 Mon Sep 17 00:00:00 2001 From: Tom de Goede Date: Tue, 10 Feb 2015 01:12:50 +0100 Subject: [PATCH 1/5] Config files placed in subdirectories are keyed under their subdirectory. Also mergeConfigFrom will check if a directory is given as $path and merge all files properly. --- .../Foundation/Bootstrap/LoadConfiguration.php | 3 ++- src/Illuminate/Support/ServiceProvider.php | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php b/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php index 0eb3788a1418..6e8e44c6fcae 100644 --- a/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php +++ b/src/Illuminate/Foundation/Bootstrap/LoadConfiguration.php @@ -69,7 +69,8 @@ protected function getConfigurationFiles(Application $app) foreach (Finder::create()->files()->name('*.php')->in($app->configPath()) as $file) { - $files[basename($file->getRealPath(), '.php')] = $file->getRealPath(); + $key = str_replace('\\','/',substr($file->getRealPath(), strlen($app->configPath()) + 1, -4)); + $files[/*basename($file->getRealPath(), '.php')*/$key] = $file->getRealPath(); } return $files; diff --git a/src/Illuminate/Support/ServiceProvider.php b/src/Illuminate/Support/ServiceProvider.php index c4e454f64163..694fd32dcc80 100755 --- a/src/Illuminate/Support/ServiceProvider.php +++ b/src/Illuminate/Support/ServiceProvider.php @@ -58,6 +58,23 @@ abstract public function register(); * @return void */ protected function mergeConfigFrom($path, $key) + { + if(is_dir($path)) + $this->mergeConfigFromDir($path,$key); + else + $this->mergeConfigFromFile($path,$key); + } + + protected function mergeConfigFromDir($path, $key) + { + foreach (Finder::create()->files()->name('*.php')->in(realpath($path)) as $file) + { + $subKey = str_replace('\\','/',substr($file->getRealPath(), strlen(realpath($path)) + 1, -4)); + $this->mergeConfigFromFile($file->getRealPath(), $key.'/'.$subKey); + } + } + + protected function mergeConfigFromFile($path, $key) { $config = $this->app['config']->get($key, []); From 962c4eac18a594eb4769676fa5e0fc98ae04048f Mon Sep 17 00:00:00 2001 From: Tom de Goede Date: Tue, 10 Feb 2015 16:28:21 +0100 Subject: [PATCH 2/5] Package rename --- composer.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 7fcd1d8aa657..7ed22e4f1a0f 100755 --- a/composer.json +++ b/composer.json @@ -1,5 +1,5 @@ { - "name": "laravel/framework", + "name": "ao/framework", "description": "The Laravel Framework.", "keywords": ["framework", "laravel"], "license": "MIT", @@ -7,6 +7,10 @@ { "name": "Taylor Otwell", "email": "taylorotwell@gmail.com" + }, + { + "name": "Tom de Goede", + "email": "tom@allesonline.eu" } ], "require": { From 5ebbc5e934745332a2a2d1d028755e3edb171107 Mon Sep 17 00:00:00 2001 From: Tom de Goede Date: Tue, 10 Feb 2015 16:34:23 +0100 Subject: [PATCH 3/5] Package rename --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 7ed22e4f1a0f..7d42b1611f9f 100755 --- a/composer.json +++ b/composer.json @@ -1,5 +1,5 @@ { - "name": "ao/framework", + "name": "laravel/framework", "description": "The Laravel Framework.", "keywords": ["framework", "laravel"], "license": "MIT", From 4bc12b695d12d5ee85712aa17ca5c0c8dbcade89 Mon Sep 17 00:00:00 2001 From: Tom de Goede Date: Tue, 10 Feb 2015 18:31:30 +0100 Subject: [PATCH 4/5] Properly using finder --- src/Illuminate/Support/ServiceProvider.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Illuminate/Support/ServiceProvider.php b/src/Illuminate/Support/ServiceProvider.php index 694fd32dcc80..a74173e256dc 100755 --- a/src/Illuminate/Support/ServiceProvider.php +++ b/src/Illuminate/Support/ServiceProvider.php @@ -1,6 +1,7 @@ Date: Tue, 10 Feb 2015 18:43:44 +0100 Subject: [PATCH 5/5] ... --- composer.json | 4 ---- 1 file changed, 4 deletions(-) diff --git a/composer.json b/composer.json index 7d42b1611f9f..7fcd1d8aa657 100755 --- a/composer.json +++ b/composer.json @@ -7,10 +7,6 @@ { "name": "Taylor Otwell", "email": "taylorotwell@gmail.com" - }, - { - "name": "Tom de Goede", - "email": "tom@allesonline.eu" } ], "require": {