<?php
+// Import framework stuff
+use CoreFramework\Configuration\FrameworkConfiguration;
+use CoreFramework\Loader\ClassLoader;
+
/**
* Loads more include files by using the generic class loader
*
- * @author Roland Haeder <webmaster@ship-simu.org>
+ * @author Roland Haeder <webmaster@shipsimu.org>
* @version 0.0.0
- * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 Core Developer Team
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2017 Core Developer Team
* @license GNU GPL 3.0 or any newer version
- * @link http://www.ship-simu.org
+ * @link http://www.shipsimu.org
+ * @deprecated
+ * @todo Minimize these includes
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
*/
// Include the class loader function
-require(FrameworkConfiguration::getInstance()->getConfigEntry('base_path') . 'inc/loader/class_ClassLoader.php');
+require(FrameworkConfiguration::getSelfInstance()->getConfigEntry('base_path') . 'inc/loader/class_ClassLoader.php');
-// Shall we include additional configs where you can configure some things? Then
-// Load matching config
-ClassLoader::getInstance()->loadExtraConfigs();
+/*
+ * Shall we include additional configs where you can configure some things?
+ * Then load matching config file.
+ */
+ClassLoader::getSelfInstance()->loadExtraConfigs();
-// Register hooks here
-require(FrameworkConfiguration::getInstance()->getConfigEntry('base_path') . 'inc/hooks.php');
+// Register auto-load function with the SPL
+// @TODO This makes the core depending on the SPL. But it should be installed anyway.
+spl_autoload_register('CoreFramework\Loader\ClassLoader::autoLoad');
// Does the user has an application specified?
// @TODO Find a nicer OOP-ed way for this
$application = trim($app[1]);
} else {
// Invalid entry found, first must be "app"!
- $application = FrameworkConfiguration::getInstance()->getConfigEntry('default_application');
+ $application = FrameworkConfiguration::getSelfInstance()->getConfigEntry('default_application');
}
} else {
// Set the "application selector" application
- $application = FrameworkConfiguration::getInstance()->getConfigEntry('default_application');
+ $application = FrameworkConfiguration::getSelfInstance()->getConfigEntry('default_application');
}
// Secure it, by keeping out tags
$application = preg_replace('/([^a-z0-9_-])+/i', '', $application);
// Set the application name for later usage
-FrameworkConfiguration::getInstance()->setConfigEntry('app_name', $application);
-
-// Is the devel package included?
-if (is_dir(FrameworkConfiguration::getInstance()->getConfigEntry('base_path') . 'devel')) {
- // Load all development includes
- ClassLoader::getInstance()->scanClassPath('devel');
-} // END - if
+FrameworkConfiguration::getSelfInstance()->setConfigEntry('app_name', $application);
-// [EOF]
-?>
+// Scan for all framework classes, exceptions and interfaces
+ClassLoader::scanFrameworkClasses();