1: <?php
2:
3: namespace PHPixie;
4:
5: class Template
6: {
7: protected $builder;
8:
9: public function __construct(
10: $slice,
11: $filesystemLocator,
12: $configData,
13: $filesystemRoot = null,
14: $externalExtensions = array(),
15: $externalFormats = array()
16: )
17: {
18: $this->builder = $this->buildBuilder(
19: $slice,
20: $filesystemLocator,
21: $configData,
22: $filesystemRoot,
23: $externalExtensions,
24: $externalFormats
25: );
26: }
27:
28: public function render($name, $data = array())
29: {
30: return $this->builder->renderer()->render($name, $data);
31: }
32:
33: public function get($name, $data = array())
34: {
35: return $this->builder->container($name, $data);
36: }
37:
38: public function builder()
39: {
40: return $this->builder;
41: }
42:
43: protected function buildBuilder(
44: $slice,
45: $filesystemLocator,
46: $configData,
47: $filesystemRoot,
48: $externalExtensions,
49: $externalFormats
50: )
51: {
52: return new Template\Builder(
53: $slice,
54: $filesystemLocator,
55: $configData,
56: $filesystemRoot,
57: $externalExtensions,
58: $externalFormats
59: );
60: }
61: }