[ Index ] |
PHP Cross Reference of vtigercrm-6.1.0 |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * Smarty Internal Plugin Resource File 4 * 5 * @package Smarty 6 * @subpackage TemplateResources 7 * @author Uwe Tews 8 * @author Rodney Rehm 9 */ 10 11 /** 12 * Smarty Internal Plugin Resource File 13 * 14 * Implements the file system as resource for Smarty templates 15 * 16 * @package Smarty 17 * @subpackage TemplateResources 18 */ 19 class Smarty_Internal_Resource_File extends Smarty_Resource { 20 21 /** 22 * populate Source Object with meta data from Resource 23 * 24 * @param Smarty_Template_Source $source source object 25 * @param Smarty_Internal_Template $_template template object 26 */ 27 public function populate(Smarty_Template_Source $source, Smarty_Internal_Template $_template=null) 28 { 29 $source->filepath = $this->buildFilepath($source, $_template); 30 31 if ($source->filepath !== false) { 32 if (is_object($source->smarty->security_policy)) { 33 $source->smarty->security_policy->isTrustedResourceDir($source->filepath); 34 } 35 36 $source->uid = sha1($source->filepath); 37 if ($source->smarty->compile_check && !isset($source->timestamp)) { 38 $source->timestamp = @filemtime($source->filepath); 39 $source->exists = !!$source->timestamp; 40 } 41 } 42 } 43 44 /** 45 * populate Source Object with timestamp and exists from Resource 46 * 47 * @param Smarty_Template_Source $source source object 48 */ 49 public function populateTimestamp(Smarty_Template_Source $source) 50 { 51 $source->timestamp = @filemtime($source->filepath); 52 $source->exists = !!$source->timestamp; 53 } 54 55 /** 56 * Load template's source from file into current template object 57 * 58 * @param Smarty_Template_Source $source source object 59 * @return string template source 60 * @throws SmartyException if source cannot be loaded 61 */ 62 public function getContent(Smarty_Template_Source $source) 63 { 64 if ($source->timestamp) { 65 return file_get_contents($source->filepath); 66 } 67 if ($source instanceof Smarty_Config_Source) { 68 throw new SmartyException("Unable to read config {$source->type} '{$source->name}'"); 69 } 70 throw new SmartyException("Unable to read template {$source->type} '{$source->name}'"); 71 } 72 73 /** 74 * Determine basename for compiled filename 75 * 76 * @param Smarty_Template_Source $source source object 77 * @return string resource's basename 78 */ 79 public function getBasename(Smarty_Template_Source $source) 80 { 81 $_file = $source->name; 82 if (($_pos = strpos($_file, ']')) !== false) { 83 $_file = substr($_file, $_pos + 1); 84 } 85 return basename($_file); 86 } 87 88 } 89 90 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:08:37 2014 | Cross-referenced by PHPXref 0.7.1 |