[ Index ]
 

Code source de phpMyVisites 2.3

Accédez au Source d'autres logiciels libres

Classes | Fonctions | Variables | Constantes | Tables

title

Body

[fermer]

/libs/smarty/internals/ -> core.run_insert_handler.php (source)

   1  <?php
   2  /**
   3   * Smarty plugin
   4   * @package Smarty
   5   * @subpackage plugins
   6   */
   7  
   8  /**
   9   * Handle insert tags
  10   *
  11   * @param array $args
  12   * @return string
  13   */
  14  function smarty_core_run_insert_handler($params, &$smarty)
  15  {
  16  
  17      require_once (SMARTY_CORE_DIR . 'core.get_microtime.php');
  18      if ($smarty->debugging) {
  19          $_params = array();
  20          $_debug_start_time = smarty_core_get_microtime($_params, $smarty);
  21      }
  22  
  23      if ($smarty->caching) {
  24          $_arg_string = serialize($params['args']);
  25          $_name = $params['args']['name'];
  26          if (!isset($smarty->_cache_info['insert_tags'][$_name])) {
  27              $smarty->_cache_info['insert_tags'][$_name] = array('insert',
  28                                                               $_name,
  29                                                               $smarty->_plugins['insert'][$_name][1],
  30                                                               $smarty->_plugins['insert'][$_name][2],
  31                                                               !empty($params['args']['script']) ? true : false);
  32          }
  33          return $smarty->_smarty_md5."{insert_cache $_arg_string}".$smarty->_smarty_md5;
  34      } else {
  35          if (isset($params['args']['script'])) {
  36              $_params = array('resource_name' => $smarty->_dequote($params['args']['script']));
  37              require_once (SMARTY_CORE_DIR . 'core.get_php_resource.php');
  38              if(!smarty_core_get_php_resource($_params, $smarty)) {
  39                  return false;
  40              }
  41  
  42              if ($_params['resource_type'] == 'file') {
  43                  $smarty->_include($_params['php_resource'], true);
  44              } else {
  45                  $smarty->_eval($_params['php_resource']);
  46              }
  47              unset($params['args']['script']);
  48          }
  49  
  50          $_funcname = $smarty->_plugins['insert'][$params['args']['name']][0];
  51          $_content = $_funcname($params['args'], $smarty);
  52          if ($smarty->debugging) {
  53              $_params = array();
  54              require_once (SMARTY_CORE_DIR . 'core.get_microtime.php');
  55              $smarty->_smarty_debug_info[] = array('type'      => 'insert',
  56                                                  'filename'  => 'insert_'.$params['args']['name'],
  57                                                  'depth'     => $smarty->_inclusion_depth,
  58                                                  'exec_time' => smarty_core_get_microtime($_params, $smarty) - $_debug_start_time);
  59          }
  60  
  61          if (!empty($params['args']["assign"])) {
  62              $smarty->assign($params['args']["assign"], $_content);
  63          } else {
  64              return $_content;
  65          }
  66      }
  67  }
  68  
  69  /* vim: set expandtab: */
  70  
  71  ?>


Généré le : Mon Nov 26 14:10:01 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics