X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=library%2FSmarty%2Flibs%2Fsysplugins%2Fsmarty_internal_debug.php;h=e5175d51d33b67528990bb711b9cf6fff0f29afc;hb=c94525938d6075ac07079d64564f78dec6a9c386;hp=2aea13f301e39d6faffa48f2a6c13e04c190d01e;hpb=fd626022ec02ef47b9142bba08180502babbd0ca;p=friendica.git diff --git a/library/Smarty/libs/sysplugins/smarty_internal_debug.php b/library/Smarty/libs/sysplugins/smarty_internal_debug.php index 2aea13f301..e5175d51d3 100644 --- a/library/Smarty/libs/sysplugins/smarty_internal_debug.php +++ b/library/Smarty/libs/sysplugins/smarty_internal_debug.php @@ -1,22 +1,21 @@ source->uid == '') { + $template->source->filepath; + } + self::$ignore_uid[$template->source->uid] = true; + } + /** * Start logging of compile time * @@ -31,7 +51,25 @@ class Smarty_Internal_Debug extends Smarty_Internal_Data { */ public static function start_compile($template) { - $key = self::get_key($template); + static $_is_stringy = array('string' => true, 'eval' => true); + if (!empty($template->compiler->trace_uid)) { + $key = $template->compiler->trace_uid; + if (!isset(self::$template_data[$key])) { + if (isset($_is_stringy[$template->source->type])) { + self::$template_data[$key]['name'] = '\'' . substr($template->source->name, 0, 25) . '...\''; + } else { + self::$template_data[$key]['name'] = $template->source->filepath; + } + self::$template_data[$key]['compile_time'] = 0; + self::$template_data[$key]['render_time'] = 0; + self::$template_data[$key]['cache_time'] = 0; + } + } else { + if (isset(self::$ignore_uid[$template->source->uid])) { + return; + } + $key = self::get_key($template); + } self::$template_data[$key]['start_time'] = microtime(true); } @@ -42,7 +80,15 @@ class Smarty_Internal_Debug extends Smarty_Internal_Data { */ public static function end_compile($template) { - $key = self::get_key($template); + if (!empty($template->compiler->trace_uid)) { + $key = $template->compiler->trace_uid; + } else { + if (isset(self::$ignore_uid[$template->source->uid])) { + return; + } + + $key = self::get_key($template); + } self::$template_data[$key]['compile_time'] += microtime(true) - self::$template_data[$key]['start_time']; } @@ -115,6 +161,7 @@ class Smarty_Internal_Debug extends Smarty_Internal_Data { $smarty->left_delimiter = '{'; $smarty->right_delimiter = '}'; $smarty->debugging = false; + $smarty->debugging_ctrl = 'NONE'; $smarty->force_compile = false; $_template = new Smarty_Internal_Template($smarty->debug_tpl, $smarty); $_template->caching = false; @@ -138,7 +185,8 @@ class Smarty_Internal_Debug extends Smarty_Internal_Data { /** * Recursively gets variables from all template/data scopes * - * @param Smarty_Internal_Template|Smarty_Data $obj object to debug + * @param Smarty_Internal_Template|Smarty_Data $obj object to debug + * * @return StdClass */ public static function get_debug_vars($obj) @@ -169,14 +217,16 @@ class Smarty_Internal_Debug extends Smarty_Internal_Data { } } } + return (object) array('tpl_vars' => $tpl_vars, 'config_vars' => $config_vars); } /** * Return key into $template_data for template * - * @param object $template template object - * @return string key into $template_data + * @param object $template template object + * + * @return string key into $template_data */ private static function get_key($template) { @@ -190,17 +240,15 @@ class Smarty_Internal_Debug extends Smarty_Internal_Data { return $key; } else { if (isset($_is_stringy[$template->source->type])) { - self::$template_data[$key]['name'] = '\''.substr($template->source->name,0,25).'...\''; + self::$template_data[$key]['name'] = '\'' . substr($template->source->name, 0, 25) . '...\''; } else { self::$template_data[$key]['name'] = $template->source->filepath; } self::$template_data[$key]['compile_time'] = 0; self::$template_data[$key]['render_time'] = 0; self::$template_data[$key]['cache_time'] = 0; + return $key; } } - } - -?> \ No newline at end of file