Applikation zur georeferenzierten Meldung von Hindernissen, etc.
Go to file
2024-02-16 15:35:01 +01:00
admin Alter Version 2024-02-16 15:35:01 +01:00
ajax Alter Version 2024-02-16 15:35:01 +01:00
css Alter Version 2024-02-16 15:35:01 +01:00
fonts Alter Version 2024-02-16 15:35:01 +01:00
geojson Alter Version 2024-02-16 15:35:01 +01:00
js Alter Version 2024-02-16 15:35:01 +01:00
lib Alter Version 2024-02-16 15:35:01 +01:00
vendor Alter Version 2024-02-16 15:35:01 +01:00
.gitignore Initial commit 2024-02-16 15:28:07 +01:00
config.php Alter Version 2024-02-16 15:35:01 +01:00
datenschutz.php Alter Version 2024-02-16 15:35:01 +01:00
impressum.php Alter Version 2024-02-16 15:35:01 +01:00
index.php Alter Version 2024-02-16 15:35:01 +01:00
LICENSE Alter Version 2024-02-16 15:35:01 +01:00
liste.php Alter Version 2024-02-16 15:35:01 +01:00
README.md Alter Version 2024-02-16 15:35:01 +01:00
setup_chk.php Alter Version 2024-02-16 15:35:01 +01:00
setup.php Alter Version 2024-02-16 15:35:01 +01:00

Ideenmelder

Die Anwendung ermöglicht die Markierung von Standorten in einem begrenzten Bezirk (Stadt Hamm). Die Eingaben können beschrieben und bewertet werden. Das Hochladen von Bildern und das Kommentieren von Beiträgen ist möglich.

Die Idee zu dieser Anwendung kam durch einen Artikel in der ADFC-Zeitschrift Radwelt zu Ibbenbüren, wo Vorschläge zur Verkehrsinfrastruktur über eine Webanwendung erfasst wurden. Ich habe diese Idee übernommen und neu programmiert. Eine Demoanwendung findet man unter https://karte.hpadm.de (Login: admin Passwort: testtest)

Es sind aus meiner Sicht aber auch viele andere Anwendungsmöglichkeiten denkbar, z.B. Erfassung/Meldung von Eichenprozessionsspinnern, Markierung/Erfassung von Stromtankstellen etc..

Installation

Installation der Andwendung

Die Anwendung verfügt über ein Setup, das die Datenbank und fehlende Verzeichnisse anlegt, einen Nutzeraccount anlegt und die Anpassung der Texte ermöglicht.

Konfiguration

Nach Installation können über die Konfiguration jederzeit die Parameter angepasst werden.

Folgende Funktionalitäten können an- bzw. abgeschaltet werden:

  • Userinformationen (Altersklassen und überwiegend benutztes Verkehrsmittel)
  • Rating (Positive und negative Bewertung)
  • Hochladen von Bildern (erlaubt jpg/gif/png)
  • Kommentare

Reverse Georeferenzierung

Aus den übermittelten Geodaten wird die Adresse ermittelt. Dazu wird der Dienst https://locationiq.com verwendet. Die Adressen werden nur im Backend angezeigt, um die Auswertung der Daten zu erleichtern. Für locationiq.com muss ein Api-Key beantragt werden. Dieser ist in der Datei /lib/geocoding.php einzutragen. Für die Georeferenzierung kann auch


Versionen

Version 2.2

  • Behandlung der Eingaben mit Zeilenumbruch, Anführungszeichen und Hochkommas
  • Die Konfiguration wird jetzt in der Datenbank gespeichert.
  • Bei der Eingabe werden die Adressen georeferenziert (reverse), d.h. zum Standort wird eine Adresse ermittelt. Das ist nur im Backend sichtbar und dient zur Auswertung der Daten.
  • Im Backend können jetzt Einträge bearbeitet werden (Änderung der Beschreibung, Änderung der Mängelkategorie und Hochladen von Bildern).

Verwendete Bibliotheken

Die verwendeten Bibliotheken:

Die Speicherung erfolgt in einer SQlite-Datenbank im Verzeichnis /db. Sie wird während des Setups automtisch angelelgt. Zum Backup kann man die Datei locations.db einfach speichern.

JQuery

Javacript-Framework

Bootstrap 4

CSS-Framework

Leaflet

JS-Framwork für GIS-Anwendungen (Openstreetmap)

Leaflet-Ajax

Bibliothek, um Geojson-Datein per Ajax zu laden. Kann eigentlich durch JQuery-Ajax ersetzt werden.

Leaflet-Awesome-Markers

Ermöglicht, die Marker mit Fontawesom-Symbolen zu gestalten. die Bibliothek ist veraltet und bietet nur Zugriff auf die Fontawesome 4.x und nicht auf die neue Version 5.x.. Daher sollte sie eigentlich mal angepasst werden.

Leaflet-Snogylop

Erweiterung vom Leaflet um ein Polygon zu invertieren.

Lightbox

Zur Darstellung von Bildern

Datatable

Darstellung der Tabelle

Shapefile

Export von Shape-Files

Improvements

  • Rating durch Cookie absichern, so dass nicht zwei mal während einer Sitzung ein Maker betätigit werden kann.
  • Alert nach Rating überarbeiten (z.B. mit Bootstrap)