19 declare(strict_types=1);
36 return $this->
renderAudio($component, $default_renderer);
39 return $this->
renderVideo($component, $default_renderer);
46 $tpl = $this->
getTemplate(
"tpl.audio.html",
true,
true);
48 $component = $component->withAdditionalOnLoadCode(
function (
$id) {
49 return "$('#$id').mediaelementplayer({stretching: 'responsive'});";
53 if ($component->getTranscription() !=
"") {
55 $page = $factory->modal()->lightboxTextPage(
56 $component->getTranscription(),
57 $this->
txt(
"ui_transcription")
59 $modal = $factory->modal()->lightbox($page);
60 $button = $factory->button()->standard($this->
txt(
"ui_transcription"),
'')
61 ->withOnClick($modal->getShowSignal());
63 $tpl->setCurrentBlock(
"transcription");
64 $tpl->setVariable(
"BUTTON_AND_MODAL", $default_renderer->render([$button, $modal]));
65 $tpl->parseCurrentBlock();
68 $tpl->setVariable(
"ID",
$id);
69 $tpl->setVariable(
"SOURCE", $component->getSource());
78 $tpl = $this->
getTemplate(
"tpl.video.html",
true,
true);
80 $component = $component->withAdditionalOnLoadCode(
function (
$id) {
81 return "$('#$id').mediaelementplayer();";
85 foreach ($component->getSubtitleFiles() as $lang_key => $file) {
86 $tpl->setCurrentBlock(
"track");
87 $tpl->setVariable(
"TRACK_SOURCE", $file);
88 $tpl->setVariable(
"TRACK_LANG", $lang_key);
89 $tpl->parseCurrentBlock();
92 if ($component->getPoster() !==
"") {
93 $tpl->setCurrentBlock(
"poster");
94 $tpl->setVariable(
"POSTER_SOURCE", $component->getPoster());
95 $tpl->parseCurrentBlock();
98 $tpl->setVariable(
"ID",
$id);
99 $tpl->setVariable(
"SOURCE", $component->getSource());
106 parent::registerResources($registry);
107 $registry->register(
'./assets/js/mediaelement-and-player.min.js');
108 $registry->register(
'./assets/css/mediaelementplayer.min.css');
109 $registry->register(
'./assets/js/vimeo.min.js');
Interface Observer Contains several chained tasks and infos about them.
txt(string $id)
Get a text from the language file.
render(Component\Component $component, RendererInterface $default_renderer)
renderAudio(Component\Component $component, RendererInterface $default_renderer)
registerResources(\ILIAS\UI\Implementation\Render\ResourceRegistry $registry)
getTemplate(string $name, bool $purge_unfilled_vars, bool $purge_unused_blocks)
Get template of component this renderer is made for.
cannotHandleComponent(Component $component)
This method MUST be called by derived component renderers, if.
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
renderVideo(Component\Component $component, RendererInterface $default_renderer)
getUIFactory()
Get a UI factory.
Base class for all component renderers.
bindJavaScript(JavaScriptBindable $component)
Bind the component to JavaScript.