* @version 0.0.0 * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software * @license GNU GPL 3.0 or any newer version * @link http://www.ship-simu.org * * 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 * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ // Get config instance $cfg = FrameworkConfiguration::getInstance(); // Include the class loader function require(sprintf("%sinc/loader/class_ClassLoader%s", PATH, $cfg->readConfig('php_extension'))); // Does the user has an application specified? if (!empty($_GET['app'])) { // Set the application from string $application = (string) $_GET['app']; } elseif (!empty($_SERVER['argv'][1])) { // Set the application from string $application = (string) $_SERVER['argv'][1]; $app = explode('=', trim($application)); if ($app[0] == 'app') { // Application is valid! $application = trim($app[1]); } else { // Invalid entry found, first must be "app"! $application = $cfg->readConfig('default_application'); } } else { // Set the "application selector" application $application = $cfg->readConfig('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); // 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", 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(); // [EOF] ?>