ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
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)
 
 getStaticTopItems ()
 
 getProviderNameForPresentation ()
 
 getStaticSubItems ()
 
 getAdministrationIdentification ()
 
 getOrganisationIdentification ()
 
 getCommunicationIdentification ()
 
 getAchievementsIdentification ()
 
 getPersonalWorkspaceIdentification ()
 
 getRepositoryIdentification ()
 
- Public Member Functions inherited from ILIAS\GlobalScreen\Scope\MainMenu\Provider\AbstractStaticMainMenuProvider
 __construct (Container $dic)
 
 getAllIdentifications ()
 
 provideTypeInformation ()
 
- Public Member Functions inherited from ILIAS\GlobalScreen\Provider\AbstractProvider
 __construct (Container $dic)
 
 getFullyQualifiedClassName ()
 
 getProviderNameForPresentation ()
 

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)

Definition at line 69 of file StandardTopItemsProvider.php.

References ILIAS\GlobalScreen\Provider\__construct(), and ILIAS\GlobalScreen\Helper\BasicAccessCheckClosures\getInstance().

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)
+ 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.

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

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

234  : IdentificationInterface
235  {
237  }
+ Here is the caller graph for this function:

◆ getAdministrationIdentification()

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

Definition at line 207 of file StandardTopItemsProvider.php.

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

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

207  : IdentificationInterface
208  {
210  }
+ Here is the caller graph for this function:

◆ getCommunicationIdentification()

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

Definition at line 225 of file StandardTopItemsProvider.php.

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

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

225  : IdentificationInterface
226  {
228  }
+ 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.

References $DIC.

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

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
+ Here is the caller graph for this function:

◆ getOrganisationIdentification()

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

Definition at line 216 of file StandardTopItemsProvider.php.

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

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

216  : IdentificationInterface
217  {
219  }
+ Here is the caller graph for this function:

◆ getPersonalWorkspaceIdentification()

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

Definition at line 243 of file StandardTopItemsProvider.php.

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

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

243  : IdentificationInterface
244  {
246  }
+ Here is the caller graph for this function:

◆ getProviderNameForPresentation()

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

Implements ILIAS\GlobalScreen\Provider\Provider.

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.

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

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

252  : IdentificationInterface
253  {
255  }
+ Here is the caller graph for this function:

◆ getStaticSubItems()

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

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 ( )

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

Definition at line 85 of file StandardTopItemsProvider.php.

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().

85  : array
86  {
87  $f = function ($id) {
88  return $this->dic->language()->txt($id);
89  };
90  $dic = $this->dic;
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  }
if(!file_exists(getcwd() . '/ilias.ini.php'))
registration confirmation script for ilias
Definition: confirmReg.php:12
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
+ 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

Definition at line 21 of file StandardTopItemsProvider.php.

◆ $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: