ILIAS  release_8 Revision v8.24
show_multi_step_modal.php
Go to the documentation of this file.
1<?php
2
3declare(strict_types=1);
4
6
8
10{
11 global $DIC;
12 $f = $DIC->ui()->factory();
13 $r = $DIC->ui()->renderer();
14 $refinery = $DIC->refinery();
15 $request_wrapper = $DIC->http()->wrapper()->query();
16
17 $url = $_SERVER['REQUEST_URI'];
18
19 $page = "";
20 if ($request_wrapper->has('page')) {
21 $page = $request_wrapper->retrieve('page', $refinery->kindlyTo()->string());
22 }
23 if ($page == "") {
24 $modal = $f->modal()->roundtrip("Modal Title", $f->legacy("b"));
25 $asyncUrl = $url . '&page=login&replaceSignal=' . $modal->getReplaceSignal()->getId();
26 $modal = $modal->withAsyncRenderUrl($asyncUrl);
27 $button = $f->button()->standard("Sign In", '#')
28 ->withOnClick($modal->getShowSignal());
29 return $r->render([$modal, $button]);
30 } else {
31 $signalId = "";
32 if ($request_wrapper->has('replaceSignal')) {
33 $signalId = $request_wrapper->retrieve('replaceSignal', $refinery->kindlyTo()->string());
34 }
35 $replaceSignal = new ReplaceSignal($signalId);
36 $button1 = $f->button()->standard('Login', '#')
37 ->withOnClick($replaceSignal->withAsyncRenderUrl($url . '&page=login&replaceSignal=' . $replaceSignal->getId()));
38 $button2 = $f->button()->standard('Registration', '#')
39 ->withOnClick($replaceSignal->withAsyncRenderUrl($url . '&page=register&replaceSignal=' . $replaceSignal->getId()));
40
41 $modal = null;
42 if ($page == "login") {
43 $legacy = $f->legacy("<p>The Login Page</p>");
44 $modal = $f->modal()->roundtrip("Login", [$button1, $button2, $legacy]);
45 }
46 if ($page == "register") {
47 $legacy = $f->legacy("<p>The Registration Page</p>");
48 $modal = $f->modal()->roundtrip("Registration", [$button1, $button2, $legacy]);
49 }
50
51 echo $r->renderAsync([$modal]);
52 exit;
53 }
54}
global $DIC
Definition: feed.php:28
exit
Definition: login.php:28
Refinery Factory $refinery
$url
$_SERVER['HTTP_HOST']
Definition: raiseError.php:10