Das UM Menu lässt sich in zwei Bereiche teilen
Das Plugin Menu: Menubereich des jeweiligen Plugins inklusive aller darunter liegenden Seiten
Das User Menu: enthält standardmäßig den Namen des eingeloggten Users und den Abmelde-Button.
Im User Menu können zusammen mit der Service Desk App zusätzliche persönliche Optionen konfiguriert werden. Für eine volle Nutzung diese Optionen muss eine Service Desk Lizenz vorliegen.
Im Menu kann der Zugang zu zwei persönlichen Seiten im Service Desk konfiguriert werden:
Benachrichtigungen verwalten
Anzeige der Tickets, die vom eingeloggten User beobachtet werden
Neue Menupunkt hinzufügen
Die Menu-Punkte des jeweiligen Plugins werden im LoginCallback.es6
des Plugins gesetzt und vom UM zum Session-Objekt hinzugefügt, was wiederum dem User-Menu zur Anzeige übergeben wird.
Bei der Erstellung eines Menu Eintrags wird der Eintrag nach dem folgenden Muster hinzugefügt. Wichtig ist die Angabe der id
im parent
, welcher den Eintrag entweder dem Menupunkt des Plugins oder dem User Menu zuordnet:
Um den Menupunkt dem Plugin zuzuordnen, muss der
parent
dieid "SERVICEDESK2_MENU_ID"
(bzw. Name des Plugins) habenUm den Menupunkt dem User Menu zuzuordnen, muss der
parent
immer dieid "UserMenu"
haben
LoginCallback.es6
guiUser.menuBar.append({ parent: 'UserMenu', id: `UserMenu_${SERVICEDESK2_MENU_ID}_${settingId}`, title: { de: de.pinuts.servicedesk.i18n.t(`de.umMenuEntries.${settingId}`), en: de.pinuts.servicedesk.i18n.t(`en.umMenuEntries.${settingId}`), }, icon: 'icon-list', adminController: `de.pinuts.servicedesk.app/index#/${settingId}`, })
Links zum persönlichen Service Desk Bereich entfernen
Im Service Desk gibt es auch die Möglichkeit, Links des User Menu's per Konfiguration zu entfernen.
Hierzu muss Folgendes getan werden:
Die JSON-Konfiguration der verlinkten Menu-Seiten entfernt werden. Details zur Konfiguration finden Sie unter Frontend Konfiguration.
In der
Config.es6
müssen unter dem keyuserMenuEntries
die Ids der Einträge entfernt werden:
let Config = { userMenuEntries: ['userSettings', 'observedTickets'] }