X-Git-Url: https://git.mxchange.org/?p=shipsimu.git;a=blobdiff_plain;f=inc%2Fincludes.php;h=96e6aba694b26c46be536097fa418621a8f60519;hp=c7a949aacb1b44768ec9a871ba2095fd7e7ea152;hb=55b327a3f5f2fe1d244532e07be7444e94b2a768;hpb=4fdcba4d4a450cf1b8ab23cecd9b9dcdb5d934c6 diff --git a/inc/includes.php b/inc/includes.php index c7a949a..96e6aba 100644 --- a/inc/includes.php +++ b/inc/includes.php @@ -6,7 +6,7 @@ * @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 + * @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 @@ -21,8 +21,41 @@ * 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, FrameworkConfiguration::getInstance()->readConfig('php_extension'))); +require(sprintf("%sinc/loader/class_ClassLoader%s", PATH, $cfg->readConfig('php_extension'))); + +// Does the user has an application specified? +if (!empty($_GET[$cfg->readConfig('app_selector_get')])) { + // Set the application from string + $application = (string) $_GET[$cfg->readConfig('app_selector_get')]; +} elseif (!empty($_SERVER['argv'][1])) { + // Set the application from string + $application = (string) $_SERVER['argv'][1]; + $app = explode('=', trim($application)); + if ($app[0] == $cfg->readConfig('app_selector_get')) { + // 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-z_-])+/i', "", $application); + +// Set the application name for later usage +$cfg->setConfigEntry('app_name', $application); /** * Autoload-function