]> git.mxchange.org Git - shipsimu.git/blobdiff - application/selector/class_ApplicationSelector.php
New building 'advanced research lab' added, floor-list added to buildings, menu XML...
[shipsimu.git] / application / selector / class_ApplicationSelector.php
index 071da88440a24b8a69b6c2369f5b59836ba8cdfc..ca1f053523e52b9b6e912495e273f085ae9d8cff 100644 (file)
@@ -4,7 +4,7 @@
  *
  * @author             Roland Haeder <webmaster@ship-simu.org>
  * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 Ship-Simu Developer Team
  * @license            GNU GPL 3.0 or any newer version
  * @link               http://www.ship-simu.org
  *
@@ -51,10 +51,6 @@ class ApplicationSelector extends BaseFrameworkSystem {
                // Call parent constructor
                parent::__construct(__CLASS__);
 
-               // Remove system array and thousand seperator
-               $this->removeSystemArray();
-               $this->removeNumberFormaters();
-
                // Initialize the array lists
                $this->initializeAppsList();
                $this->initializeTemplatesList();
@@ -135,7 +131,7 @@ class ApplicationSelector extends BaseFrameworkSystem {
         * @return      $shortName      This selector's short name
         */
        public function getAppShortName() {
-               $shortName = $this->getConfigInstance()->readConfig('selector_path');
+               $shortName = $this->getConfigInstance()->getConfigEntry('selector_path');
                return $shortName;
        }
 
@@ -158,10 +154,10 @@ class ApplicationSelector extends BaseFrameworkSystem {
         */
        public function readApplicationDirectory () {
                // Generate the base path for all applications
-               $appBasePath = $this->getConfigInstance()->readConfig('application_path');
+               $appBasePath = $this->getConfigInstance()->getConfigEntry('application_path');
 
                // Add the selector path to the ignore list
-               $this->addDirIgnoreList($this->getConfigInstance()->readConfig('selector_path'));
+               $this->addDirIgnoreList($this->getConfigInstance()->getConfigEntry('selector_path'));
 
                // Get a directory pointer for the application path
                $dirInstance = FrameworkDirectoryPointer::createFrameworkDirectoryPointer($appBasePath);
@@ -202,13 +198,13 @@ class ApplicationSelector extends BaseFrameworkSystem {
 
                        // Try to load the web template
                        $templateInstance->loadWebTemplate(sprintf("%s_%s",
-                               $this->getConfigInstance()->readConfig('tpl_selector_prefix'),
+                               $this->getConfigInstance()->getConfigEntry('tpl_selector_prefix'),
                                strtolower($appInstance->getAppShortName())
                        ));
 
                        // Remember this template and the application for later usage
                        $this->loadedTemplates->append(array(
-                               'template_class'   => $templateInstance,
+                               'web_template_class'   => $templateInstance,
                                'app_instance' => $appInstance
                        ));
                }
@@ -237,7 +233,7 @@ class ApplicationSelector extends BaseFrameworkSystem {
                $templateInstance = $this->prepareTemplateInstance($this);
 
                // Load the selector's template
-               $templateInstance->loadCodeTemplate($this->getConfigInstance()->readConfig('selector_main_tpl'));
+               $templateInstance->loadCodeTemplate($this->getConfigInstance()->getConfigEntry('selector_main_tpl'));
 
                // Now store it in the class, we need this later on final compilation of available applications
                $this->setTemplateInstance($templateInstance);
@@ -247,10 +243,9 @@ class ApplicationSelector extends BaseFrameworkSystem {
         * Inserts all loaded application templates into the selector's template
         *
         * @return      void
-        * @throws      NullPointerException            If $curr is null
-        * @throws      NoArrayException                        If $curr is not an array
-        * @throws      InvalidArrayCountException      If $curr contains an
-        *                                                                              unexpected count of elements
+        * @throws      NoArrayException                                If $curr is not an array
+        * @throws      InvalidArrayCountException              If $curr contains an
+        *                                                                                      unexpected count of elements
         * @throws      MissingArrayElementsException   If $curr is missing expected
         *                                                                                      array elements
         * @todo        Finish handling all applications here
@@ -260,7 +255,7 @@ class ApplicationSelector extends BaseFrameworkSystem {
                $templateInstance = $this->prepareTemplateInstance($this);
 
                // Load template which shall later hold all application templates
-               $templateInstance->loadCodeTemplate($this->getConfigInstance()->readConfig('selector_apps_tpl'));
+               $templateInstance->loadCodeTemplate($this->getConfigInstance()->getConfigEntry('selector_apps_tpl'));
 
                // Add all loaded application templates together
                $dummy = "";
@@ -269,16 +264,13 @@ class ApplicationSelector extends BaseFrameworkSystem {
                        $curr = $idx->current();
 
                        // Do some sanity checks on the loaded item
-                       if (is_null($curr)) {
-                               // $curr is null
-                               throw new NullPointerException($this, self::EXCEPTION_IS_NULL_POINTER);
-                       } elseif (!is_array($curr)) {
+                       if (!is_array($curr)) {
                                // Not an array
                                throw new NoArrayException($curr, self::EXCEPTION_IS_NO_ARRAY);
                        } elseif (count($curr) != 2) {
                                // Not expected count of entries
                                throw new InvalidArrayCountException(array($this, "curr", count($curr), 2), self::EXCEPTION_ARRAY_HAS_INVALID_COUNT);
-                       } elseif (!isset($curr['template_class']) || (!isset($curr['app_instance']))) {
+                       } elseif (!isset($curr['web_template_class']) || (!isset($curr['app_instance']))) {
                                // Expected entries missing
                                throw new MissingArrayElementsException(array($this, "curr", array("template_class", "app_instance")), self::EXCEPTION_ARRAY_ELEMENTS_MISSING);
                        }