ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
CustomBreadcrumbPagePartProvider Class Reference
+ Inheritance diagram for CustomBreadcrumbPagePartProvider:
+ Collaboration diagram for CustomBreadcrumbPagePartProvider:

Public Member Functions

 __construct (PagePartProvider $original)
 
 getTitle ()
 
 getDescription ()
 
 getBreadCrumbs ()
 
 getMeta ()
 
 getActions ()
 
 getContent ()
 
 getMetaBar ()
 
 getMainBar ()
 
 getLogo ()
 
 getResponsiveLogo ()
 
 getFaviconPath ()
 
 getSystemInfos ()
 
 getFooter ()
 
 getShortTitle ()
 
 getViewTitle ()
 
 getToastContainer ()
 
 getContent ()
 
 getMetaBar ()
 
 getMainBar ()
 
 getBreadCrumbs ()
 
 getLogo ()
 
 getResponsiveLogo ()
 
 getFaviconPath ()
 
 getSystemInfos ()
 
 getFooter ()
 
 getTitle ()
 
 getShortTitle ()
 
 getViewTitle ()
 
 getToastContainer ()
 

Private Member Functions

 getRefId ()
 

Private Attributes

PagePartProvider $original
 
RefineryFactory $refinery
 
ilLogger $logger
 

Detailed Description

Definition at line 24 of file CustomBreadcrumbPagePartProvider.php.

Constructor & Destructor Documentation

◆ __construct()

CustomBreadcrumbPagePartProvider::__construct ( PagePartProvider  $original)

Definition at line 30 of file CustomBreadcrumbPagePartProvider.php.

31 {
32 global $DIC;
33 $this->refinery = $DIC->refinery();
34 $this->original = $original;
35 $this->logger = $DIC->logger()->root();
36 }
global $DIC
Definition: shib_login.php:26

References $DIC, $original, ILIAS\Repository\logger(), and ILIAS\Repository\refinery().

+ Here is the call graph for this function:

Member Function Documentation

◆ getActions()

CustomBreadcrumbPagePartProvider::getActions ( )

Definition at line 104 of file CustomBreadcrumbPagePartProvider.php.

104 : array
105 {
106 return $this->original->getActions();
107 }

◆ getBreadCrumbs()

CustomBreadcrumbPagePartProvider::getBreadCrumbs ( )
Returns
Breadcrumbs|null

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 65 of file CustomBreadcrumbPagePartProvider.php.

66 {
67 global $DIC;
68 $breadcrumbs = $this->original->getBreadCrumbs();
69 if ($breadcrumbs === null) {
70 return null;
71 }
72
73 $ref_id = $this->getRefId();
74 if (!isset($ref_id)) {
75 return $breadcrumbs;
76 }
77
78 $goto_crumbs = [];
79 $non_goto_crumbs = [];
80
81 foreach ($breadcrumbs->getItems() as $crumb) {
82 $action = (string) $crumb->getAction();
83 if (method_exists($crumb, 'getAction') && (str_contains($action, 'goto.php') || str_contains($action, '/go/'))) {
84 if (str_contains($action, $ref_id) && !str_contains($action, 'root')) {
85 $goto_crumbs[] = $crumb;
86 }
87 } else {
88 $non_goto_crumbs[] = $crumb;
89 }
90 }
91 $last_goto = array_slice($goto_crumbs, -1);
92
93 $final_crumbs = array_merge($last_goto, $non_goto_crumbs);
94
95 return $DIC->ui()->factory()->breadcrumbs($final_crumbs);
96
97 }
$ref_id
Definition: ltiauth.php:66

References $DIC, $ref_id, and getRefId().

+ Here is the call graph for this function:

◆ getContent()

CustomBreadcrumbPagePartProvider::getContent ( )
Returns
Content|null

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 109 of file CustomBreadcrumbPagePartProvider.php.

110 {
111 return $this->original->getContent();
112 }
getContent()
Get content as string stored in this component.

◆ getDescription()

CustomBreadcrumbPagePartProvider::getDescription ( )

Definition at line 43 of file CustomBreadcrumbPagePartProvider.php.

43 : string
44 {
45 return $this->original->getDescription();
46 }

◆ getFaviconPath()

CustomBreadcrumbPagePartProvider::getFaviconPath ( )
Returns
string

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 134 of file CustomBreadcrumbPagePartProvider.php.

134 : string
135 {
136 return $this->original->getFaviconPath();
137 }

◆ getFooter()

CustomBreadcrumbPagePartProvider::getFooter ( )
Returns
Footer|null

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 144 of file CustomBreadcrumbPagePartProvider.php.

145 {
146 return $this->original->getFooter();
147 }

◆ getLogo()

CustomBreadcrumbPagePartProvider::getLogo ( )
Returns
Image|null

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 124 of file CustomBreadcrumbPagePartProvider.php.

125 {
126 return $this->original->getLogo();
127 }

◆ getMainBar()

CustomBreadcrumbPagePartProvider::getMainBar ( )
Returns
MainBar|null

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 119 of file CustomBreadcrumbPagePartProvider.php.

120 {
121 return $this->original->getMainBar();
122 }
This describes the MainBar.
Definition: MainBar.php:34

◆ getMeta()

CustomBreadcrumbPagePartProvider::getMeta ( )

Definition at line 99 of file CustomBreadcrumbPagePartProvider.php.

99 : array
100 {
101 return $this->original->getMeta();
102 }

◆ getMetaBar()

CustomBreadcrumbPagePartProvider::getMetaBar ( )
Returns
MetaBar|null

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 114 of file CustomBreadcrumbPagePartProvider.php.

115 {
116 return $this->original->getMetaBar();
117 }
This describes the MetaBar.
Definition: MetaBar.php:33

◆ getRefId()

CustomBreadcrumbPagePartProvider::getRefId ( )
private

Definition at line 48 of file CustomBreadcrumbPagePartProvider.php.

48 : string|null
49 {
50 global $DIC;
51
52 if (ilSession::has("ref_id")) {
53 return (string) ilSession::get("ref_id");
54 }
55 if (ilSession::has("lti_context_ids") && is_array(ilSession::get("lti_context_ids")) && count(ilSession::get("lti_context_ids")) > 0) {
56 return (string) ilSession::get("lti_context_ids")[0];
57 }
58
59 if ($DIC ->http()->wrapper()->query()->has("ref_id")) {
60 return $DIC ->http()->wrapper()->query()->retrieve("ref_id", $DIC->refinery()->to()->string());
61 }
62 return null;
63 }
static get(string $a_var)
static has($a_var)
static http()
Fetches the global http state from ILIAS.
has(string $class_name)

References $DIC, ilSession\get(), ilSession\has(), ILIAS\GlobalScreen\has(), and ILIAS\FileDelivery\http().

Referenced by getBreadCrumbs().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getResponsiveLogo()

CustomBreadcrumbPagePartProvider::getResponsiveLogo ( )
Returns
Image|null

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 129 of file CustomBreadcrumbPagePartProvider.php.

130 {
131 return $this->original->getResponsiveLogo();
132 }

◆ getShortTitle()

CustomBreadcrumbPagePartProvider::getShortTitle ( )

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 149 of file CustomBreadcrumbPagePartProvider.php.

149 : string
150 {
151 return $this->original->getShortTitle();
152 }

◆ getSystemInfos()

CustomBreadcrumbPagePartProvider::getSystemInfos ( )
Returns
SystemInfo[]

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 139 of file CustomBreadcrumbPagePartProvider.php.

139 : array
140 {
141 return $this->original->getSystemInfos();
142 }

◆ getTitle()

CustomBreadcrumbPagePartProvider::getTitle ( )

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 38 of file CustomBreadcrumbPagePartProvider.php.

38 : string
39 {
40 return $this->original->getTitle();
41 }

◆ getToastContainer()

CustomBreadcrumbPagePartProvider::getToastContainer ( )

◆ getViewTitle()

CustomBreadcrumbPagePartProvider::getViewTitle ( )

Implements ILIAS\GlobalScreen\Scope\Layout\Provider\PagePart\PagePartProvider.

Definition at line 154 of file CustomBreadcrumbPagePartProvider.php.

154 : string
155 {
156 return $this->original->getViewTitle();
157 }

Field Documentation

◆ $logger

ilLogger CustomBreadcrumbPagePartProvider::$logger
private

Definition at line 28 of file CustomBreadcrumbPagePartProvider.php.

◆ $original

PagePartProvider CustomBreadcrumbPagePartProvider::$original
private

Definition at line 26 of file CustomBreadcrumbPagePartProvider.php.

Referenced by __construct().

◆ $refinery

RefineryFactory CustomBreadcrumbPagePartProvider::$refinery
private

Definition at line 27 of file CustomBreadcrumbPagePartProvider.php.


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