@@ -18,19 +18,22 @@ class BitrixLoader extends \Twig_Loader_Filesystem implements \Twig_LoaderInterf
1818 */
1919 function getSource ($ name )
2020 {
21- /*if ($name == SITE_TEMPLATE_ID)
22- {
23- return $this->siteTemplate();
24- }*/
21+ return file_get_contents ($ this ->getSourcePath ($ name ));
22+ }
2523
26- $ realFileName = $ _SERVER [ 'DOCUMENT_ROOT ' ] . $ name ;
27- if (file_exists ($ realFileName ))
28- {
29- return file_get_contents ($ realFileName );
30- }
24+ function getSourcePath ($ name )
25+ {
26+ /*if ($name == SITE_TEMPLATE_ID)
27+ {
28+ return $this->siteTemplate();
29+ }*/
3130
32- return $ this ->componentTemplate ($ name );
33- }
31+ $ realFileName = $ _SERVER [ 'DOCUMENT_ROOT ' ] . $ name ;
32+ if (file_exists ($ realFileName ))
33+ return $ realFileName ;
34+
35+ return $ this ->getComponentTemplatePath ($ name );
36+ }
3437
3538 function getCacheKey ($ name )
3639 {
@@ -40,13 +43,23 @@ function getCacheKey($name)
4043 /**
4144 * Не использовать в продакшене!!
4245 * Метод используется только в режиме разработки или при использовании опции auto_reload = true
46+ * @param string $name Путь к шаблону
47+ * @param int $time Время изменения закешированного шаблона
48+ * @return bool Актуален ли закешированный шаблон
4349 */
4450 function isFresh ($ name , $ time )
4551 {
46- return filemtime ($ this ->getSource ($ name )) <= $ time ;
52+ return filemtime ($ this ->getSourcePath ($ name )) <= $ time ;
4753 }
4854
49- private function componentTemplate ($ name )
55+ /**
56+ * По Битрикс-имени шаблона возвращает путь к его файлу
57+ *
58+ * @param string $name
59+ * @return string
60+ * @throws \Twig_Error_Loader
61+ */
62+ private function getComponentTemplatePath ($ name )
5063 {
5164 list ($ namespace , $ component , $ template , $ file ) = explode (': ' , $ name );
5265
@@ -74,7 +87,7 @@ private function componentTemplate($name)
7487 throw new \Twig_Error_Loader ("Не удалось найти шаблон ' {$ name }' " );
7588 }
7689
77- return file_get_contents ( $ templatePath) ;
90+ return $ templatePath ;
7891 }
7992
8093 /*
0 commit comments