X-Git-Url: http://git.inspyration.org/?a=blobdiff_plain;f=public%2Findex.php;h=f347d342f402e9e4cf42dddfca16b5a074656d7a;hb=b1ed9cf58083c48409f4d33923657eb8dc0ec70d;hp=5c4778d550436fdeeb16be58d54ff3c69cc6ad23;hpb=d43b616060673ff50933311b813bf93fd6e8d96e;p=zf2.biz%2Fgalerie.git diff --git a/public/index.php b/public/index.php index 5c4778d..f347d34 100644 --- a/public/index.php +++ b/public/index.php @@ -1,30 +1,40 @@ array())); +// Composer autoloading +if (file_exists('vendor/autoload.php')) { + $loader = include 'vendor/autoload.php'; +} -$appConfig = include __DIR__ . '/../configs/application.config.php'; +// Support for ZF2_PATH environment variable or git submodule +if ($zf2Path = getenv('ZF2_PATH') ?: (is_dir('vendor/ZF2/library') ? 'vendor/ZF2/library' : false)) { + if (isset($loader)) { + $loader->add('Zend', $zf2Path . '/Zend'); + } else { + include $zf2Path . '/Zend/Loader/AutoloaderFactory.php'; + AutoloaderFactory::factory(array( + 'Zend\Loader\StandardAutoloader' => array( + 'autoregister_zf' => true + ) + )); + } +} -$moduleLoader = new Zend\Loader\ModuleAutoloader($appConfig['module_paths']); -$moduleLoader->register(); +if (!class_exists('Zend\Loader\AutoloaderFactory')) { + throw new RuntimeException('Unable to load ZF2. Run `php composer.phar install` or define a ZF2_PATH environment variable.'); +} -$moduleManager = new Zend\Module\Manager( - $appConfig['modules'], - new Zend\Module\ManagerOptions($appConfig['module_manager_options']) -); +// Get application stack configuration +$configuration = include 'config/application.config.php'; -// Create application, bootstrap, and run -$bootstrap = new Zend\Mvc\Bootstrap($moduleManager); -$application = new Zend\Mvc\Application; -$bootstrap->bootstrap($application); -$application->run()->send(); +// Setup service manager +$serviceManager = new ServiceManager(new ServiceManagerConfiguration($configuration['service_manager'])); +$serviceManager->setService('ApplicationConfiguration', $configuration); +$serviceManager->get('ModuleManager')->loadModules(); + +// Run application +$serviceManager->get('Application')->bootstrap()->run()->send();