+require(sprintf("%sinc/loader/class_ClassLoader.php", $cfg->readConfig('base_path')));
+
+// 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);
+}