_SERVER array elements are all upper-case.
[core.git] / inc / includes.php
index 7e3f5c9ffc6bf37b059d87261772ff30b4e29bc6..a7e7614f9ce324dd68c8b809feac855620eab555 100644 (file)
@@ -2,11 +2,13 @@
 /**
  * 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, this is free software
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2014 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
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 
-// Get config instance
-$cfg = FrameworkConfiguration::getInstance();
-
 // Include the class loader function
-require(sprintf("%sinc/loader/class_ClassLoader.php", $cfg->readConfig('base_path')));
+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 file.
+ */
+ClassLoader::getSelfInstance()->loadExtraConfigs();
+
+// 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('ClassLoader::autoLoad');
 
 // Does the user has an application specified?
+// @TODO Find a nicer OOP-ed way for this
 if (!empty($_GET['app'])) {
        // Set the application from string
        $application = (string) $_GET['app'];
@@ -41,46 +51,21 @@ if (!empty($_GET['app'])) {
                $application = trim($app[1]);
        } else {
                // Invalid entry found, first must be "app"!
-               $application = $cfg->readConfig('default_application');
+               $application = FrameworkConfiguration::getSelfInstance()->getConfigEntry('default_application');
        }
 } else {
        // Set the "application selector" application
-       $application = $cfg->readConfig('default_application');
+       $application = FrameworkConfiguration::getSelfInstance()->getConfigEntry('default_application');
 }
 
 // Secure it, by keeping out tags
 $application = htmlentities(strip_tags($application), ENT_QUOTES);
 
 // Secure it a little more with a reg.exp.
-$application = preg_replace('/([^a-z0-9_-])+/i', "", $application);
+$application = preg_replace('/([^a-z0-9_-])+/i', '', $application);
 
 // Set the application name for later usage
-$cfg->setConfigEntry('app_name', $application);
-
-/**
- * Autoload-function
- *
- * @param      $className      Name of the class to load
- * @return     void
- */
-function __autoload ($className) {
-       // Try to include this class
-       ClassLoader::getInstance()->includeClass($className);
-}
-
-/**
- * Is the devel package included?
- */
-if (is_dir(sprintf("%sdevel", $cfg->readConfig('base_path')))) {
-       /**
-        * Load all development includes
-        */
-       ClassLoader::getInstance()->loadClasses('devel');
-}
-
-// Shall we include additional configs where you can configure some things? Then
-// Load matching config
-ClassLoader::getInstance()->loadExtraConfigs();
+FrameworkConfiguration::getSelfInstance()->setConfigEntry('app_name', $application);
 
 // [EOF]
 ?>