15
15
*/
16
16
class Renderer
17
17
{
18
+ const DEFAULT_TEMPLATE = "{{var name}} \n" .
19
+ "{{var street_line1}} \n" .
20
+ "{{depend street_line2}}{{var street_line2}} \n{{/depend}} " .
21
+ "{{depend city}}{{var city}},{{/depend}} {{var region}} {{depend postcode}}{{var postcode}},{{/depend}} \n" .
22
+ "{{var country}} " ;
23
+
18
24
/**
19
25
* @var EventManager
20
26
*/
@@ -25,18 +31,26 @@ class Renderer
25
31
*/
26
32
protected $ filterManager ;
27
33
34
+ /**
35
+ * @var string
36
+ */
37
+ private $ template ;
38
+
28
39
/**
29
40
* Constructor
30
41
*
31
42
* @param EventManager $eventManager
32
43
* @param FilterManager $filterManager
44
+ * @param string $template
33
45
*/
34
46
public function __construct (
35
47
EventManager $ eventManager ,
36
- FilterManager $ filterManager
48
+ FilterManager $ filterManager ,
49
+ $ template = self ::DEFAULT_TEMPLATE
37
50
) {
38
51
$ this ->eventManager = $ eventManager ;
39
52
$ this ->filterManager = $ filterManager ;
53
+ $ this ->template = $ template ;
40
54
}
41
55
42
56
/**
@@ -50,9 +64,7 @@ public function format(DataObject $storeInfo, $type = 'html')
50
64
{
51
65
$ this ->eventManager ->dispatch ('store_address_format ' , ['type ' => $ type , 'store_info ' => $ storeInfo ]);
52
66
$ address = $ this ->filterManager ->template (
53
- "{{var name}} \n{{var street_line1}} \n{{depend street_line2}}{{var street_line2}} \n{{/depend}} " .
54
- "{{depend city}}{{var city}},{{/depend}} {{var region}} {{depend postcode}}{{var postcode}},{{/depend}} \n" .
55
- "{{var country}} " ,
67
+ $ this ->template ,
56
68
['variables ' => $ storeInfo ->getData ()]
57
69
);
58
70
0 commit comments