@@ -92,6 +92,13 @@ public function load(array $configs, ContainerBuilder $container)
92
92
$ dir = dirname ($ reflection ->getFileName ()).'/Resources/views ' ;
93
93
if (is_dir ($ dir )) {
94
94
$ this ->addTwigPath ($ twigFilesystemLoaderDefinition , $ dir , $ bundle );
95
+
96
+ $ classMock = new $ class ;
97
+ $ parent = $ classMock ->getParent ();
98
+
99
+ if ($ parent ) {
100
+ $ this ->prependTwigPath ($ twigFilesystemLoaderDefinition , $ dir , $ parent );
101
+ }
95
102
}
96
103
$ container ->addResource (new FileExistenceResource ($ dir ));
97
104
}
@@ -140,11 +147,23 @@ public function load(array $configs, ContainerBuilder $container)
140
147
141
148
private function addTwigPath ($ twigFilesystemLoaderDefinition , $ dir , $ bundle )
142
149
{
143
- $ name = $ bundle ;
150
+ $ name = $ this ->stripBundleName ($ bundle );
151
+ $ twigFilesystemLoaderDefinition ->addMethodCall ('addPath ' , array ($ dir , $ name ));
152
+ }
153
+
154
+ private function prependTwigPath ($ twigFilesystemLoaderDefinition , $ dir , $ bundle )
155
+ {
156
+ $ name = $ this ->stripBundleName ($ bundle );
157
+ $ twigFilesystemLoaderDefinition ->addMethodCall ('prependPath ' , array ($ dir , $ name ));
158
+ }
159
+
160
+ private function stripBundleName ($ name )
161
+ {
144
162
if ('Bundle ' === substr ($ name , -6 )) {
145
163
$ name = substr ($ name , 0 , -6 );
146
164
}
147
- $ twigFilesystemLoaderDefinition ->addMethodCall ('addPath ' , array ($ dir , $ name ));
165
+
166
+ return $ name ;
148
167
}
149
168
150
169
/**
0 commit comments