ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
ILIAS\MainMenu\Provider\StandardTopItemsProvider Class Reference

Class StandardTopItemsProvider. More...

+ Inheritance diagram for ILIAS\MainMenu\Provider\StandardTopItemsProvider:
+ Collaboration diagram for ILIAS\MainMenu\Provider\StandardTopItemsProvider:

Public Member Functions

 __construct (Container $dic)
 @inheritDoc More...
 
 getStaticTopItems ()
 @inheritDoc More...
 
 getProviderNameForPresentation ()
 @inheritDoc More...
 
 getStaticSubItems ()
 @inheritDoc More...
 
 getAdministrationIdentification ()
 
 getOrganisationIdentification ()
 
 getCommunicationIdentification ()
 
 getAchievementsIdentification ()
 
 getPersonalWorkspaceIdentification ()
 
 getRepositoryIdentification ()
 
- Public Member Functions inherited from ILIAS\GlobalScreen\Scope\MainMenu\Provider\AbstractStaticMainMenuProvider
 __construct (Container $dic)
 @inheritDoc More...
 
 getAllIdentifications ()
 @inheritDoc More...
 
 provideTypeInformation ()
 @inheritDoc More...
 
- Public Member Functions inherited from ILIAS\GlobalScreen\Provider\AbstractProvider
 __construct (Container $dic)
 @inheritDoc More...
 
 getFullyQualifiedClassName ()
 @inheritDoc More...
 
 getProviderNameForPresentation ()
 
 getFullyQualifiedClassName ()
 
 getProviderNameForPresentation ()
 
 getStaticTopItems ()
 
 getStaticSubItems ()
 
 provideTypeInformation ()
 
 getAllIdentifications ()
 

Static Public Member Functions

static getInstance ()
 

Private Attributes

 $basic_access_helper
 
 $administration_identification
 
 $organisation_identification
 
 $communication_identification
 
 $achievements_identification
 
 $personal_workspace_identification
 
 $repository_identification
 

Static Private Attributes

static $instance
 

Additional Inherited Members

- Protected Member Functions inherited from ILIAS\GlobalScreen\Provider\AbstractProvider
 globalScreen ()
 
- Protected Attributes inherited from ILIAS\GlobalScreen\Scope\MainMenu\Provider\AbstractStaticMainMenuProvider
 $dic
 
 $if
 
 $mainmenu
 
- Protected Attributes inherited from ILIAS\GlobalScreen\Provider\AbstractProvider
 $dic
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::__construct ( Container  $dic)

@inheritDoc

Reimplemented from ILIAS\GlobalScreen\Scope\MainMenu\Provider\AbstractStaticMainMenuProvider.

Definition at line 69 of file StandardTopItemsProvider.php.

70 {
72 $this->basic_access_helper = BasicAccessCheckClosures::getInstance();
73 $this->repository_identification = $this->if->identifier('repository');
74 $this->personal_workspace_identification = $this->if->identifier('personal_workspace');
75 $this->achievements_identification = $this->if->identifier('achievements');
76 $this->communication_identification = $this->if->identifier('communication');
77 $this->organisation_identification = $this->if->identifier('organisation');
78 $this->administration_identification = $this->if->identifier('administration');
79 }
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc

References ILIAS\GlobalScreen\Scope\MainMenu\Provider\AbstractStaticMainMenuProvider\$dic, ILIAS\GlobalScreen\Provider\__construct(), and ILIAS\GlobalScreen\Helper\BasicAccessCheckClosures\getInstance().

+ Here is the call graph for this function:

Member Function Documentation

◆ getAchievementsIdentification()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getAchievementsIdentification ( )
Returns
IdentificationInterface

Definition at line 234 of file StandardTopItemsProvider.php.

234 : IdentificationInterface
235 {
237 }

References ILIAS\MainMenu\Provider\StandardTopItemsProvider\$achievements_identification.

Referenced by ILIAS\MainMenu\Provider\StandardTopItemsProvider\getStaticTopItems().

+ Here is the caller graph for this function:

◆ getAdministrationIdentification()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getAdministrationIdentification ( )
Returns
IdentificationInterface

Definition at line 207 of file StandardTopItemsProvider.php.

207 : IdentificationInterface
208 {
210 }

References ILIAS\MainMenu\Provider\StandardTopItemsProvider\$administration_identification.

Referenced by ILIAS\MainMenu\Provider\StandardTopItemsProvider\getStaticTopItems().

+ Here is the caller graph for this function:

◆ getCommunicationIdentification()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getCommunicationIdentification ( )
Returns
IdentificationInterface

Definition at line 225 of file StandardTopItemsProvider.php.

225 : IdentificationInterface
226 {
228 }

References ILIAS\MainMenu\Provider\StandardTopItemsProvider\$communication_identification.

Referenced by ILIAS\MainMenu\Provider\StandardTopItemsProvider\getStaticTopItems().

+ Here is the caller graph for this function:

◆ getInstance()

static ILIAS\MainMenu\Provider\StandardTopItemsProvider::getInstance ( )
static
Returns
StandardTopItemsProvider

Definition at line 55 of file StandardTopItemsProvider.php.

56 {
57 global $DIC;
58 if (!isset(self::$instance)) {
59 self::$instance = new self($DIC);
60 }
61
62 return self::$instance;
63 }
$DIC
Definition: xapitoken.php:46

References $DIC, and ILIAS\MainMenu\Provider\StandardTopItemsProvider\$instance.

Referenced by ILIAS\MainMenu\Provider\ChatMainBarProvider\getStaticSubItems(), ILIAS\OrgUnit\Provider\OrgUnitMainBarProvider\getStaticSubItems(), ILIAS\Portfolio\Provider\PortfolioMainBarProvider\getStaticSubItems(), ILIAS\Administration\AdministrationMainBarProvider\getStaticSubItems(), ILIAS\Badge\Provider\BadgeMainBarProvider\getStaticSubItems(), ILIAS\Calendar\Provider\CalendarMainBarProvider\getStaticSubItems(), ILIAS\Certificate\Provider\CertificateMainBarProvider\getStaticSubItems(), ILIAS\Contact\Provider\ContactMainBarProvider\getStaticSubItems(), ILIAS\PersonalDesktop\PDMainBarProvider\getStaticSubItems(), ILIAS\LearningHistory\LearningHistoryMainBarProvider\getStaticSubItems(), ILIAS\Mail\Provider\MailMainBarProvider\getStaticSubItems(), ILIAS\Membership\GlobalScreen\MembershipMainBarProvider\getStaticSubItems(), ILIAS\MyStaff\Provider\StaffMainBarProvider\getStaticSubItems(), ILIAS\News\Provider\NewsMainBarProvider\getStaticSubItems(), ILIAS\Notes\Provider\NotesMainBarProvider\getStaticSubItems(), ILIAS\PersonalWorkspace\Provider\WorkspaceMainBarProvider\getStaticSubItems(), ILIAS\Repository\Provider\RepositoryMainBarProvider\getStaticSubItems(), ILIAS\Skill\Provider\SkillMainBarProvider\getStaticSubItems(), ILIAS\Tagging\Provider\TaggingMainBarProvider\getStaticSubItems(), ILIAS\Tasks\DerivedTasks\Provider\DerivedTaskMainBarProvider\getStaticSubItems(), and ILIAS\LearningProgress\LPMainBarProvider\getStaticSubItems().

+ Here is the caller graph for this function:

◆ getOrganisationIdentification()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getOrganisationIdentification ( )
Returns
IdentificationInterface

Definition at line 216 of file StandardTopItemsProvider.php.

216 : IdentificationInterface
217 {
219 }

References ILIAS\MainMenu\Provider\StandardTopItemsProvider\$organisation_identification.

Referenced by ILIAS\MainMenu\Provider\StandardTopItemsProvider\getStaticTopItems().

+ Here is the caller graph for this function:

◆ getPersonalWorkspaceIdentification()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getPersonalWorkspaceIdentification ( )
Returns
IdentificationInterface

Definition at line 243 of file StandardTopItemsProvider.php.

243 : IdentificationInterface
244 {
246 }

References ILIAS\MainMenu\Provider\StandardTopItemsProvider\$personal_workspace_identification.

Referenced by ILIAS\MainMenu\Provider\StandardTopItemsProvider\getStaticTopItems().

+ Here is the caller graph for this function:

◆ getProviderNameForPresentation()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getProviderNameForPresentation ( )

@inheritDoc

Reimplemented from ILIAS\GlobalScreen\Provider\AbstractProvider.

Definition at line 189 of file StandardTopItemsProvider.php.

189 : string
190 {
191 return "Default";
192 }

◆ getRepositoryIdentification()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getRepositoryIdentification ( )
Returns
IdentificationInterface

Definition at line 252 of file StandardTopItemsProvider.php.

252 : IdentificationInterface
253 {
255 }

References ILIAS\MainMenu\Provider\StandardTopItemsProvider\$repository_identification.

Referenced by ILIAS\MainMenu\Provider\StandardTopItemsProvider\getStaticTopItems().

+ Here is the caller graph for this function:

◆ getStaticSubItems()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getStaticSubItems ( )

@inheritDoc

Implements ILIAS\GlobalScreen\Scope\MainMenu\Provider\StaticMainMenuProvider.

Definition at line 198 of file StandardTopItemsProvider.php.

198 : array
199 {
200 return [];
201 }

◆ getStaticTopItems()

ILIAS\MainMenu\Provider\StandardTopItemsProvider::getStaticTopItems ( )

@inheritDoc

Implements ILIAS\GlobalScreen\Scope\MainMenu\Provider\StaticMainMenuProvider.

Definition at line 85 of file StandardTopItemsProvider.php.

85 : array
86 {
87 $f = function ($id) {
88 return $this->dic->language()->txt($id);
89 };
91
92 // Dashboard
93 $title = $this->dic->language()->txt("mm_dashboard");
94 $icon = $this->dic->ui()->factory()->symbol()->icon()->standard(Standard::DSHS, $title)->withIsOutlined(true);
95 $dashboard = $this->mainmenu->topLinkItem($this->if->identifier('mm_pd_crs_grp'))
96 ->withSymbol($icon)
97 ->withTitle($title)
98 ->withAction("ilias.php?baseClass=ilDashboardGUI&cmd=jumpToMemberships")
99 ->withPosition(10)
100 ->withNonAvailableReason($this->dic->ui()->factory()->legacy("{$this->dic->language()->txt('component_not_active')}"))
101 ->withAvailableCallable(
102 function () use ($dic) {
103 return true;
104
105 return $dic->settings()->get('disable_my_memberships', 0) == 0;
106 }
107 )
108 ->withVisibilityCallable(
109 $this->basic_access_helper->isUserLoggedIn()
110 );
111
112 $title = $f("mm_repository");
113 $icon = $this->dic->ui()->factory()->symbol()->icon()->standard(Standard::REP, $title)->withIsOutlined(true);
114
115 $repository = $this->mainmenu->topParentItem($this->getRepositoryIdentification())
116 ->withVisibilityCallable($this->basic_access_helper->isRepositoryReadable())
117 ->withSymbol($icon)
118 ->withTitle($title)
119 ->withPosition(20);
120
121 $title = $f("mm_personal_workspace");
122 $icon = $this->dic->ui()->factory()->symbol()->icon()->custom(\ilUtil::getImagePath("outlined/icon_wksp.svg"), $title);
123
124 $personal_workspace = $this->mainmenu->topParentItem($this->getPersonalWorkspaceIdentification())
125 ->withVisibilityCallable($this->basic_access_helper->isUserLoggedIn())
126 ->withSymbol($icon)
127 ->withTitle($title)
128 ->withPosition(30);
129
130 $title = $f("mm_achievements");
131 $icon = $this->dic->ui()->factory()->symbol()->icon()->custom(\ilUtil::getImagePath("outlined/icon_achv.svg"), $title);
132
133 $achievements = $this->mainmenu->topParentItem($this->getAchievementsIdentification())
134 ->withVisibilityCallable($this->basic_access_helper->isUserLoggedIn())
135 ->withSymbol($icon)
136 ->withTitle($title)
137 ->withPosition(40);
138
139 $title = $f("mm_communication");
140 $icon = $this->dic->ui()->factory()->symbol()->icon()->custom(\ilUtil::getImagePath("outlined/icon_comu.svg"), $title);
141
142 $communication = $this->mainmenu->topParentItem($this->getCommunicationIdentification())
143 ->withVisibilityCallable($this->basic_access_helper->isUserLoggedIn())
144 ->withSymbol($icon)
145 ->withTitle($title)
146 ->withPosition(50);
147
148 $title = $f("mm_organisation");
149 $icon = $this->dic->ui()->factory()->symbol()->icon()->custom(\ilUtil::getImagePath("outlined/icon_orga.svg"), $title);
150
151 $organisation = $this->mainmenu->topParentItem($this->getOrganisationIdentification())
152 ->withVisibilityCallable($this->basic_access_helper->isUserLoggedIn(static function () : bool {
153 return (bool) ilMyStaffAccess::getInstance()->hasCurrentUserAccessToMyStaff();
154 }))
155 ->withSymbol($icon)
156 ->withTitle($title)
157 ->withPosition(60)
158 ->withAvailableCallable(
159 static function () : bool {
160 return (bool) ilMyStaffAccess::getInstance()->hasCurrentUserAccessToMyStaff();
161 });
162
163 $title = $f("mm_administration");
164 $icon = $this->dic->ui()->factory()->symbol()->icon()->standard("adm", $title)->withIsOutlined(true);
165
166 $administration = $this->mainmenu->topParentItem($this->getAdministrationIdentification())
167 ->withSupportsAsynchronousLoading(false)
168 ->withAvailableCallable($this->basic_access_helper->isUserLoggedIn())
169 ->withSymbol($icon)
170 ->withTitle($title)
171 ->withPosition(70)
172 ->withVisibilityCallable($this->basic_access_helper->hasAdministrationAccess());
173
174 return [
175 $dashboard,
176 $repository,
177 $personal_workspace,
178 $achievements,
179 $communication,
180 $organisation,
181 $administration,
182 ];
183 }
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
if(!file_exists(getcwd() . '/ilias.ini.php'))
registration confirmation script for ilias
Definition: confirmReg.php:12
withSymbol(Symbol $symbol)
@inheritDoc

References ILIAS\GlobalScreen\Scope\MainMenu\Provider\AbstractStaticMainMenuProvider\$dic, Vendor\Package\$f, ILIAS\UI\Component\Symbol\Icon\Standard\DSHS, ILIAS\MainMenu\Provider\StandardTopItemsProvider\getAchievementsIdentification(), ILIAS\MainMenu\Provider\StandardTopItemsProvider\getAdministrationIdentification(), ILIAS\MainMenu\Provider\StandardTopItemsProvider\getCommunicationIdentification(), ilUtil\getImagePath(), ILIAS\MyStaff\ilMyStaffAccess\getInstance(), ILIAS\MainMenu\Provider\StandardTopItemsProvider\getOrganisationIdentification(), ILIAS\MainMenu\Provider\StandardTopItemsProvider\getPersonalWorkspaceIdentification(), ILIAS\MainMenu\Provider\StandardTopItemsProvider\getRepositoryIdentification(), if, ILIAS\UI\Component\Symbol\Icon\Standard\REP, and ILIAS\GlobalScreen\Scope\MainMenu\Factory\withSymbol().

+ Here is the call graph for this function:

Field Documentation

◆ $achievements_identification

ILIAS\MainMenu\Provider\StandardTopItemsProvider::$achievements_identification
private

◆ $administration_identification

ILIAS\MainMenu\Provider\StandardTopItemsProvider::$administration_identification
private

◆ $basic_access_helper

ILIAS\MainMenu\Provider\StandardTopItemsProvider::$basic_access_helper
private

Definition at line 25 of file StandardTopItemsProvider.php.

◆ $communication_identification

ILIAS\MainMenu\Provider\StandardTopItemsProvider::$communication_identification
private

◆ $instance

ILIAS\MainMenu\Provider\StandardTopItemsProvider::$instance
staticprivate

◆ $organisation_identification

ILIAS\MainMenu\Provider\StandardTopItemsProvider::$organisation_identification
private

◆ $personal_workspace_identification

ILIAS\MainMenu\Provider\StandardTopItemsProvider::$personal_workspace_identification
private

◆ $repository_identification

ILIAS\MainMenu\Provider\StandardTopItemsProvider::$repository_identification
private

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