How To's
From MapbenderWiki
DE
Auf dieser Seite sollen Prozeduren beschrieben werden, die zur Lösung einzelner Aufgaben mit dem Mapbender notwendig sind. Um nicht noch eine zusätzliche häufige Fragen & Antworten-Seite anzulegen, werden diese ebenso hier mit aufgeführt.
Wir möchten an der Erweiterung dieser Liste arbeiten und freuen uns über neue Fragen und Lösungswege, die wir an dieser Stelle veröffentlichen können. Mailen Sie uns Ihre Fragen direkt an info(at)mapbender(dot)org. Wir räumen Ihnen auch sehr gerne die Möglichkeit ein, hier selber als Autor aktiv zu werden, fragen Sie uns!.
FAQ
Wenn ich mich das erste mal anmelde, erhalte ich eine recht karge Seite mit einer Liste von Admins und GUIs - das alles verwirrt mich etwas.
- Vorab: Im Mapbender werden alle Informationen über GUIs (graphical user interfaces = grafische Oberflächen) abgebildet. Hinter jedem Menüpunkt verbirgt sich eine GUI. Das kann eine Oberfläche zur Administration des Mapbenders, zur Darstellung einer Karte oder auch beides sein.
- Die mitgelieferten Oberflächen sollen auch als Vorlage und als Anregung für den Entwurf eigener Oberflächen dienen
- Eigene Oberflächen lassen sich einerseits von Hand erstellen. Andererseits lassen sich die mitgelieferten Oberflächen auch (z.B. mit Admin2_de) kopieren und dann den eigenen Bedürfnissen anpassen. Die neu erstellten Oberflächen erscheinen danach ebenfalls in der Eingangsliste neben den mitgelieferten Oberflächen und lassen sich wie diese verwalten.
- Admin1 ist eine GUI in der alle administrativen Module aufgelistet werden - quasi eine Sammlung aller verfügbaren Administrationsmodule. Benutzer, die Zugriff auf diese GUI haben, können alles machen, auch eine Menge Unfug! Daher sollte in Produktionsumgebungen nur dann Mitarbeitern Zugriff auf die GUI Admin1 ermöglicht werden, die sich mit der Administration des Mapbenders bereits auskennen.
- Die Oberflächen Admin2_xx sind aus Admin1 abgeleitet. Mit dem Subset können WMS, GUIs, Benutzer, Gruppen und Zugriffsrechte bequem verwaltet werden.
- Bei den mit GUI bezeichneten Menüpunkten handelt es sich um Beispiel-Oberflächen für Kartendienste. Wie bereits erwähnt kann man diese aber auch als Vorlagen für die Erstellung eigener Karten-Oberflächen verwenden, indem man sie in eine neue Oberfläche kopiert und diese den eigenen Bedürfnissen anpasst.
- Bei den mit WMS bezeichneten GUIs handelt es sich nicht um GUIs im engeren Sinn. Vielmehr verbergen sich hinter diesen Menüpunkten Aufbewahrungsorte für bereits fertig konfigurierte Zugriffsmöglichkeiten auf fremde "WMS" (Web Map Services). Diese lassen sich leicht in selbst erstellte GUIs einbinden und auch als Beispiele für die Konfiguration bereits funktionerender Kartendienste verwenden.
Nach der Installation des Mapbenders möchten ich ihn einrichten und Rechte vergeben, damit nicht jeder Nutzer alles machen darf. Wie gehe ich vor?
- Über den Menüpunkt Admin2:
- root -> Benutzer & Gruppe(n) einrichten
- Neue GUIs erstellen
- Der/den Gruppe(n) Zugriff auf die GUIs erteilen
Ich möchte für eine spezielle Aufgabe eine neue GUI erstellen. Wie gehe ich vor, was benötige ich mindestens?
Ich möchte einen eigenen WMS in den Mapbender einbinden, wie gehe ich vor?
Worauf muß ich bei der Konfiguration des Mapbenders besonders achten
Ich möchte alle Buttons auf einmal verschieben
Dies lässt sich am einfachsten durch eine Änderung auf der Datenbank-Ebene durchführen:
- Mit einem geeigneten Client (mysql auf der Kommandozeile, phpmyadmin, openoffice, oder vergleichbar) die Mapbender-DB öffnen
- In der Tabelle gui_element mit folgendem SQL-Statement die Werte für die Spalte e_top anpassen, z.B.:
Update gui_elemet set e_top =e_top + 20 where fkey_gui_id='mygui' AND e_element='img';
In diesem Beispiel werden alle GUI-Buttons der GUI "mygui' um 20 Pixel nach unten verschoben.
Ich möchte eine andere Button-Collection verwenden
- siehe
Ich möchte den Farbhintergrund der Kopfzeile im Mapbender ändern (insbesondere für neuere, buntere GUIs)
Das geht prinzipiell über die Element-Variablen der GUI:
- Als Benutzer mit Zugriff auf die Funktion "EDIT GUI-ELEMENTS" einloggen (üblicherweise in GUI Admin1 oder Admin2)
- "EDIT GUI-ELEMENTS" auswählen
- Die GUI auswählen, die eine andere Hintergrundgrafik in der Kopfzeile bekommen soll
- Zwei Möglichkeiten:
- Angabe einer anderen Grafik im Bereich "layout_header_pic"
- Suchen nach einem Element header_<color> & Anklicken des Radiobuttons
- Im Bereich SRC eine neue Quelle des Hintergrundbildes angeben, abspeichern.
- Nachteil: Die Breite dieser Grafik-Elemente ist fest definiert und ändert sich nicht mit einer Änderung der Fensterbreite und führt bei einer geänderten Kartengröße zu einem uneinheitlichen Aussehen:
- Änderung des Hintergrundbildes im body
- anklicken des Radio-Buttons bei "body"
- Eintrag im Bereich Styles: background-image:url(../img/header_yellow_pk1.jpg); background-repeat:repeat-x;, abspeichern. Durch die Angabe background-repeat:repeat-x wird der Browser veranlasst, das Bild (in diesem Fall header_yellow_pk1.jpg automatisch bis zum Erreichen des rechten Randes zu vergrößern. Dadurch kann die Grafik ggf. auf eine Breite von nur einem Pixel verkleinert werden, da der Browser des Clients das auffüllen nach rechts übernimmt:
- Ggf. werden andere Elemente dadurch überflüssig, oder störend, z.B. header_<farbe>, layout_linie, .. . Diese lassen sich abschalten, indem man auf den Radio-Button vor dem entsprechenden Element klickt, dessen Element-Variablen auf der linken Seite angezeigt bekommt und dort bei ON/OFF eine 0 einträgt.
- Angabe einer anderen Grafik im Bereich "layout_header_pic"
Wie ziehe ich meine Benutzer in eine neue Mapbender-Version um
In alten Mapbender-Versionen gab es verschiedene Arten, Passworte in der Datenbank zu hinterlegen. In MySQL wurde die mysql-eigene Verschlüsselung (password()) angewendet und die PostgreSQL 7.x hatte keine md5-Verschlüsselung zur Verfügung, so dass die Passworte z.T. unverschlüsselt in der Datenbank abgelegt wurden. In den neueren Mapbender-Versionen verschlüsselt der Mapbender die Passworte.
- login.php -> setEncPw
Prio wieder auf Layerereihenfolge setzen
- die Prio kann nach dem Update durcheinander geraten sein. Über das folgende SQL kann sie wieder neu durchgezählt werden
UPDATE gui_layer g set gui_layer_priority = l.layer_pos from layer l where l.layer_id = g.fkey_layer_id and l.fkey_wms_id = 893; -- Angabe der wms_id
