• Main Page
  • Related Pages
  • Namespaces
  • Data Structures
  • Files
  • Examples
  • File List

E:/E/GEAMP/www/openbiz/openbiz/others/Smarty/libs/internals/core.run_insert_handler.php

00001 <?php
00014 function smarty_core_run_insert_handler($params, &$smarty)
00015 {
00016 
00017     require_once(SMARTY_CORE_DIR . 'core.get_microtime.php');
00018     if ($smarty->debugging) {
00019         $_params = array();
00020         $_debug_start_time = smarty_core_get_microtime($_params, $smarty);
00021     }
00022 
00023     if ($smarty->caching) {
00024         $_arg_string = serialize($params['args']);
00025         $_name = $params['args']['name'];
00026         if (!isset($smarty->_cache_info['insert_tags'][$_name])) {
00027             $smarty->_cache_info['insert_tags'][$_name] = array('insert',
00028                                                              $_name,
00029                                                              $smarty->_plugins['insert'][$_name][1],
00030                                                              $smarty->_plugins['insert'][$_name][2],
00031                                                              !empty($params['args']['script']) ? true : false);
00032         }
00033         return $smarty->_smarty_md5."{insert_cache $_arg_string}".$smarty->_smarty_md5;
00034     } else {
00035         if (isset($params['args']['script'])) {
00036             $_params = array('resource_name' => $smarty->_dequote($params['args']['script']));
00037             require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php');
00038             if(!smarty_core_get_php_resource($_params, $smarty)) {
00039                 return false;
00040             }
00041 
00042             if ($_params['resource_type'] == 'file') {
00043                 $smarty->_include($_params['php_resource'], true);
00044             } else {
00045                 $smarty->_eval($_params['php_resource']);
00046             }
00047             unset($params['args']['script']);
00048         }
00049 
00050         $_funcname = $smarty->_plugins['insert'][$params['args']['name']][0];
00051         $_content = $_funcname($params['args'], $smarty);
00052         if ($smarty->debugging) {
00053             $_params = array();
00054             require_once(SMARTY_CORE_DIR . 'core.get_microtime.php');
00055             $smarty->_smarty_debug_info[] = array('type'      => 'insert',
00056                                                 'filename'  => 'insert_'.$params['args']['name'],
00057                                                 'depth'     => $smarty->_inclusion_depth,
00058                                                 'exec_time' => smarty_core_get_microtime($_params, $smarty) - $_debug_start_time);
00059         }
00060 
00061         if (!empty($params['args']["assign"])) {
00062             $smarty->assign($params['args']["assign"], $_content);
00063         } else {
00064             return $_content;
00065         }
00066     }
00067 }
00068 
00069 /* vim: set expandtab: */
00070 
00071 ?>

Generated on Thu Apr 19 2012 17:01:16 for openbiz by  doxygen 1.7.2