@@ 312-344 (lines=33) @@ | ||
309 | * @return AbstractViewHelper |
|
310 | * @throws ViewHelperException |
|
311 | */ |
|
312 | public function __call($name, $arguments) |
|
313 | { |
|
314 | // Search in core view helpers first |
|
315 | $coreViewHelper = __NAMESPACE__ . '\Helper\\' . ucfirst($name); |
|
316 | ||
317 | if (class_exists($coreViewHelper)) { |
|
318 | ||
319 | $class = new $coreViewHelper; |
|
320 | array_unshift($arguments, $this); |
|
321 | ||
322 | return call_user_func_array($class, $arguments); |
|
323 | ||
324 | } |
|
325 | ||
326 | // No core implementations found; search in custom view helpers |
|
327 | ||
328 | /** @var Config $config */ |
|
329 | $config = ServiceLocator::instance()->get(Config::class); |
|
330 | $namespace = '\\' . $config->get('namespacePrefix'); |
|
331 | ||
332 | $customViewHelper = $namespace . '\\View\\Helper\\' . ucfirst($name); |
|
333 | ||
334 | if (class_exists($customViewHelper)) { |
|
335 | ||
336 | $class = new $customViewHelper; |
|
337 | array_unshift($arguments, $this); |
|
338 | ||
339 | return call_user_func_array($class, $arguments); |
|
340 | ||
341 | } |
|
342 | ||
343 | throw new ViewHelperException('No view helper for "' . $name . '" found.'); |
|
344 | } |
|
345 | ||
346 | /** |
|
347 | * Destructor |
@@ 210-242 (lines=33) @@ | ||
207 | * @throws PluginException |
|
208 | * @codeCoverageIgnore Not implemented yet |
|
209 | */ |
|
210 | public function __call($name, $arguments) |
|
211 | { |
|
212 | // Search in core view helpers first |
|
213 | $corePlugin = 'Faulancer\Plugin\\' . ucfirst($name); |
|
214 | ||
215 | if (class_exists($corePlugin)) { |
|
216 | ||
217 | $class = new $corePlugin; |
|
218 | array_unshift($arguments, $this); |
|
219 | ||
220 | return call_user_func_array($class, $arguments); |
|
221 | ||
222 | } |
|
223 | ||
224 | // No core implementations found; search in custom view helpers |
|
225 | ||
226 | /** @var Config $config */ |
|
227 | $config = ServiceLocator::instance()->get(Config::class); |
|
228 | $namespace = '\\' . $config->get('namespacePrefix'); |
|
229 | ||
230 | $customPlugin = $namespace . '\Plugin\\' . ucfirst($name); |
|
231 | ||
232 | if (class_exists($customPlugin)) { |
|
233 | ||
234 | $class = new $customPlugin; |
|
235 | array_unshift($arguments, $this); |
|
236 | ||
237 | return call_user_func_array($class, $arguments); |
|
238 | ||
239 | } |
|
240 | ||
241 | throw new PluginException('No plugin for "' . $name . '" found.'); |
|
242 | } |
|
243 | ||
244 | } |