X-Git-Url: http://git.inspyration.org/?a=blobdiff_plain;f=public%2Findex.php;h=f347d342f402e9e4cf42dddfca16b5a074656d7a;hb=3b4e0e485233d44ee3a247bf34c1ca1bfd276c90;hp=edf3990be787f42da1173a3905468e599e445392;hpb=b38a3586fd6b4b73640daf12ed4222d246823ff0;p=zf2.biz%2Fgalerie.git diff --git a/public/index.php b/public/index.php index edf3990..f347d34 100644 --- a/public/index.php +++ b/public/index.php @@ -1,29 +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();