Managementcenter Menü

Konfiguration

Copyright ©

Mindbreeze GmbH, A-4020 Linz, .

Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen und/oder Marken der jeweiligen Hersteller.

Diese Unterlagen sind streng vertraulich. Durch die Übermittlung und Präsentation dieser Unterlagen alleine werden keine Rechte an unserer Software, an unseren Dienstleistungen und Dienstleistungsresultaten oder sonstigen geschützten Rechten begründet. Die Weitergabe, Veröffentlichung oder Vervielfältigung ist nicht gestattet.

Aus Gründen der einfacheren Lesbarkeit wird auf die geschlechtsspezifische Differenzierung, z.B. Benutzer/-innen, verzichtet. Entsprechende Begriffe gelten im Sinne der Gleichbehandlung grundsätzlich für beide Geschlechter.

EinführungPermanenter Link zu dieser Überschrift

Im InSpire Management Center ist es möglich, eigene Menüpunkte zu hinterlegen bzw. diese zu überschreiben. So können z.B. CSV-Files oder Text-Files direkt in das Mindbreeze Management Center eingebunden und bearbeitet werden. Die Berechtigungen werden weiterhin laut Backend Credentials geprüft.

Rollen (ab Spring Release 2018 HF3) oder resource.json (vor Spring Release 2018 HF3)Permanenter Link zu dieser Überschrift

Je nachdem welche Variante verwendet wird ( oder ), wird die Dokumentation unterschieden

RollenPermanenter Link zu dieser Überschrift

Sämtliche Menüpunkte werden über Rollen gesteuert angezeigt, wenn kein resource.json vorhanden ist. Andernfalls wird das Menü in gewohnter Art geladen (siehe ).

User können im Management Center unter „Credentials“ verwaltet werden.
Hier der Link zur Dokumentation.

Wichtig: Jeder User, welches das Management Center verwendet, muss die Rolle „InSpire Overview User” haben.


Rollen mit Menüpunkten:Permanenter Link zu dieser Überschrift

Rolle

Angezeigte Menüpunkte

InSpire Administrator

Search Apps, Reporting, Search Experience, Services, Configuration, Setup, Update, System

InSpire app.telemetry Administrator

Reporting

InSpire Client User

Search Apps

InSpire Config Administrator

Configuration

InSpire Services Administrator

Services

InSpire Webmin Administrator

System

InSpire Vocabulary Administrator

Search Experience (Synonyms, Replacements, Vocabulary)

InSpire Relevance Administrator

Search Apps, Search Experience (Query Boosting, Relevanz)

InSpire Resource Administrator

Search Apps, Search Experience (Vollständig inkl. Plugins)

Verfügbare MenüpunktePermanenter Link zu dieser Überschrift

Wenn Rollen verfügbar sind (data/resources/resource.json existiert nicht) lauten die Menüpunkte wie folgt:

menu.admin.jsonPermanenter Link zu dieser Überschrift

{

  "entries": [{

    "priority": 700,

    "id": "update",

    "title": "Update",

    "icon": "upload",

    "submenu": [{

      "priority": 10,

      "title": "Upload",

      "href": "adminapps/services/update/upload/form",

      "icon": "upload",

      "unsupportedBrowsers": ["Edge"]

    }, {

      "priority": 20,

      "title": "Perfom Update",

      "href": "adminapps/services/update/update/form",

      "icon": "refresh",

      "unsupportedBrowsers": ["Edge"]

    }]

  },

  {

    "priority": 600,

    "id": "setup",

    "title": "Setup",

    "icon": "cogs",

    "submenu": [{

        "priority": 10,

        "title": "Kerberos",

        "href": "adminapps/services/krb5config",

        "icon": "lock"

      },

      {

        "priority": 20,

        "title": "Credentials",

        "href": "auth/admin/master/console/#/realms/master/users",

        "icon": "users"

      },

      {

        "priority": 30,

        "title": "InSpire",

        "href": "update/settings/form",

        "icon": "tasks"

      },

      {

        "priority": 40,

        "title": "SSL Certificate",

        "href": "adminapps/services/update/upload/certificateform",

        "icon": "certificate",

        "unsupportedBrowsers": ["Edge"]

      }

    ]

  }]

}

menu.config.jsonPermanenter Link zu dieser Überschrift

{

  "entries": [{

    "priority": 500,

    "id": "configuration",

    "title": "Configuration",

    "href": "config",

    "icon": "wrench"

  }]

}

menu.relevance.jsonPermanenter Link zu dieser Überschrift

{

  "entries": [{

    "priority": 300,

    "id": "searchexperience",

    "title": "Search Experience",

    "icon": "search",

    "submenu": [{

      "priority": 30,

      "id": "searchexperience",

      "title": "Query Boostings",

      "icon": "list-alt",

      "file": "relevance/term2documentboost.csv",

      "type": "csv"

     },{

      "priority": 70,

      "id": "searchexperience",

      "title": "Relevance",

      "icon": "list-alt",

      "type": "layout",

      "grid": [{

        "href": "/apps/client/index.html?relevance-info=true",

        "type": "url",

        "class": "col-md-8 search-client"

      },{

        "class": "col-md-4",

        "grid": [{

          "file": "relevance/relevance.json",

          "type": "json",

          "class": "col-md-12",

          "height": "50%"

        },{

          "file": "relevance/term2documentboost.csv",

          "type": "csv",

          "class": "col-md-12 mb-hidden-overflow",

          "height": "50%"

        }]

      }]

     }]

  }]

}

menu.reporting.jsonPermanenter Link zu dieser Überschrift

{

  "entries": [{

    "priority": 200,

    "id": "reporting",

    "title": "Reporting",

    "icon": "bar-chart-o",

    "submenu": [{

      "priority": 10,

      "title": "Telemetry Details",

      "href": "apptelemetry/#application-view!noSplash:1",

      "icon": "tasks"

    }, {

      "priority": 20,

      "title": "Appliance Health",

      "href": "apptelemetry/#status-view!noSplash:1",

      "icon": "medkit"

    }, {

      "priority": 30,

      "title": "Performance",

      "href": "apptelemetry/#dashboard-view!dashboardId:10097!noSplash:1",

      "icon": "dashboard"

    }, {

      "priority": 40,

      "title": "Search Experience",

      "href": "apptelemetry/#dashboard-view!dashboardId:10103!noSplash:1",

      "icon": "th-list"

    }]

  }]

}

menu.resources.jsonPermanenter Link zu dieser Überschrift

{

  "entries": []

}

menu.resources.plugins.jsonPermanenter Link zu dieser Überschrift

{

  "entries": []

}

menu.searchapps.jsonPermanenter Link zu dieser Überschrift

{

  "entries": [{

    "priority": 100,

    "id": "searchapps",

    "title": "Search Apps",

    "icon": "th-large",

    "submenu": [{

        "priority": 10,

        "title": "Client",

        "href": "{{host_url}}/",

        "icon": "search"

      },

      {

        "priority": 20,

        "title": "Search Apps",

        "href": "{{host_url}}/apps/?saveMode=true&storeURL={{encoded_host_url}}",

        "icon": "edit"

      },

      {

        "priority": 30,

        "title": "Designer",

        "href": "{{host_url}}/apps/editor/",

        "icon": "edit"

      },

      {

        "priority": 40,

        "title": "Users",

        "href": "{{host_url}}/apps/admin/resources/#user",

        "icon": "user",

        "class": "userEl hidden"

      },

      {

        "priority": 50,

        "title": "Alerts",

        "href": "{{host_url}}/apps/admin/resources/#alert",

        "icon": "bell",

        "class": "userEl hidden"

      }

    ]

  }]

}

menu.services.jsonPermanenter Link zu dieser Überschrift

{

  "entries": [{

    "priority": 400,

    "id": "services",

    "title": "Services",

    "href": "adminapps/services",

    "icon": "cog"

  }]

}

menu.vocabulary.jsonPermanenter Link zu dieser Überschrift

{

  "entries": [{

    "priority": 300,

    "id": "searchexperience",

    "title": "Search Experience",

    "icon": "search",

    "submenu": [{

      "priority": 10,

      "id": "searchexperience",

      "title": "Synonyms",

      "icon": "list-alt",

      "file": "vocabulary/synonyms.txt",

      "type": "text"

     },{

      "priority": 20,

      "id": "searchexperience",

      "title": "Replacements",

      "icon": "list-alt",

      "file": "vocabulary/replacements.csv",

      "type": "csv"

     },{

      "priority": 40,

      "id": "searchexperience",

      "title": "Vocabulary",

      "icon": "list-alt",

      "file": "vocabulary/vocabulary.csv",

      "type": "csv"

   }]

  }]

}

menu.webmin.jsonPermanenter Link zu dieser Überschrift

{

  "entries": [{

    "priority": 800,

    "id": "system",

    "title": "System",

    "icon": "desktop",

    "submenu": [{

      "priority": 10,

      "title": "File Manager",

      "icon": "folder",

      "href": "/webmin/filemin/",

      "unsupportedBrowsers": ["Edge", "IE"]

    }, {

      "priority": 20,

      "title": "System Time",

      "icon": "clock-o",

      "href": "/webmin/time/"

    }]

  }]

}

JSON FilesPermanenter Link zu dieser Überschrift

AblagePermanenter Link zu dieser Überschrift

Die angepassten JSON-Files müssen im Verzeichnis: /data/resources/mmc/ abgelegt werden und folgendem Muster entsprechen:

menu.{{menupunkt}}.json.overwrite

AufbauPermanenter Link zu dieser Überschrift

Ein JSON-File muss aus einem Header-Teil und einem Entries-Teil bestehen.

Header

Mergestragety:

replace: Der gesamte Menüeintrag wird ersetzt

keepbuiltin: Der Menüeintrag wird mit den Entries erweitert

Defaultvalue ist „replace“

Roles:

Welche User dürfen diesen Menüpunkt sehen

Defaultvalue ist alle User

Entries

Wenn „replace“

id (ID vom Elternelement (Ohne Leerzeichen und klein geschrieben)

priority

title

icon

submenu (optional)

Wenn „keepbuiltin“

id

submenu

BeispielePermanenter Link zu dieser Überschrift

Ein Plugin überschreibenPermanenter Link zu dieser Überschrift

Plugins sind im Verzeichnis mit dem Muster „menu.resources.plugin.{{plugin-id}}.json.overwrite zu überschreiben.

menu.resources.plugin.[bestbets].json.overwrite

{

  "header": {

    "mergestrategy": "keepbuiltin",

    "roles": [

      "InSpire Resource Administrator"

    ]

  },

  "entries": [{

    "id": "searchexperience",

    "submenu": [{

      "priority": 35,

      "id": "searchexperience",

      "title": "Suggested Sites 2",

      "icon": "list-alt",

      "file": "bestbets.csv",

      "type": "csv"

     }]

  }]

}

Vocabulary (Search Experience) überschreibenPermanenter Link zu dieser Überschrift

menu.vocabulary.json.overwrite

{

  "header": {

    "mergestrategy": "replace",

    "roles": [

      "InSpire Administrator"

    ]

  },

  "entries": [{

    "priority": 300,

    "id": "searchexperience",

    "title": "New Search Experience",

    "icon": "search",

    "submenu": [{

      "priority": 10,

      "id": "searchexperience",

      "title": "Synonyms Neu",

      "icon": "list-alt",

      "file": "vocabulary/synonyms.txt",

      "type": "text"

     }]

  }]

}

Config überschreibenPermanenter Link zu dieser Überschrift

menu.config.json.overwrite

{

  "header": {

    "roles": [

      "InSpire Administrator"

    ]

  },

  "entries": [{

    "priority": 500,

    "id": "configuration",

    "title": "Configuration Neu",

    "href": "config",

    "icon": "wrench"

  }]

}

Resource.jsonPermanenter Link zu dieser Überschrift

VorbereitungPermanenter Link zu dieser Überschrift

Um das Menü im Mindbreeze Management Center anzupassen, wird das „resources.json“ File benötigt, welches sich unter /data/resources/ befindet.

Wichtig dabei: Bei einem Update, wird dieses resources.json File überschrieben, um mögliche Updates zu erhalten. Allerdings wird ein Backup des Files im selben Verzeichnis erstellt (resources-[TIMESTAMP].json. Dieses File kann wieder zu resources.json umbenannt werden, sodass die alte Konfiguration verwendet wird (Tipp: Zuvor von den Files resources.json und resource-TIMESTAMP.json ein Backup anlegen!).

KonfigurationPermanenter Link zu dieser Überschrift

Die Konfiguration wird anhand eines Auszuges des aktuellen resources.json Files beschrieben:

[{

  "title": "Search Experience",

  "icon": "search",

  "entries": [

   {

    "title": "Synonyms",

    "icon": "list-alt",

    "file": "synonyms.csv",

    "type": "csv"

   },

   {

    "title": "Query Boostings",

    "icon": "list-alt",

    "file": "term2documentboost.csv",

    "type": "csv"

   },

  ]

}]

Um das Menü wie im Bild oben zu erweitern/erstellen, wird eine Liste von Objekten in diesem resources.json File angegeben. Ein Objekt besteht dazu aus einem Titel (hier „Search Experience“) und einem Font-Awesome Icon. Dazu erhält jeder Eintrag „entries“ mit den jeweiligen Unterpunkten siehe Beispiel.

ErweiterungenPermanenter Link zu dieser Überschrift

Hostname anpassen bei „Search Apps“Permanenter Link zu dieser Überschrift

Um den Hostnamen für die Unterpunkte in „Search Apps“ anpassen zu können, um ggf. einen Port oder Pfad anzupassen, kann dieses File erweitert werden.

Dazu wird ein weiteres Objekt mit dem Key „searchappsbaseurl“ eingetragen.

[{

    "searchappsbaseurl": "http://meine-domaine.com:12345/"

  },{

  "title": "Search Experience",

  "icon": "search",

  "entries": [

   {

    "title": "Synonyms",

    "icon": "list-alt",

    "file": "synonyms.csv",

    "type": "csv"

   },

   {

    "title": "Query Boostings",

    "icon": "list-alt",

    "file": "term2documentboost.csv",

    "type": "csv"

   },

  ]

}]

Tipp: Sollte die Änderungen nicht sofort übernommen sein, kann es hilfreich sein, den Browsercache zu leeren und die Seite neu zu laden.