ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
Renderer.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
24use ILIAS\UI\Renderer as RendererInterface;
27
29{
33 public function render(Component\Component $component, RendererInterface $default_renderer): string
34 {
35 if (!$component instanceof Component\Counter\Counter) {
36 $this->cannotHandleComponent($$component);
37 }
38
39 $tpl = $this->getTemplate("tpl.counter.html", true, true);
40 if ($component->getNumber() === 0) {
41 $tpl->touchBlock("hidden_" . $component->getType());
42 }
43 $tpl->setCurrentBlock($component->getType());
44 $tpl->setVariable("NUMBER", $component->getNumber());
45 $tpl->parseCurrentBlock();
46 return $tpl->get();
47 }
48
52 public function registerResources(ResourceRegistry $registry): void
53 {
54 parent::registerResources($registry);
55 $registry->register('assets/js/counter.js');
56 }
57}
render(Component\Component $component, RendererInterface $default_renderer)
@inheritdocs
Definition: Renderer.php:33
registerResources(ResourceRegistry $registry)
Announce resources this renderer requires.
Definition: Renderer.php:52
cannotHandleComponent(Component $component)
This method MUST be called by derived component renderers, if.
getTemplate(string $name, bool $purge_unfilled_vars, bool $purge_unused_blocks)
Get template of component this renderer is made for.
Registry for resources required by rendered output like Javascript or CSS.
register(string $name)
Add a dependency.
An entity that renders components to a string output.
Definition: Renderer.php:31