X-Git-Url: https://git.mxchange.org/?p=core.git;a=blobdiff_plain;f=inc%2Fclasses%2Fmain%2Ftemplate%2Fclass_BaseTemplateEngine.php;h=b143aebed5c3ba38e5d86954d904bf207727188b;hp=334ff102e899e7fae1ed29f665493effc436019e;hb=0088a32f8609875b6151dfa516f7c2d92fa3a5a8;hpb=8904918d814abf3468d084b8826e4d280b0885e3 diff --git a/inc/classes/main/template/class_BaseTemplateEngine.php b/inc/classes/main/template/class_BaseTemplateEngine.php index 334ff102..b143aebe 100644 --- a/inc/classes/main/template/class_BaseTemplateEngine.php +++ b/inc/classes/main/template/class_BaseTemplateEngine.php @@ -181,7 +181,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { // If the stack is null, use the current group if (is_null($stack)) { // Use current group - //* DEBUG: */ $this->debugOutput(__METHOD__.' currGroup=' . $this->currGroup . ' set as stack!'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.' currGroup=' . $this->currGroup . ' set as stack!'); $stack = $this->currGroup; } // END - if @@ -189,11 +189,11 @@ class BaseTemplateEngine extends BaseFrameworkSystem { if ($this->isVarStackSet($stack)) { // Now search for it foreach ($this->getVarStack($stack) as $index => $currEntry) { - //* DEBUG: */ $this->debugOutput(__METHOD__.':currGroup=' . $stack . ',idx=' . $index . ',currEntry=' . $currEntry['name'] . ',variableName=' . $variableName); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.':currGroup=' . $stack . ',idx=' . $index . ',currEntry=' . $currEntry['name'] . ',variableName=' . $variableName); // Is the entry found? if ($currEntry['name'] == $variableName) { // Found! - //* DEBUG: */ $this->debugOutput(__METHOD__.':FOUND!'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.':FOUND!'); $found = $index; break; } // END - if @@ -256,7 +256,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { // If the stack is null, use the current group if (is_null($stack)) { // Use current group - //* DEBUG: */ $this->debugOutput(__METHOD__.' currGroup=' . $this->currGroup . ' set as stack!'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.' currGroup=' . $this->currGroup . ' set as stack!'); $stack = $this->currGroup; } // END - if @@ -270,7 +270,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { } // END - if // Return the current position - //* DEBUG: */ $this->debugOutput(__METHOD__.': group=' . $stack . ',variableName=' . $variableName . ', content[' . gettype($content) . ']=' . $content); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.': group=' . $stack . ',variableName=' . $variableName . ', content[' . gettype($content) . ']=' . $content); return $content; } @@ -317,7 +317,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { */ public function setVariableGroup ($groupName, $add = true) { // Set group name - //* DEBIG: */ $this->debugOutput(__METHOD__.': currGroup=' . $groupName); + //* DEBIG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.': currGroup=' . $groupName); $this->currGroup = $groupName; // Skip group 'general' @@ -339,7 +339,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { $variableName = trim($this->convertDashesToUnderscores($variableName)); // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__.': group=' . $this->currGroup . ', variableName=' . $variableName . ', value=' . $value); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.': group=' . $this->currGroup . ', variableName=' . $variableName . ', value=' . $value); // Get current variables in group $currVars = $this->readCurrentGroup(); @@ -601,11 +601,11 @@ class BaseTemplateEngine extends BaseFrameworkSystem { // Was it found? if ($index === false) { // Add it to the stack - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':ADD: ' . $variableName . '[' . gettype($value) . ']=' . $value); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':ADD: ' . $variableName . '[' . gettype($value) . ']=' . $value); $this->addVariable($variableName, $value); } elseif (!empty($value)) { // Modify the stack entry - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':MOD: ' . $variableName . '[' . gettype($value) . ']=' . $value); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':MOD: ' . $variableName . '[' . gettype($value) . ']=' . $value); $this->modifyVariable($variableName, $value); } } @@ -652,8 +652,8 @@ class BaseTemplateEngine extends BaseFrameworkSystem { */ protected final function setRawTemplateData ($rawTemplateData) { // And store it in this class - //* DEBUG: */ $this->debugOutput(__METHOD__.': ' . strlen($rawTemplateData) . ' Bytes set.'); - //* DEBUG: */ $this->debugOutput(__METHOD__.': ' . $this->currGroup . ' variables: ' . count($this->getVarStack($this->currGroup)) . ', groups=' . count($this->varStack)); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.': ' . strlen($rawTemplateData) . ' Bytes set.'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__.': ' . $this->currGroup . ' variables: ' . count($this->getVarStack($this->currGroup)) . ', groups=' . count($this->varStack)); $this->rawTemplateData = (string) $rawTemplateData; } @@ -663,7 +663,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { * @return $rawTemplateData The raw data from the template */ public final function getRawTemplateData () { - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': ' . strlen($this->rawTemplateData) . ' Bytes read.'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': ' . strlen($this->rawTemplateData) . ' Bytes read.'); return $this->rawTemplateData; } @@ -674,7 +674,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { */ private final function setCompiledData ($compiledData) { // And store it in this class - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': ' . strlen($compiledData) . ' Bytes set.'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': ' . strlen($compiledData) . ' Bytes set.'); $this->compiledData = (string) $compiledData; } @@ -684,7 +684,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { * @return $compiledData Compiled template data */ public final function getCompiledData () { - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': ' . strlen($this->compiledData) . ' Bytes read.'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': ' . strlen($this->compiledData) . ' Bytes read.'); return $this->compiledData; } @@ -761,7 +761,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { $ioInstance = $this->getFileIoInstance(); // Some debug code to look on the file which is being loaded - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': FQFN=' . $fqfn); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': FQFN=' . $fqfn); // Load the raw template $rawTemplateData = $ioInstance->loadFileContents($fqfn); @@ -787,7 +787,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { $variableName = trim($this->convertDashesToUnderscores($variableName)); // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': varName=' . $varName . ',variableName=' . $variableName); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': varName=' . $varName . ',variableName=' . $variableName); // Is it not a config variable? if ($varName != 'config') { @@ -813,7 +813,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { preg_match_all('/\$(\w+)(\[(\w+)\])?/', $rawData, $variableMatches); // Debug message - //* NOISY-DEBUG: */ $this->debugOutput(__METHOD__ . ':rawData(' . strlen($rawData) . ')=' . $rawData . ',variableMatches=' . print_r($variableMatches, true)); + //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':rawData(' . strlen($rawData) . ')=' . $rawData . ',variableMatches=' . print_r($variableMatches, true)); // Did we find some variables? if ((is_array($variableMatches)) && (count($variableMatches) == 4) && (count($variableMatches[0]) > 0)) { @@ -862,7 +862,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { // RECURSIVE PROTECTION! BE CAREFUL HERE! if ((!isset($this->loadedRawData[$template])) && (!in_array($template, $this->loadedTemplates))) { // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':template=' . $template); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':template=' . $template); // Template not found, but maybe variable assigned? if ($this->getVariableIndex($template, 'config') !== false) { @@ -1003,7 +1003,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { */ private function assignAllVariables (array $varMatches) { // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':varMatches()=' . count($varMatches)); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':varMatches()=' . count($varMatches)); // Search for all variables foreach ($varMatches[1] as $key => $var) { @@ -1011,7 +1011,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { $var = trim($this->convertDashesToUnderscores($var)); // Debug message - $this->debugOutput(__METHOD__ . ':key=' . $key . ',var=' . $var); + self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':key=' . $key . ',var=' . $var); // Detect leading equals if (substr($varMatches[2][$key], 0, 1) == '=') { @@ -1025,7 +1025,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { $this->assignVariable($var, $varMatches[3][$key]); } elseif (!empty($varMatches[2][$key])) { // @TODO Non-string found so we need some deeper analysis... - ApplicationEntryPoint::app_die('Deeper analysis not yet implemented!'); + ApplicationEntryPoint::app_exit('Deeper analysis not yet implemented!'); } } // END - foreach } @@ -1038,19 +1038,19 @@ class BaseTemplateEngine extends BaseFrameworkSystem { */ private function compileRawTemplateData (array $templateMatches) { // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':loadedRawData()= ' .count($this->loadedRawData)); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':loadedRawData()= ' .count($this->loadedRawData)); // Are some code-templates found which we need to compile? if (count($this->loadedRawData) > 0) { // Then compile all! foreach ($this->loadedRawData as $template => $code) { // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':template=' . $template . ',code(' . strlen($code) . ')=' . $code); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':template=' . $template . ',code(' . strlen($code) . ')=' . $code); // Is this template already compiled? if (in_array($template, $this->compiledTemplates)) { // Then skip it - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': Template ' . $template . ' already compiled. SKIPPED!'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': Template ' . $template . ' already compiled. SKIPPED!'); continue; } // END - if @@ -1061,7 +1061,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { if (($foundIndex !== false) && (isset($templateMatches[3][$foundIndex]))) { // Split it up with another reg. exp. into variable=value pairs preg_match_all($this->regExpVarValue, $templateMatches[3][$foundIndex], $varMatches); - //* NOISY-DEBUG: */ $this->debugOutput(__METHOD__ . ':varMatches=' . print_r($varMatches, true)); + //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':varMatches=' . print_r($varMatches, true)); // Assign all variables $this->assignAllVariables($varMatches); @@ -1097,7 +1097,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { private function finalizeVariableCompilation () { // Get the content $content = $this->getRawTemplateData(); - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': content before=' . strlen($content) . ' (' . md5($content) . ')'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': content before=' . strlen($content) . ' (' . md5($content) . ')'); // Do we have the stack? if (!$this->isVarStackSet('general')) { @@ -1108,7 +1108,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { // Walk through all variables foreach ($this->getVarStack('general') as $currEntry) { - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': name=' . $currEntry['name'] . ', value=
' . htmlentities($currEntry['value']) . '
'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': name=' . $currEntry['name'] . ', value=
' . htmlentities($currEntry['value']) . '
'); // Replace all [$var] or {?$var?} with the content // @TODO Old behaviour, will become obsolete! $content = str_replace('$content[' . $currEntry['name'] . ']', $currEntry['value'], $content); @@ -1120,7 +1120,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { $content = str_replace('{?' . $currEntry['name'] . '?}', $currEntry['value'], $content); } // END - for - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': content after=' . strlen($content) . ' (' . md5($content) . ')'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': content after=' . strlen($content) . ' (' . md5($content) . ')'); // Set the content back $this->setRawTemplateData($content); @@ -1152,7 +1152,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { $variableName = trim($this->convertDashesToUnderscores($variableName)); // Sweet and simple... - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': variableName=' . $variableName . ',getConfigEntry()=' . $this->getConfigInstance()->getConfigEntry($variableName)); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': variableName=' . $variableName . ',getConfigEntry()=' . $this->getConfigInstance()->getConfigEntry($variableName)); $this->setVariable('config', $variableName, $this->getConfigInstance()->getConfigEntry($variableName)); } @@ -1182,7 +1182,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { // Do we have the stack? if (!$this->isVarStackSet('general')) { // Abort here silently - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': Aborted, variable stack general not found!'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': Aborted, variable stack general not found!'); return; } // END - if @@ -1192,13 +1192,13 @@ class BaseTemplateEngine extends BaseFrameworkSystem { $value = $this->compileRawCode($this->readVariable($currVariable['name']), true); // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': name=' . $currVariable['name'] . ',value=' . $value); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': name=' . $currVariable['name'] . ',value=' . $value); // Remove it from stack $this->removeVariable($currVariable['name'], 'general'); // Re-assign the variable - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': value='. $value . ',name=' . $currVariable['name'] . ',index=' . $index); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': value='. $value . ',name=' . $currVariable['name'] . ',index=' . $index); $this->assignConfigVariable($value); } // END - foreach } @@ -1217,7 +1217,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { // Iterate through all general variables foreach ($this->getVarStack('general') as $currVariable) { // Transfer it's name/value combination to the $content array - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':' . $currVariable['name'] . '=
' . htmlentities($currVariable['value']).'
'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':' . $currVariable['name'] . '=
' . htmlentities($currVariable['value']).'
'); $dummy[$currVariable['name']] = $currVariable['value']; }// END - if @@ -1274,7 +1274,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { // Goes something wrong? if ((!isset($result)) || (empty($result))) { // Output eval command - $this->debugOutput(sprintf("Failed eval() code:
%s
", $this->markupCode($eval, true)), true); + self::createDebugInstance(__CLASS__)->debugOutput(sprintf("Failed eval() code:
%s
", $this->markupCode($eval, true)), true); // Output backtrace here $this->debugBackTrace(); @@ -1324,7 +1324,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { preg_match_all($this->regExpCodeTags, $rawData, $templateMatches); // Debug message - //* NOISY-DEBUG: */ $this->debugOutput(__METHOD__ . ':templateMatches=' . print_r($templateMatches , true)); + //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':templateMatches=' . print_r($templateMatches , true)); // Analyze the matches array if ((is_array($templateMatches)) && (count($templateMatches) == 4) && (count($templateMatches[0]) > 0)) { @@ -1431,22 +1431,22 @@ class BaseTemplateEngine extends BaseFrameworkSystem { */ public function compileRawCode ($rawCode, $setMatchAsCode=false) { // Find the variables - //* NOISY-DEBUG: */ $this->debugOutput(__METHOD__ . ':rawCode=
' . htmlentities($rawCode) . '
'); + //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':rawCode=
' . htmlentities($rawCode) . '
'); preg_match_all($this->regExpVarValue, $rawCode, $varMatches); // Compile all variables - //* NOISY-DEBUG: */ $this->debugOutput(__METHOD__ . ':
' . print_r($varMatches, true) . '
'); + //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':
' . print_r($varMatches, true) . '
'); foreach ($varMatches[0] as $match) { // Add variable tags around it $varCode = '{?' . $match . '?}'; // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':varCode=' . $varCode); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':varCode=' . $varCode); // Is the variable found in code? (safes some calls) if (strpos($rawCode, $varCode) !== false) { // Debug message - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': match=' . $match . ',rawCode[' . gettype($rawCode) . ']=' . $rawCode); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': match=' . $match . ',rawCode[' . gettype($rawCode) . ']=' . $rawCode); // Use $match as new value or $value from read variable? if ($setMatchAsCode === true) { @@ -1463,7 +1463,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { } // END - foreach // Return the compiled data - //* DEBUG: */ $this->debugOutput(__METHOD__ . ':rawCode=
' . htmlentities($rawCode) . '
'); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ':rawCode=
' . htmlentities($rawCode) . '
'); return $rawCode; } @@ -1484,7 +1484,7 @@ class BaseTemplateEngine extends BaseFrameworkSystem { * @return void */ public function renameVariable ($oldName, $newName) { - //* DEBUG: */ $this->debugOutput(__METHOD__ . ': oldName=' . $oldName . ', newName=' . $newName); + //* DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(__METHOD__ . ': oldName=' . $oldName . ', newName=' . $newName); // Get raw template code $rawData = $this->getRawTemplateData();