Popup Aktionen
Das im Portalelement konfigurierte Popup kann über das Layer-exri um zusätzliche Aktionsschaltflächen erweitert werden. Dabei wird zwischen zwei Arten von Aktionen unterschieden:
- Standard-Popup-Aktionen sind in Terratwin fest eingebaut und stehen ohne Konfiguration zur Verfügung. Über das exri werden sie lediglich layerweise deaktiviert oder auf Gruppen eingeschränkt.
- Benutzerdefinierte Popup-Aktionen werden vollständig über das exri definiert und über
paramsparametrisiert.
Die Aktion
Zoomen aufzum Zentrieren auf das Feature ist immer aktiv und kann nicht konfiguriert werden.
Standard-Popup-Aktionen
Folgende Aktionen sind fest in Terratwin implementiert:
id | Beschreibung |
|---|---|
share | Teilen zum Erzeugen und Weitergeben eines Links auf das Feature. Layer mit noShare bleiben ausgenommen. |
print | Drucken zur Erstellung eines Berichts in DIN A4 mit aktuellem Kartenausschnitt und Informationen aus dem Popup |
table | Tabelle zum Öffnen der Attributtabelle. Zusätzlich zur Konfiguration hier muss das Werkzeug Attributtabelle für den Benutzer freigegeben sein; Layer mit noTable bleiben ausgenommen. |
exportnew@2.4.0 | Exportieren zum Export des Features |
Globale Konfiguration
Standard-Popup-Aktionen werden anwendungsweit über die Eigenschaft popup.actions der Kartenkonfiguration gesteuert. Dort lassen sich die Aktionen aktivieren, deaktivieren und auf Gruppen einschränken:
{
"popup": {
"actions": [
{ "id": "print" },
{ "id": "table" },
{ "id": "share", "enabled": true },
{ "id": "export", "authorizedGroups": ["org"] }
]
}
}
actionsist eine abschließende Liste. Nicht aufgeführte Aktionen stehen in der Anwendung gar nicht zur Verfügung und lassen sich auch über das exri nicht wieder aktivieren. Führen Sie daher alle Aktionen auf, die verfügbar sein sollen. Fehltpopup.actionsvollständig, sind alle vier Standard-Aktionen aktiv.
Überschreiben im exri
Die globale Konfiguration kann im Layer-exri layerweise überschrieben werden - in beide Richtungen. Damit lässt sich z.B. der Export für einen einzelnen Layer abschalten, obwohl er anwendungsweit aktiv ist, oder umgekehrt eine global deaktivierte Aktion für einen einzelnen Layer wieder freigeben. Voraussetzung ist, dass die Aktion in der globalen Liste popup.actions überhaupt aufgeführt ist. enabled und authorizedGroups werden dabei getrennt ausgewertet: Nur die im exri gesetzte Eigenschaft überschreibt die globale Vorgabe, die jeweils andere bleibt bestehen.
| Parameter | Beschreibung |
|---|---|
sublayer | Id des Unterlayers. Default: 0 |
id required | Zulässige Werte sind share, print, table und export |
enablednew@2.4.0 | Aktiviert bzw. deaktiviert die Aktion für diesen Layer |
authorizedGroupsnew@2.4.0 | Beschränkt die Aktion auf bestimmte Gruppen bzw. mit dem Schlüsselwort org auf angemeldete Benutzer |
{
"popupActions": [
{
"sublayer": 0,
"id": "export",
"enabled": false
},
{
"sublayer": 0,
"id": "print",
"authorizedGroups": ["org"]
}
]
}Bei Standard-Popup-Aktionen sind
title,iconundparamswirkungslos. Beschriftung, Symbol und Verhalten sind fest vorgegeben.
Benutzerdefinierte Popup-Aktionen
Layerspezifische Aktionen lassen sich ausschließlich über exri realisieren. Es können mehrere Aktionen pro Layer definiert werden. Eine Aktion muss wie folgt aufgebaut werden:
| Parameter | Beschreibung |
|---|---|
sublayer | Id des Unterlayers. Default: 0 |
id required | Name der auszuführenden Funktion. Derzeit ist toggleRaster verfügbar |
title | angezeigter Text auf der Aktionsschaltfläche |
icon | Name des Calcite Icons |
enablednew@2.4.0 | Aktiviert bzw. deaktiviert die Aktion für diesen Layer |
authorizedGroupsnew@2.4.0 | Beschränkt die Aktion auf bestimmte Gruppen bzw. mit dem Schlüsselwort org auf angemeldete Benutzer |
params | Parameter, die der auszuführenden Funktion übergeben werden sollen |
Aktion toggleRaster
Mit toggleRaster können zugehörige Bilddaten eines Objekts zur Anzeige gebracht werden. Diese Funktion ist nützlich, wenn gescannte Pläne oder
einzelne Orthofotos zu Features angezeigt werden sollen (z.B. bei Bebauungsplänen oder UAV-Befliegungen).
ArcGIS ImageService
In den params können Sie einen ArcGIS-Imageservice referenzieren und die Verbindungsfelder definieren. Der ArcGIS-Imageservice muss aus einem Mosaik-Dataset heraus veröffentlicht werden.
| Parameter | Beschreibung |
|---|---|
rasterLayer | Referenz auf einen Imageservice. Siehe Referenzieren von Portalelementen |
primaryKey | Feldname im Layer, auf den sich das exri bezieht |
foreignKey | Feldname im Mosaik-Dataset, der zum Filtern genutzt wird |
{
"popupActions": [
{
"sublayer": 0,
"id": "toggleRaster",
"title": "Rasterplan anzeigen",
"icon": "image-segmentation",
"params": {
"rasterLayer": {
"portalUrl": "https://arcgis.com",
"queryParams": {
"filter": "id:2fb1bab4122f44f4bb443c17f5732f30"
}
},
"primaryKey": "nummer",
"foreignKey": "nummer_in_fc"
}
}
]
}WMS-Dienste
Seit der Version 2.2.1 ist es ebenfalls möglich WMS-Dienste für die Bilddaten zu verwenden. Geben Sie dazu in den params den Typ wms an und definieren Sie die übrigen Parameter wie folgt:
| Parameter | Beschreibung |
|---|---|
rasterLayer.type | Erlaubter Wert ist wms |
rasterLayer.urlField | Feldname im Layer, der die WMS-URL enthält. Entfällt, wenn rasterLayer.staticUrl gesetzt ist. |
rasterLayer.staticUrlnew@2.4.0 | Feste WMS-URL für alle Features des Layers. Wird bevorzugt ausgewertet; ist sie gesetzt, wird urlField nicht mehr benötigt. |
rasterLayer.layerNameField | Feldname im Layer, der den WMS-Layernamen enthält. Wenn dieser Parameter angegeben wird, hat er Vorrang vor rasterLayer.defaultLayerName. |
rasterLayer.defaultLayerName | Standard-Name des WMS-Layers, der am Endpunkt abgerufen werden soll (wenn rasterLayer.layerNameField nicht angegeben wird). Bei Fehlen beider Parameter wird der Layername rasterplan angewandt. |
rasterLayer.filterField | Feldname im Layer, der zum Filtern genutzt wird. Der Filter wird als <Feld>='<Wert>' an den Dienst übergeben. |
rasterLayer.filterType | Name des Filterparameters, unter dem der Filter übergeben wird. Standardmäßig CQL_FILTER (GeoServer). Für andere Dienste z. B. FILTER. |
rasterLayer.titleTemplate | Titel des WMS-Layers, der im Werkzeug Themen angezeigt wird. Feldnamen in geschweiften Klammern werden durch den Attributwert des Features ersetzt, z. B. "Bebauungsplan {Name}". Wird dieser Parameter nicht angegeben, wird der Standardtitel Rasterplan: {primaryKey} verwendet. |
rasterLayer.customParameters | Schlüsselwertpaare für benutzerdefinierte Parameter, die an die URL des WMS-Dienstes angehängt werden. Siehe CustomParameters |
primaryKey | Feldname im Layer, auf den sich das exri bezieht |
{
"popupActions": [
{
"sublayer": 0,
"id": "toggleRaster",
"title": "Rasterplan anzeigen",
"icon": "image-segmentation",
"params": {
"rasterLayer": {
"type": "wms",
"urlField": "wms_url",
"defaultLayerName": "bp_planRaster",
"filterField": "Nummer",
"titleTemplate": "Bebauungsplan {Name}"
},
"primaryKey": "Nummer"
}
}
]
}