Erweiterungen und Plugins
AvNav bietet verschiedene Möglichkeiten die Funktionalität und das Aussehen zu erweitern und zu verändern. Neben den Möglichkeiten zur Einstellung von Anzeige-Eigenschaften direkt in der Oberfläche, der Anpassung der Anzeigen (Widgets) über Layouts und der Verbindungen und anderer Parameter des Servers gibt es dafür die folgenden Möglichkeiten:
-
Anpassung des Aussehens über CSS. AvNav ist eine Web-Anwendung und nutzt CSS für sein Aussehen. Eingebaut sind verschiedene Möglichkeiten, die dafür genutzten Regeln anzupassen:
-
Erweiterungen der Funktionalität der Anzeige über JavaScript code. Damit kann man z.B. einen neuen Formatierer hinzufügen, um einen Wert zur Anzeige in einem Widget umzuwandeln. Ausserdem kann man in weiteren Bereichen die Funktionalität erweitern (mit unterschiedlichen Schwierigkeitsgraden):
- Erstellung eigener Daten-Anzeigen (oder Erweiterung bestehender Anzeigen) für die Navigationsseite und die Dashboards (textbasiert und grafisch)
- Erstellung von Anzeigen direkt auf der Karte (Map Widgets)
- Einbindung weiterer Kartentypen. Hier können z.B. verschiedene Typen von Vektor-Karten eingebunden werden.
- Format-Funktionen für die Anzeige von Karten- oder Overlay-Informationen
- Eigene Dialoge
- Zugriff auf Online Resourcen
- ...
Dieser Code kann auf zwei Arten eingebracht werden: 1. eine user.mjs Datei im Nutzerverzeichnis 2. JavScript code in Plugins
- Erweiterungen des Servers in Python. Diese Funktion ist nur für die Linux und Windows Version verfügbar. Der Python Code muss Bestandteil eines Plugins werden.
Alle diese Möglichkeiten erfordern ein gewisses KnowHow oder eine Einarbeitung in die jeweils genutzten Sprachen. Allerdings können einfache Anpassungen oft durch Diskussion in der Community oder durch KI Hilfe erreicht werden. Zum Erzeugen oder Bearbeiten der Erweiterungen wird nur ein guter Text-Editor benötigt, spezielle Tools sind nicht notwendig. Für viele Funktionen reicht bereits der in AvNav integrierte Editor aus.
Hinweis
Wenn man Erweiterungen erstellt, wird man meist Text in verschiedenen Dateien erzeugen oder bearbeiten. AvNav hat hierfür keine eingebauten Funktionen, um diese Daten (und auch eine Historie) noch einmal zu sichern. Daher sollten diese Daten (.zB. über die verfügbaren Download-Funktionen) noch einmal an einer anderen Stelle aufbewahrt werden. Das schützt vor Verlust, falls einmal das gesamte AvNav System ausfallen sollte.
Dokumentation
Es gibt die folgenden detaillierten Dokumentationen zum Thema:
CSS
- user.css: Anpassungen des Aussehens mit nutzerspezifischem CSS code
- CSS in Layouts: CSS code direkt in Layouts
- CSS in plugins: CSS in Plugins
JavaScript
- user.mjs: Nutzereigener JavScript code für alle Displays
- JavaScript in Plugins: JavaScript code in Plugins
Plugins
- Übersicht
- Fertige Plugins: Liste bereits verfügbarer Plugins
- CSS: CSS in plugins
- JavaScript: JavaScript code in Plugins
- Server: Serverfunktionen für Plugins (mit Python)