19 declare(strict_types=1);
37 $registry->
register(
'./assets/js/progress.min.js');
38 parent::registerResources($registry);
43 if ($component instanceof
Bar) {
52 $template = $this->
getTemplate(
'tpl.progress_bar.html',
true,
true);
54 $template->setVariable(
'LABEL', $component->getLabel());
56 $template->setVariable(
'SUCCESS_GLYPH', $default_renderer->render(
57 $this->getUIFactory()->symbol()->glyph()->apply(),
60 $template->setVariable(
'FAILURE_GLYPH', $default_renderer->render(
61 $this->getUIFactory()->symbol()->glyph()->close(),
64 $async_url = $component->getAsyncUrl();
65 if (
null !== $async_url) {
66 $template->setVariable(
'ASYNC_URL', (
string) $async_url);
69 if (
null !== $component->getAsyncUrl()) {
71 static fn(
string $id):
string =>
" 72 const progressbar = il.UI.Progress.Bar.createAsync( 73 document.getElementById('$id'), 74 '{$component->getUpdateSignal()->getId()}', 75 {$component->getAsyncRefreshInterval()->getRefreshIntervalInMs()}, 78 $(document).on('{$component->getResetSignal()}', () => progressBar.reset()); 83 static fn(
string $id):
string =>
" 84 const progressBar = il.UI.Progress.Bar.create( 85 document.getElementById('$id'), 86 '{$component->getUpdateSignal()->getId()}', 89 $(document).on('{$component->getResetSignal()}', () => progressBar.reset()); 98 $template->setVariable(
'ID',
$id);
100 return $template->get();
105 $template->
setVariable(
'MAX_VALUE', (
string) $max);
110 if (
null !== $value) {
Registry for resources required by rendered output like Javascript or CSS.
render(Component $component, RendererInterface $default_renderer)
applyProgressBarMaxValue(Template $template, int $max=Bar::MAX_VALUE)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
createId()
Get a fresh unique id.
setVariable(string $name, $value)
Set a variable in the current block.
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
getTemplate(string $name, bool $purge_unfilled_vars, bool $purge_unused_blocks)
Get template of component this renderer is made for.
maybeApplyProgressBarValue(Template $template, ?int $value=null)
cannotHandleComponent(Component $component)
This method MUST be called by derived component renderers, if.
register(string $name)
Add a dependency.
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
withAdditionalOnLoadCode(Closure $binder)
Add some onload-code to the component instead of replacing the existing one.
registerResources(ResourceRegistry $registry)
Announce resources this renderer requires.
Base class for all component renderers.
renderProgressBar(Bar $component, RendererInterface $default_renderer)
bindJavaScript(JavaScriptBindable $component)
Bind the component to JavaScript.