ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
ILIAS\GlobalScreen\ScreenContext\ContextRepository Class Reference

Class ContextRepository. More...

+ Collaboration diagram for ILIAS\GlobalScreen\ScreenContext\ContextRepository:

Public Member Functions

 main ()
 
function external ()
 
 desktop ()
 
 repository ()
 
 administration ()
 
 lti ()
 

Data Fields

const C_MAIN = 'main'
 
const C_DESKTOP = 'desktop'
 
const C_REPO = 'repo'
 
const C_ADMINISTRATION = 'administration'
 
const C_LTI = 'lti'
 

Private Member Functions

 get (string $class_name, string $identifier)
 

Private Attributes

 $contexts = []
 

Detailed Description

Class ContextRepository.

The Collection of all available Contexts in the System. You can use them in your

See also
ScreenContextAwareProvider to announce you are interested in.
Author
Fabian Schmid fs@st.nosp@m.uder.nosp@m.-raim.nosp@m.ann..nosp@m.ch

Definition at line 13 of file ContextRepository.php.

Member Function Documentation

◆ administration()

ILIAS\GlobalScreen\ScreenContext\ContextRepository::administration ( )
Returns
ScreenContext

Definition at line 78 of file ContextRepository.php.

78  : ScreenContext
79  {
80  return $this->get(BasicScreenContext::class, self::C_ADMINISTRATION);
81  }

◆ desktop()

ILIAS\GlobalScreen\ScreenContext\ContextRepository::desktop ( )
Returns
ScreenContext

Definition at line 57 of file ContextRepository.php.

57  : ScreenContext
58  {
59  return $this->get(BasicScreenContext::class, self::C_DESKTOP);
60  }

◆ external()

function ILIAS\GlobalScreen\ScreenContext\ContextRepository::external ( )
Returns
ScreenContext

Definition at line 48 of file ContextRepository.php.

48  : ScreenContext
49  {
50  return $this->get(BasicScreenContext::class, 'external');
51  }

◆ get()

ILIAS\GlobalScreen\ScreenContext\ContextRepository::get ( string  $class_name,
string  $identifier 
)
private
Parameters
string$class_name
string$identifier
Returns
ScreenContext

Definition at line 99 of file ContextRepository.php.

100  {
101  if (!isset($this->contexts[$identifier])) {
102  $this->contexts[$identifier] = new $class_name($identifier);
103  }
104 
105  return $this->contexts[$identifier];
106  }

◆ lti()

ILIAS\GlobalScreen\ScreenContext\ContextRepository::lti ( )
Returns
ScreenContext

Definition at line 87 of file ContextRepository.php.

87  : ScreenContext
88  {
89  return $this->get(BasicScreenContext::class, self::C_LTI);
90  }

◆ main()

ILIAS\GlobalScreen\ScreenContext\ContextRepository::main ( )
Returns
ScreenContext

Definition at line 30 of file ContextRepository.php.

30  : ScreenContext
31  {
32  return $this->get(BasicScreenContext::class, self::C_MAIN);
33  }

◆ repository()

ILIAS\GlobalScreen\ScreenContext\ContextRepository::repository ( )
Returns
ScreenContext

Definition at line 66 of file ContextRepository.php.

References $_GET, and $context.

66  : ScreenContext
67  {
68  $context = $this->get(BasicScreenContext::class, self::C_REPO);
69  $context = $context->withReferenceId(new ReferenceId((int) ($_GET['ref_id'] ?? 0)));
70 
71  return $context;
72  }
$context
Definition: webdav.php:26
$_GET["client_id"]

Field Documentation

◆ $contexts

ILIAS\GlobalScreen\ScreenContext\ContextRepository::$contexts = []
private

Definition at line 19 of file ContextRepository.php.

◆ C_ADMINISTRATION

const ILIAS\GlobalScreen\ScreenContext\ContextRepository::C_ADMINISTRATION = 'administration'

Definition at line 23 of file ContextRepository.php.

◆ C_DESKTOP

const ILIAS\GlobalScreen\ScreenContext\ContextRepository::C_DESKTOP = 'desktop'

Definition at line 21 of file ContextRepository.php.

◆ C_LTI

const ILIAS\GlobalScreen\ScreenContext\ContextRepository::C_LTI = 'lti'

Definition at line 24 of file ContextRepository.php.

◆ C_MAIN

const ILIAS\GlobalScreen\ScreenContext\ContextRepository::C_MAIN = 'main'

Definition at line 20 of file ContextRepository.php.

◆ C_REPO

const ILIAS\GlobalScreen\ScreenContext\ContextRepository::C_REPO = 'repo'

Definition at line 22 of file ContextRepository.php.


The documentation for this class was generated from the following file: