Now all base paths are relative and constructed in BaseTemplateEngine genericly,...
[core.git] / inc / classes / main / class_BaseFrameworkSystem.php
index 06fddbc5162c8a143d85d8279847fd1d70647298..48ab38c3c2554eaacb91ee16f6fd7c9a072c2061 100644 (file)
@@ -208,7 +208,8 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                } elseif ((defined('DEBUG_DESTRUCTOR')) && (is_object($this->getDebugInstance()))) {
                        // Already destructed object
                        $this->debugOutput(sprintf("[%s:] The object <span class=\"object_name\">%s</span> is already destroyed.",
-                               __CLASS__, $this->__toString()
+                               __CLASS__,
+                               $this->__toString()
                        ));
                }
        }
@@ -223,27 +224,27 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                $argsString = '';
                if (empty($args)) {
                        // No arguments
-                       $argsString = "NULL";
+                       $argsString = 'NULL';
                } elseif (is_array($args)) {
                        // Some arguments are there
                        foreach ($args as $arg) {
                                // Add the type
-                               $argsString .= $arg." (".gettype($arg);
+                               $argsString .= $arg . ' (' . gettype($arg);
 
                                // Add length if type is string
-                               if (gettype($arg) == 'string') $argsString .= ", ".strlen($arg);
+                               if (gettype($arg) == 'string') $argsString .= ', '.strlen($arg);
 
                                // Closing bracket
-                               $argsString .= "), ";
+                               $argsString .= '), ';
                        } // END - foreach
 
                        // Remove last comma
-                       if (substr($argsString, -2, 1) === ",") {
+                       if (substr($argsString, -2, 1) == ',') {
                                $argsString = substr($argsString, 0, -2);
                        } // END - if
                } else {
                        // Invalid arguments!
-                       $argsString = sprintf("!INVALID:%s!", $args);
+                       $argsString = '!INVALID:' . gettype($args) . '!';
                }
 
                // Output stub message
@@ -622,7 +623,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
         *                                                                                              thousands seperator
         *                                                                                              is missing
         */
-       public function formatCurrency ($value, $currency = "&euro;", $decNum = 2) {
+       public function formatCurrency ($value, $currency = '&euro;', $decNum = 2) {
                // Are all required attriutes set?
                if ((!isset($this->decimals)) || (!isset($this->thousands))) {
                        // Throw an exception
@@ -633,10 +634,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                $value = (float) $value;
 
                // Reformat the US number
-               $price = sprintf("%s %s",
-                       number_format($value, $decNum, $this->decimals, $this->thousands),
-                       $currency
-               );
+               $price = number_format($value, $decNum, $this->decimals, $this->thousands) . $currency;
 
                // Return as string...
                return $price;
@@ -690,7 +688,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
         */
        public final function addMissingTrailingSlash ($str) {
                // Is there a trailing slash?
-               if (substr($str, -1, 1) != "/") $str .= "/";
+               if (substr($str, -1, 1) != '/') $str .= '/';
                return $str;
        }
 
@@ -742,13 +740,6 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                        } // END - if
                } // END - if
 
-               // Generate FQFN for all application templates
-               $fqfn = sprintf("%s%s/%s",
-                       $this->getConfigInstance()->readConfig('application_path'),
-                       strtolower($appInstance->getAppShortName()),
-                       $this->getConfigInstance()->readConfig('tpl_base_path')
-               );
-
                // Are both instances set?
                if ($appInstance->getLanguageInstance() === null) {
                        // Invalid language instance
@@ -759,7 +750,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                }
 
                // Initialize the template engine
-               $templateInstance = ObjectFactory::createObjectByConfiguredName('template_class', array($fqfn, $appInstance->getLanguageInstance(), $appInstance->getFileIoInstance()));
+               $templateInstance = ObjectFactory::createObjectByConfiguredName('template_class', array($appInstance));
 
                // Return the prepared instance
                return $templateInstance;
@@ -812,7 +803,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                $backtrace = debug_backtrace();
 
                // Generate the class::method string
-               $methodName = "UnknownClass-&gt;unknownMethod";
+               $methodName = 'UnknownClass-&gt;unknownMethod';
                if ((isset($backtrace[1]['class'])) && (isset($backtrace[1]['function']))) {
                        $methodName = $backtrace[1]['class']."-&gt;".$backtrace[1]['function'];
                } // END - if
@@ -889,10 +880,10 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                $className = '';
 
                // Convert all dashes in underscores
-               $str = str_replace("-", "_", $str);
+               $str = $this->convertDashesToUnderscores($str);
 
                // Now use that underscores to get classname parts for hungarian style
-               foreach (explode("_", $str) as $strPart) {
+               foreach (explode('_', $str) as $strPart) {
                        // Make the class name part lower case and first upper case
                        $className .= ucfirst(strtolower($strPart));
                } // END - foreach
@@ -901,6 +892,20 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                return $className;
        }
 
+       /**
+        * Converts dashes to underscores, e.g. useable for configuration entries
+        *
+        * @param       $str    The string with maybe dashes inside
+        * @return      $str    The converted string with no dashed, but underscores
+        */
+       public final function convertDashesToUnderscores ($str) {
+               // Convert them all
+               $str = str_replace('-', '_', $str);
+
+               // Return converted string
+               return $str;
+       }
+
        /**
         * Marks up the code by adding e.g. line numbers
         *
@@ -948,7 +953,7 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
         */
        public function doFilterFormatTimestamp ($timestamp) {
                // Default value to return
-               $readable = "???";
+               $readable = '???';
 
                // Is the timestamp null?
                if (is_null($timestamp)) {
@@ -958,9 +963,9 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                        switch ($this->getLanguageInstance()->getLanguageCode()) {
                                case "de": // German format is a bit different to default
                                        // Split the GMT stamp up
-                                       $dateTime = explode(" ", $timestamp);
-                                       $dateArray = explode("-", $dateTime[0]);
-                                       $timeArray = explode(":", $dateTime[1]);
+                                       $dateTime  = explode(' ', $timestamp  );
+                                       $dateArray = explode('-', $dateTime[0]);
+                                       $timeArray = explode(':', $dateTime[1]);
 
                                        // Construct the timestamp
                                        $readable = sprintf($this->getConfigInstance()->readConfig('german_date_time'),
@@ -1107,6 +1112,30 @@ class BaseFrameworkSystem extends stdClass implements FrameworkInterface {
                        $wrapperInstance->doUpdateByResult($this->getResultInstance());
                } // END - if
        }
+
+       /**
+        * Outputs a deprecation warning to the developer.
+        *
+        * @param       $message        The message we shall output to the developer
+        * @return      void
+        * @todo        Write a logging mechanism for productive mode
+        */
+       public function deprecationWarning ($message) {
+               // Is developer mode active?
+               if (defined('DEVELOPER')) {
+                       // Debug instance is there?
+                       if (!is_null($this->getDebugInstance())) {
+                               // Output stub message
+                               $this->debugOutput($message);
+                       } else {
+                               // Trigger an error
+                               trigger_error($message."<br />\n");
+                       }
+               } else {
+                       // @TODO Finish this part!
+                       $this->partialStub('Developer mode inactive. Message:' . $message);
+               }
+       }
 }
 
 // [EOF]