3 declare(strict_types=1);
26 $factory = $DIC->ui()->factory();
29 $df = new \ILIAS\Data\Factory();
32 $here_uri = $df->uri($DIC->http()->request()->getUri()->__toString());
36 $example_namespace = [
'prompt',
'endpoints'];
37 list($url_builder, $endpointtoken) = $url_builder->acquireParameters($example_namespace,
"endpoint");
38 $url_builder = $url_builder->withParameter($endpointtoken,
"true");
41 $query_namespace = [
'prompt',
'example1'];
42 list($url_builder, $action_token, $amount_token) = $url_builder->acquireParameters($query_namespace,
"action",
"amount");
43 $url_builder = $url_builder->withParameter($action_token,
"showprompt");
45 $default_uri = $url_builder->withParameter($amount_token,
"1")->buildURI();
46 $prompt = $factory->prompt()->standard($default_uri);
49 $query = $DIC->http()->wrapper()->query();
50 $icon = $factory->symbol()->icon()->standard(
'someExample',
'Example');
54 if ($query->has($action_token->getName())) {
55 $action = $query->retrieve($action_token->getName(),
$refinery->kindlyTo()->string());
56 $amount = $query->retrieve($amount_token->getName(),
$refinery->kindlyTo()->int()) ;
59 foreach (range(1, $amount) as $idx) {
60 $link_uri = $url_builder
61 ->withParameter($action_token,
"promptlink")
62 ->withParameter($amount_token, (
string) $idx)
63 ->buildURI()->__toString();
64 $links[] = $factory->link()->standard((
string) $idx, $link_uri);
67 $factory->button()->standard(
'OK',
'#')->withOnLoadCode(
68 fn(
$id) =>
"$('#$id').on('click', (e)=> {alert('$id');});" 72 $prompt_content = $factory->messageBox()->info(
'some text')
74 ->withButtons($buttons);
78 $back_uri = $url_builder
79 ->withParameter($action_token,
"showprompt")
80 ->withParameter($amount_token, (
string) \
ilSession::get(
"full_amount"))
81 ->buildURI()->__toString();
82 $back = $factory->button()->standard(
'back',
'#')->withOnLoadCode(
83 fn(
$id) =>
"$('#$id').on('click', (e)=> { 84 let promptId = e.target.closest('.il-prompt').id; 85 il.UI.prompt.get(promptId).show('$back_uri'); 88 $prompt_content = $factory->messageBox()->info((
string) $amount)
89 ->withButtons([$back]);
93 throw new \Exception(
'?' . $action . $amount);
96 $response = $factory->prompt()->state()->show($prompt_content);
101 if (!$query->has($endpointtoken->getName())) {
102 $show_button = $factory->button()->standard(
'Show Simple Prompt', $prompt->getShowSignal());
103 $close_button = $factory->button()->standard(
'close Simple Prompt', $prompt->getCloseSignal());
105 $uri = $url_builder->withParameter($amount_token,
"8")->buildURI();
106 $show_button8 = $factory->button()->standard(
'Show Prompt with Parameter', $prompt->getShowSignal($uri));
108 $uri = $url_builder->withParameter($amount_token,
"78")->buildURI();
109 $show_button78 = $factory->button()->standard(
'Show Prompt with a lot of Items', $prompt->getShowSignal($uri));
113 $show_button, $show_button8, $show_button78
static get(string $a_var)
parameters()
description: > This shows how different states are being used in the same Prompt according to parame...
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
static set(string $a_var, $a_val)
Set a value.