Ejemplo n.º 1
0
 public function __call($method, $arguments)
 {
     $method = first_char_remove($method);
     $source = $arguments[0];
     /* @var $template Smarty_Internal_Template */
     $template = $arguments[1];
     $tplPath = $template->template_resource;
     //PsProfiler::inst(__CLASS__)->start($method);
     $result = $this->{$method}($source);
     //PsProfiler::inst(__CLASS__)->stop();
     $call = ++$this->CALLS[$method];
     $callttl = ++$this->CALLTTL;
     $callInfo = pad_right("[{$callttl}-{$call}].", 10, ' ');
     PsLogger::inst(__CLASS__)->info("{} {} filter called for template {}.", $callInfo, ucfirst($method), $tplPath);
     return $result;
 }
Ejemplo n.º 2
0
 function getNiceBackTrace($bTrace = false)
 {
     $sTrace = '';
     $aBackTrace = debug_backtrace();
     $iMin = 0;
     if ($bTrace) {
         $iMax = count($aBackTrace) - 1;
         $iMax = count($aBackTrace);
     } else {
         $iMax = 3;
     }
     for ($iIndex = $iMin; $iIndex < $iMax; ++$iIndex) {
         if ($bTrace) {
             $sTrace .= "\n";
         }
         $sTrace .= $iIndex . sprintf('%s#%4d:%s() ', pad_right($aBackTrace[$iIndex]['file'], 30), $aBackTrace[$iIndex]['line'], pad_right($aBackTrace[$iIndex]['function'], 15));
     }
     return $sTrace;
 }
Ejemplo n.º 3
0
 /**
  * Метод вызывается перед вызовом метода имплементации
  * 
  * @param type $filterType
  * @param Smarty_Internal_Template $template
  */
 private function onBeforeCall($filterType, Smarty_Internal_Template $template)
 {
     if (PsLogger::isEnabled()) {
         PsLogger::inst(__CLASS__)->info("{} {}.{}({})", pad_right(++$this->CALLTTL . '.', 3, ' '), get_called_class(), $filterType, $template->template_resource);
     }
 }
Ejemplo n.º 4
0
 protected function pad_right($string, $key)
 {
     if (defined('STRICT_TYPES') && CAMEL_CASE == '1') {
         return (string) self::parameters(['string' => DT::STRING, 'key' => DT::STRING])->call(__FUNCTION__)->with($string, $key)->returning(DT::STRING);
     } else {
         return (string) pad_right($string, $key);
     }
 }