53 lines
1.5 KiB
PHP
53 lines
1.5 KiB
PHP
<?php
|
|
/**
|
|
* bin/autoload.php
|
|
*
|
|
* Handles the initial setup like autoloading, basic functions, constants, etc.
|
|
*
|
|
* @version 3.0
|
|
* @author Joey Kimsey <Joey@thetempusproject.com>
|
|
* @link https://TheTempusProject.com/Core
|
|
* @license https://opensource.org/licenses/MIT [MIT LICENSE]
|
|
*/
|
|
namespace TheTempusProject\Bedrock;
|
|
|
|
use TheTempusProject\Hermes\Classes\Autoloader;
|
|
|
|
if ( ! defined('BEDROCK_ROOT_DIRECTORY' ) ) {
|
|
define('BEDROCK_ROOT_DIRECTORY', dirname(__DIR__) . DIRECTORY_SEPARATOR);
|
|
}
|
|
if ( ! defined('BEDROCK_CONFIG_DIRECTORY' ) ) {
|
|
define('BEDROCK_CONFIG_DIRECTORY', BEDROCK_ROOT_DIRECTORY . 'config' . DIRECTORY_SEPARATOR);
|
|
}
|
|
if ( ! defined('BEDROCK_CONSTANTS_LOADED' ) ) {
|
|
require_once BEDROCK_CONFIG_DIRECTORY . 'constants.php';
|
|
}
|
|
if ( ! class_exists( 'TheTempusProject\Bedrock\Classes\Autoloader' ) ) {
|
|
if ( file_exists( BEDROCK_CLASSES_DIRECTORY . 'autoloader.php' ) ) {
|
|
require_once BEDROCK_CLASSES_DIRECTORY . 'autoloader.php';
|
|
}
|
|
}
|
|
if ( ! class_exists( 'TheTempusProject\Bedrock\App' ) ) {
|
|
if ( file_exists( BEDROCK_ROOT_DIRECTORY . 'app.php' ) ) {
|
|
require_once BEDROCK_ROOT_DIRECTORY . 'app.php';
|
|
}
|
|
}
|
|
|
|
$autoloader = new Autoloader;
|
|
$autoloader->setRootFolder( BEDROCK_ROOT_DIRECTORY );
|
|
$autoloader->addNamespace(
|
|
'TheTempusProject\Bedrock',
|
|
'bin'
|
|
);
|
|
$autoloader->addNamespace(
|
|
'TheTempusProject\Bedrock\Classes',
|
|
'classes'
|
|
);
|
|
$autoloader->addNamespace(
|
|
'TheTempusProject\Bedrock\Functions',
|
|
'functions'
|
|
);
|
|
$autoloader->register();
|
|
|
|
define( 'BEDROCK_AUTOLOADED', true );
|