ILIAS  release_8 Revision v8.24
with_additional_links.php
Go to the documentation of this file.
1<?php
2
3declare(strict_types=1);
4
6
7function with_additional_links(): string
8{
9 global $DIC;
10 $tc = $DIC->ui()->factory()->toast()->container();
11
12 $toasts = [
13 $DIC->ui()->factory()->toast()->standard(
14 'Example',
15 $DIC->ui()->factory()->symbol()->icon()->standard('info', 'Example')
16 )
17 ->withAdditionalLink($DIC->ui()->factory()->link()->standard('ILIAS', 'https://www.ilias.de'))
18 ->withAdditionalLink($DIC->ui()->factory()->link()->standard('GitHub', 'https://www.github.com'))
19 ];
20
21 $toasts = base64_encode($DIC->ui()->renderer()->renderAsync($toasts));
22 $button = $DIC->ui()->factory()->button()->standard($DIC->language()->txt('show'), '');
23 $button = $button->withAdditionalOnLoadCode(function ($id) use ($toasts) {
24 return "$id.addEventListener('click', () => {
25 $id.parentNode.querySelector('.il-toast-container').innerHTML = atob('$toasts');
26 $id.parentNode.querySelector('.il-toast-container').querySelectorAll('script').forEach(element => {
27 let newScript = document.createElement('script');
28 newScript.innerHTML = element.innerHTML;
29 element.parentNode.appendChild(newScript);
30 })
31 });";
32 });
33
34 return $DIC->ui()->renderer()->render([$button,$tc]);
35}
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23
global $DIC
Definition: feed.php:28