41 lignes
1.0 KiB
PHP
41 lignes
1.0 KiB
PHP
<?php
|
|
|
|
function loadApp() {
|
|
// Loaded as a dependency
|
|
if (file_exists(__DIR__ . '/../../../autoload.php')) {
|
|
return require_once __DIR__ . '/../../../autoload.php';
|
|
}
|
|
|
|
// Loaded in the project itself
|
|
if (file_exists(__DIR__ . '/../vendor/autoload.php')) {
|
|
return require_once __DIR__ . '/../vendor/autoload.php';
|
|
}
|
|
|
|
// Loaded in the project itself, when vendor isn't installed
|
|
if (file_exists(__DIR__ . '/../daux.phar')) {
|
|
define('PHAR_DIR', __DIR__ . '/..');
|
|
|
|
return require_once 'phar://' . __DIR__ . '/../daux.phar/vendor/autoload.php';
|
|
}
|
|
|
|
throw new Exception('Impossible to load Daux, missing vendor/ or daux.phar');
|
|
}
|
|
|
|
$loader = loadApp();
|
|
|
|
if ($loader) {
|
|
$ext = __DIR__ . '/../daux';
|
|
if (is_dir(getcwd() . "/daux")) {
|
|
$ext = getcwd() . "/daux";
|
|
}
|
|
|
|
$env = getenv('DAUX_EXTENSION');
|
|
if ($env && is_dir($env)) {
|
|
$ext = $env;
|
|
}
|
|
|
|
define('DAUX_EXTENSION', $ext);
|
|
|
|
$loader->setPsr4("Todaymade\\Daux\\Extension\\", $ext);
|
|
}
|