3 * Application initializer
5 * Please remember that this include file is being loaded *before* the class
6 * loader is loading classes from "exceptions", "interfaces" and "main"!
8 * You can prevent adding this application to the selector by uncommenting the
11 * if ((isset($this)) && (is_object($this)) && ($this->isClass("ApplicationSelector"))) { return; }
13 * isset() is required to prevent a warning and is_object() is highly required
14 * when the application itself is requested in URL (hint: index.php?app=your_app)
16 * @author Roland Haeder <webmaster@ship-simu.org>
18 * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software
19 * @license GNU GPL 3.0 or any newer version
21 * This program is free software: you can redistribute it and/or modify
22 * it under the terms of the GNU General Public License as published by
23 * the Free Software Foundation, either version 3 of the License, or
24 * (at your option) any later version.
26 * This program is distributed in the hope that it will be useful,
27 * but WITHOUT ANY WARRANTY; without even the implied warranty of
28 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
29 * GNU General Public License for more details.
31 * You should have received a copy of the GNU General Public License
32 * along with this program. If not, see <http://www.gnu.org/licenses/>.
35 // Get config instance
36 $cfg = FrameworkConfiguration::getInstance();
38 // Initialize output system
39 require($cfg->readConfig('base_path') . "inc/output.php");
41 // Initialize file i/o system
42 require($cfg->readConfig('base_path') . "inc/file_io.php");
44 // Include the language sub-system
45 require($cfg->readConfig('base_path') . "inc/language.php");
47 // This application needs a database connection then we have to simply include
48 // the inc/database.php script
49 require($cfg->readConfig('base_path') . "inc/database.php");
51 // Generate call-back function
52 $callback = sprintf("%s::getInstance",
53 FrameworkConfiguration::getInstance()->readConfig('app_helper_class')
56 // Get an instance of the helper
57 $app = call_user_func_array($callback, array());
59 // Set application name and version
60 $app->setAppName("MXChange Hub");
61 $app->setAppVersion("0.0.0");
62 $app->setAppShortName("mxhub");
64 // Get's our IP address
65 $_SERVER['SERVER_ADDR'] = ConsoleTools::aquireSelfIPAddress();
68 $app->setFileIoInstance($io);
69 $app->setLanguageInstance($lang);
70 $app->setDatabaseInstance($db);