Client
Der GBD WebSuite Client ist eine Javascript Browser-Anwendung, die dafür konzipiert ist, zusammen mit dem GBD WebSuite Server zu arbeiten.
HTML Vorlage
Um Ihr Projekt in einem Webbrowser anzuzeigen, benötigen Sie eine HTML-Seite, die den Client und einige Projekt Informationen enthalten sollte, damit der Client weiß, welches Projekt geladen werden soll. Auf der Seite muss sich ein div-Element mit dem Klassennamen gws
befinden. Hier wird die Client-Benutzeroberfläche geladen. Ansonsten können Sie Ihre Seite frei gestalten.
Der Client selbst besteht aus drei Dateien:
gws-light-<VERSION>.css
- Style Dateigws-vendor-<VERSION>.js
- Javascript Bibliothekgws-client-<VERSION>.js
- Javascript Anwendung
Diese Dateien sind im GWS Server unter einer speziellen Adresse /gws-client
erreichbar. Sie brauchen diese Adresse in Ihrer Konfiguration nicht explizit einzurichten.
Hier ist ein Vorlage der Client-Seite, die Sie nach Ihren Bedürfnissen anpassen können:
<!DOCTYPE html>
<html>
<head>
<!-- Charset muss immer UTF8 sein! -->
<meta charset="UTF-8"/>
<!-- Für Mobilgeräte soll die Anwendung nicht skalierbar sein -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0"/>
<!-- CSS vom GWS Client -->
<link rel="stylesheet" href="/gws-client/gws-light-6.1.1.css" type="text/css">
<!-- "gws" Element kann frei positioniert werden, wir empfehlen "postion:absolute" bzw "fixed" -->
<style>
.gws {
position: fixed;
left: 10px;
top: 20px;
right: 40px;
bottom: 50px;
}
</style>
<!-- Hier muss die ID von Ihrem Projekt stehen, sowie die Sprache von Client Meldungen -->
<script>
GWS_PROJECT_UID = "meinprojekt";
GWS_LOCALE = "de_DE";
</script>
</head>
<body>
<!-- In diesem Element wird der Client geladen. -->
<div class="gws"></div>
<!-- Javascript vom GWS Client -->
<script src="/gws-client/gws-vendor-6.1.1.js"></script>
<script src="/gws-client/gws-client-6.1.1.js"></script>
</body>
</html>
Um diese Vorlage für mehrere Projekte zu verwenden, setzen Sie den GWS_PROJECT_UID
auf einen dynamischen Wert:
GWS_PROJECT_UID = "{project.uid}";
und speichern Sie die Vorlage als z.B. “project.html” in Ihren assets
Ordner. Dann kann diese Seit im Browser wie folgt aufgerufen werden:
http://example.com/_?cmd=assetHttpGetPath&path=project.html&projectUid=meinprojekt
Diese URL kann auch “schöner” gemacht werden, indem Sie diese Rewrite-Regel verwenden:
{
"match": "^/project/([a-z][a-z0-9_]*)",
"target": "_?cmd=assetHttpGetPath&path=project.html&projectUid=$1"
}
Dann heißt die URL einfach
http://example.com/project/meinprojekt
Für mehr Info s. Web Server.
UI-Konfiguration
Referenz: gws.common.client.Config
Jedes GBD WebSuite Projekt, wie auch die Hauptanwendung, kann ein client
Objekt enthalten, das verschiedene Optionen für den Client und dessen UI-Layout beschreibt, so dass Sie bestimmte UI-Elemente pro Projekt ein- und ausschalten können. Dieses Objekt besteht aus zwei Teilen: options
(generelle Optionen) und elements
(Auflistung der UI Elemente).
options
Die Optionen sind wie folgt:
Option |
Typ |
Bedeutung |
Beispielwert |
---|---|---|---|
|
bool |
untere Leiste (“Infobar”) ist sichtbar |
|
|
str |
actives Icon in der linken Leiste (“Sidebar”) |
|
|
bool |
Sidebar ursprünglich sichtbar |
|
|
int |
Anzahl von sichtbaren Icons in der Sidebar |
|
|
int |
Anzahl von sichtbaren Icons in der Toolbar |
|
elements
Jede Element Konfiguration enthält einen Tag-Namen sowie optional eine Zugriffsberechtigung, sodass die UI Elemente nur für bestimmte Nutzer erscheinen.
Es werden folgende Element-Tags unterstützt:
Tag |
Bedeutung |
untere Leiste: |
|
|
Link “Über uns” |
|
Link “Hilfe” |
|
Link “Startseite” |
|
Ladeanzeige |
|
Positionsanzeige |
|
Rotationsanzeige |
|
Maßstabsanzeige |
|
flexibler Abstandhalter |
linke Leiste: |
|
|
Flurstücksuche |
|
Markieren und Messen |
|
Bauleitplanung (s. Bauleitplanung) |
|
Bemaßung (s. Bemaßung) |
|
Digitalisierung (s. Digitalisierung) |
|
Layerbaum |
|
Projektübersicht |
|
Suche |
|
Auswahl von Objekten |
|
Login und Logout |
Werkzeuge: |
|
|
Markieren und Messen |
|
Bemaßung |
|
DPro-Con aufurfen (s. D-ProCon Integration) |
|
GekoS aufrufen (s. GekoS Integration) |
|
Objekt-Identifizierung mit Klicken |
|
Objekt-Identifizierung mit Ziehen |
|
räumliche Suche |
|
aktueller Standout |
|
|
|
Objekte auswählen |
|
Screenshot |
|
tabellarisches Editieren (s. Tabellarisches Editieren) |
Popup-Menüs für Feature Objekte: |
|
|
Markieren und Messen |
|
räumliche Suche |
|
im Objekt suchen |
|
Objekt auswählen |
|
zum Objekt hinzoomen |
sonstiges: |
|
|
Such-Box in rechten Bereich |
|
Attribution auf der Karte |
|
Maßstabsbalken auf der Karte |
|
Datenablage lesen (s. Datenablage) |
|
in der Datenablage speichern (s. Datenablage) |
Layer flags
Referenz: gws.common.layer.types.ClientOptions
Neben der UI-Konfiguration kann jede Kartenebene eine Reihe von booleschen Optionen haben, die dem Client mitteilen, wie diese Ebene angezeigt werden soll.
|
(bei Gruppenlayern) nur ein Unterlayer zeigen |
|
(bei Gruppenlayern) Gruppe im Layerbaum ausklappen |
|
Layer im Layerbaum zeigen |
|
Layer im Layerbaum auswählen |
|
(bei Gruppenlayern) nur die Unterlayer zeigen, nicht die Gruppe selbst |
|
Layer ist sichtbar |
CSS Anpassungen
Sie können den Stil der integrierten Funktionen anpassen, z. B. Markierungen von Suchergebnisse oder Messungen. Es gibt folgende vordefinierte CSS-Selektoren:
CSS Klasse |
Funktion |
---|---|
|
Markierung für Suchergebnisse |
|
Punkt-Markierung |
|
Linien-Markierung |
|
Polygon-Markierung |
|
Box-Markierung |
|
Kreis-Markierung |
See also
Unter Styling finden Sie eine Auflistung von CSS Eingenschaften.