Blame view

application/_libs/Smarty-3.0.9/libs/sysplugins/smarty_internal_resource_stream.php 2.62 KB
8d65d0ce   andryeyev   init
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
  <?php
  
  /**
  * Smarty Internal Plugin Resource Stream
  *
  * Implements the streams as resource for Smarty template
  *
  * @package Smarty
  * @subpackage TemplateResources
  * @author Uwe Tews
  */
  
  /**
  * Smarty Internal Plugin Resource Stream
  */
  class Smarty_Internal_Resource_Stream {
      public function __construct($smarty)
      {
          $this->smarty = $smarty;
      }
      // classes used for compiling Smarty templates from file resource
      public $compiler_class = 'Smarty_Internal_SmartyTemplateCompiler';
      public $template_lexer_class = 'Smarty_Internal_Templatelexer';
      public $template_parser_class = 'Smarty_Internal_Templateparser';
      // properties
      public $usesCompiler = true;
      public $isEvaluated = true;
  
      /**
      * Return flag if template source is existing
      *
      * @return boolean true
      */
      public function isExisting($template)
      {
          if ($template->getTemplateSource() == '') {
              return false;
          } else {
              return true;
          }
      }
      /**
      * Get filepath to template source
      *
      * @param object $_template template object
      * @return string return 'string' as template source is not a file
      */
      public function getTemplateFilepath($_template)
      {
          // no filepath for strings
          // return resource name for compiler error messages
          return str_replace(':', '://', $_template->template_resource);
      }
  
      /**
      * Get timestamp to template source
      *
      * @param object $_template template object
      * @return boolean false as string resources have no timestamp
      */
      public function getTemplateTimestamp($_template)
      {
          // strings must always be compiled and have no timestamp
          return false;
      }
  
      /**
      * Retuen template source from resource name
      *
      * @param object $_template template object
      * @return string content of template source
      */
      public function getTemplateSource($_template)
      {
          // return template string
          $_template->template_source = '';
          if ($fp = fopen(str_replace(':', '://', $_template->template_resource),'r+')) {
              while (!feof($fp) && ($current_line = fgets($fp)) !== false ) {
                  $_template->template_source .= $current_line;
              }
              fclose($fp);
              return true;
          } else {
              return false;
          }
      }
  
      /**
      * Get filepath to compiled template
      *
      * @param object $_template template object
      * @return boolean return false as compiled template is not stored
      */
      public function getCompiledFilepath($_template)
      {
          // no filepath for strings
          return false;
      }
  }
  
  ?>