summaryrefslogtreecommitdiff
path: root/app/common.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/common.php')
-rw-r--r--app/common.php33
1 files changed, 15 insertions, 18 deletions
diff --git a/app/common.php b/app/common.php
index 1ace3d81..f4485267 100644
--- a/app/common.php
+++ b/app/common.php
@@ -1,17 +1,18 @@
<?php
-// Common file between cli and web interface
+require 'vendor/autoload.php';
-require __DIR__.'/Core/Loader.php';
-require __DIR__.'/helpers.php';
-require __DIR__.'/functions.php';
+// Automatically parse environment configuration (Heroku)
+if (getenv('DATABASE_URL')) {
-use Core\Loader;
-use Core\Registry;
+ $dbopts = parse_url(getenv('DATABASE_URL'));
-// Include password_compat for PHP < 5.5
-if (version_compare(PHP_VERSION, '5.5.0', '<')) {
- require __DIR__.'/../vendor/password.php';
+ define('DB_DRIVER', $dbopts['scheme']);
+ define('DB_USERNAME', $dbopts["user"]);
+ define('DB_PASSWORD', $dbopts["pass"]);
+ define('DB_HOSTNAME', $dbopts["host"]);
+ define('DB_PORT', isset($dbopts["port"]) ? $dbopts["port"] : null);
+ define('DB_NAME', ltrim($dbopts["path"],'/'));
}
// Include custom config file
@@ -21,12 +22,8 @@ if (file_exists('config.php')) {
require __DIR__.'/constants.php';
-$loader = new Loader;
-$loader->setPath('app');
-$loader->setPath('vendor');
-$loader->execute();
-
-$registry = new Registry;
-$registry->db = setup_db();
-$registry->event = setup_events();
-$registry->mailer = function() { return setup_mailer(); };
+$container = new Pimple\Container;
+$container->register(new ServiceProvider\LoggingProvider);
+$container->register(new ServiceProvider\DatabaseProvider);
+$container->register(new ServiceProvider\ClassProvider);
+$container->register(new ServiceProvider\EventDispatcherProvider);