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
20 * @link http://www.ship-simu.org
22 * This program is free software: you can redistribute it and/or modify
23 * it under the terms of the GNU General Public License as published by
24 * the Free Software Foundation, either version 3 of the License, or
25 * (at your option) any later version.
27 * This program is distributed in the hope that it will be useful,
28 * but WITHOUT ANY WARRANTY; without even the implied warranty of
29 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30 * GNU General Public License for more details.
32 * You should have received a copy of the GNU General Public License
33 * along with this program. If not, see <http://www.gnu.org/licenses/>.
36 // Initialize output system
37 require(PATH . 'inc/output.php');
39 // Initialize file i/o system
40 require(PATH . 'inc/file_io.php');
42 // Include the language sub-system
43 require(PATH . 'inc/language.php');
45 // This application needs a database connection then we have to simply include
46 // the inc/database.php script
47 require(PATH . 'inc/database.php');
49 // Generate call-back function
50 $callback = sprintf("%s::getInstance",
51 FrameworkConfiguration::getInstance()->readConfig('app_helper_class')
54 // Get an instance of the helper
55 $app = call_user_func_array($callback, array());
57 // Set application name and version
58 $app->setAppName("Ship-Simu Schiffsimulator");
59 $app->setAppVersion("0.0.0");
60 $app->setAppShortName("ship-simu");
63 $app->setFileIoInstance($io);
64 $app->setLanguageInstance($lang);
65 $app->setDatabaseInstance($db);