ILIAS  trunk Revision v11.0_alpha-1715-g7fc467680fb
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
LogoutDestinations.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
22 
23 use ILIAS\Data\URI;
24 use ilCtrlInterface;
25 use ilStartUpGUI;
26 
27 enum LogoutDestinations: string
28 {
29  case LOGIN_SCREEN = 'login_screen';
30  case LOGOUT_SCREEN = 'logout_screen';
31 
32  public function asURI(ilCtrlInterface $ctrl, string $http_path = ILIAS_HTTP_PATH): URI
33  {
34  return match ($this) {
35  self::LOGIN_SCREEN => new URI(
36  $http_path .
37  '/' . $ctrl->getLinkTargetByClass(ilStartUpGUI::class, 'showLoginPage')
38  ),
39  self::LOGOUT_SCREEN => new URI(
40  $http_path .
41  '/' . $ctrl->getLinkTargetByClass(ilStartUpGUI::class, 'showLogout')
42  ),
43  };
44  }
45 }
getLinkTargetByClass( $a_class, ?string $a_cmd=null, ?string $a_anchor=null, bool $is_async=false, bool $has_xml_style=false)
Returns a link target for the given information.