CommonsBooking 1 Erweiterungen: Unterschied zwischen den Versionen
Aus Forum Freie Lastenräder
Poilu (Diskussion | Beiträge) K (→Code Export) |
Poilu (Diskussion | Beiträge) (Informationen zu Commons-Booking-Map hinzugefügt) |
||
(13 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 16: | Zeile 16: | ||
* Unklarheit, ob unsere Entwicklungen sinnvoll im CB-Core aufgehoben wären (zu spezielle Herausforderungen, Lösungen nicht verallgemeinerbar) | * Unklarheit, ob unsere Entwicklungen sinnvoll im CB-Core aufgehoben wären (zu spezielle Herausforderungen, Lösungen nicht verallgemeinerbar) | ||
== Wo sind die Erweiterungen finden und wie auf der eigenen WP-Plattform zu installieren == | == Wo sind die Erweiterungen zu finden und wie auf der eigenen WP-Plattform zu installieren == | ||
* Repository-Sammlung: https://github.com/flotte-berlin | * Repository-Sammlung: https://github.com/flotte-berlin | ||
Zeile 46: | Zeile 46: | ||
* '''Link''': https://github.com/flotte-berlin/commons-booking-codes-export | * '''Link''': https://github.com/flotte-berlin/commons-booking-codes-export | ||
[[Datei:Cb-code-export de.png|miniatur|ohne]] | |||
[[Datei:Cb-code-export de.png|miniatur|Screenshot: CB Code Export|ohne]] | |||
=== Admin Booking=== | === Admin Booking=== | ||
Zeile 66: | Zeile 67: | ||
* '''Link''': https://github.com/flotte-berlin/commons-booking-admin-booking | * '''Link''': https://github.com/flotte-berlin/commons-booking-admin-booking | ||
[[Datei:CB-Admin-Booking de.png|miniatur|ohne|Screenshot: CB Admin Booking]] | |||
=== Post Booking === | === Post Booking === | ||
[[Datei:CB-Post-Booking settings de.png|miniatur|Screenshot CB Post Booking - Einstellungen]] | |||
* '''Herausforderung''': | * '''Herausforderung''': | ||
Zeile 91: | Zeile 97: | ||
* '''Link''': https://github.com/flotte-berlin/commons-booking-post-booking | * '''Link''': https://github.com/flotte-berlin/commons-booking-post-booking | ||
[[Datei:Cb-Item-Usage-Restriction settings de.png|miniatur|Screenshot: CB Item Usage Restriction - Einstellungen]] | |||
[[Datei:CB-Item-Usage-Restriction manage de.png|miniatur|Screenshot: CB Item Usage Restriction - Management]] | |||
=== Item Usage Restriction === | === Item Usage Restriction === | ||
* '''Herausforderung''': | * '''Herausforderung''': | ||
:* Sichtbarmachung von Schäden und Nutzungseinschränkungen an Rädern für NutzerInnen | :* Sichtbarmachung von Schäden und Nutzungseinschränkungen an Rädern für NutzerInnen | ||
Zeile 120: | Zeile 130: | ||
* '''Link''': https://github.com/flotte-berlin/commons-booking-item-usage-restriction | * '''Link''': https://github.com/flotte-berlin/commons-booking-item-usage-restriction | ||
[[Datei:CB-Item-Usage-Restriction example de.png|miniatur|ohne|Screenshot: CB Item Usage Restriction - Beispiel]] | |||
=== Safe User Deletion === | === Safe User Deletion === | ||
Zeile 137: | Zeile 150: | ||
* '''Link''': https://github.com/flotte-berlin/commons-booking-safe-user-deletion | * '''Link''': https://github.com/flotte-berlin/commons-booking-safe-user-deletion | ||
=== Map === | |||
(Release: 19.08.2019) | |||
* '''Herausforderung''': | |||
:* Anzeige von Standorten mit den jeweiligen Lastenrädern auf einer interaktiven Karte, die auf Openstreetmap basiert | |||
:* Erstellung verschiedener Karten zur Präsentation vorgefilterter Lastenräder (nach Kategorien), einfache Einbindung über Shortcode | |||
:* Möglichkeit der individuellen Filterung von Lastenrädern/Standorten durch Nutzende | |||
:* Teilen von Standortinformationen zwischen mehreren Commons-Booking-Instanzen | |||
:* Link "auf Karte anzeigen" auf der Buchungsseite - Nutzung von Openstreetmap, statt Google Maps | |||
* '''Bedienung''': | |||
:* Einstellungen: Anpassung der jeweiligen Darstellung und des Verhaltens (z.B. Kartenausschnitt, Zoom, angepasste Marker, Popup, Clustern) | |||
:* verschiedene Kartentypen zur Nutzung lokaler Daten bzw. Import/Export von/zu anderen Commons-Booking-Map Installationen - ermöglicht die Aggregation von Informationen mehrerer Initiativen | |||
* '''Link''': https://github.com/flotte-berlin/commons-booking-map | |||
=== Shortcodes === | === Shortcodes === | ||
Zeile 145: | Zeile 174: | ||
:* Zielgruppe: NutzerInnen | :* Zielgruppe: NutzerInnen | ||
:* tabellarische Übersicht von buchbaren und gebuchten Tagen im Buchungsfenster (z.B. 30 Tage) nach Kategorie (Stadtgebiet) | :* tabellarische Übersicht von buchbaren und gebuchten Tagen im Buchungsfenster (z.B. 30 Tage) nach Kategorie (Stadtgebiet) | ||
<gallery> | |||
Shortcode-cb items available.png|Screenshot: Shortcode [cb_items_available] | |||
</gallery> | |||
* '''[cb_bookings_category]''': | * '''[cb_bookings_category]''': | ||
:* Zielgruppe: Partner (Rad-Eigentümer, Verleih-Standorte, Paten) | :* Zielgruppe: Partner (Rad-Eigentümer, Verleih-Standorte, Paten) | ||
:* Buchungsstatistik Übersicht - Zeiträume aller Artikel | :* Buchungsstatistik Übersicht - Zeiträume aller Artikel | ||
<gallery> | |||
Shortcode-cb bookings category 1.png|Screenshot: Shortcode [cb_bookings_category] (Tabelle) | |||
Shortcode-cb bookings category 2.png|Screenshot: Shortcode [cb_bookings_category] (Diagramm) | |||
</gallery> | |||
* '''[cb_bookings_months]''': | * '''[cb_bookings_months]''': | ||
:* Zielgruppe: Partner (Rad-Eigentümer, Verleih-Standorte, Paten) | :* Zielgruppe: Partner (Rad-Eigentümer, Verleih-Standorte, Paten) | ||
:* tabellarische & grafische Nutzungsstatististiken für Item-Kategorien (bei uns: fLotte, kommunal) und Items | :* tabellarische & grafische Nutzungsstatististiken für Item-Kategorien (bei uns: fLotte, kommunal) und Items | ||
<gallery> | |||
Shortcode-cb bookings months 1.png|Screenshot: Shortcode [cb_bookings_months] (Tabelle) | |||
Shortcode-cb bookings months 2.png|Screenshot: Shortcode [cb_bookings_months] (Diagramm) | |||
</gallery> | |||
* '''[cb_booking_codes] & [cb_booking_codes_item]''' + [bws_pdfprint display='pdf']: | * '''[cb_booking_codes] & [cb_booking_codes_item]''' + [bws_pdfprint display='pdf']: | ||
Zeile 158: | Zeile 199: | ||
:* Liste von Rädern + Seite mit Buchungscodes über 2 Monate zum Selbstausdrucken | :* Liste von Rädern + Seite mit Buchungscodes über 2 Monate zum Selbstausdrucken | ||
:* Status: bisher nicht Open Source | :* Status: bisher nicht Open Source | ||
''( im Screenshot zu [cb_booking_codes_item] ist die Tabelle gekürzt und sind d. Buchungscodes unkenntlich gemacht)'' | |||
<gallery> | |||
Shortcode-cb booking codes.png|Screenshot: Shortcode [cb_booking_codes] | |||
Shortcode-cb booking codes item.png|Screenshot: Shortcode [cb_booking_codes_item] | |||
</gallery> | |||
=== andere Erweiterungen === | === andere Erweiterungen === | ||
Zeile 166: | Zeile 212: | ||
* zusätzlicher Link auf der Seite für bestätigte Buchung zu PDF mit Ausleihformular (teilweise vorausgefüllt) - zur Vereinfachung des Ausleihvorgangs | * zusätzlicher Link auf der Seite für bestätigte Buchung zu PDF mit Ausleihformular (teilweise vorausgefüllt) - zur Vereinfachung des Ausleihvorgangs | ||
* Status: nicht Open Source | * Status: nicht Open Source | ||
<gallery> | |||
CB Buchung - Ausleihformular-Link.png|Screenshot: Link zum Ausleihformular (CB - Buchung) | |||
</gallery> | |||
==== Contract Extension ==== | ==== Contract Extension ==== |
Aktuelle Version vom 19. August 2019, 21:02 Uhr
An dieser Stelle wird die Vorstellung der Erweiterungen für Commons Booking 1 (FFL 2019), die im Rahmen des fLotte Projekts entstanden sind, dokumentiert.
Was war unsere Intention?
- Herausforderungen lösen, die sich uns gestellt haben, erstmal für den Eigenbedarf
- Verwaltungsaufwand verrringern
- wiederkehrende Aufgaben erleichtern
- Entwicklung und Nutzungsverhalten nachvollziehen und steuern
- intensivere Kommunikation mit NutzerInnen
- Anforderungen der DSGVO erfüllen
- nach Möglichkeit Lösungen so umsetzen, dass sie auch für andere Initiativen nutzbar sind
Warum Plugins zum Plugin?
- CB2 bereits in der Entwicklung, keine Feature-Updates von CB
- Kompatibilität mit minor Updates gewährleisten
- Unklarheit, ob unsere Entwicklungen sinnvoll im CB-Core aufgehoben wären (zu spezielle Herausforderungen, Lösungen nicht verallgemeinerbar)
Wo sind die Erweiterungen zu finden und wie auf der eigenen WP-Plattform zu installieren
- Repository-Sammlung: https://github.com/flotte-berlin
- Plugins:
- sind nicht ins WP-Repository eingestellt (Nachteil: kein direktes Update möglich)
- zip-Download + Wordpress: Plugins installieren, Upload, fertig!
- Shortcodes:
- im Theme hinterlegen und in functions.php inkludieren
Was haben wir entwickelt, welche Plugins sind Open Source verfügbar?
Code Export
- Herausforderung:
- es gibt zwar über "Zeiträume" die Möglichkeit Buchungscodes zu drucken, allerdings nur alle eines Zeitraums
- viele Räder, daher verlängern wir bestehende Zeiträume, um Anzahl gering zu halten (neue nur bei Standortwechsel)
- brauchten eine Möglichkeit, Codes für wählbaren Zeitabschnitt zu exportieren im CSV-Format
- Lösung:
- im Admin-Bereich "Codes", Einblendung eines Formular zum Export
- Bedienung:
- Auswahl des Items und Start- und Enddatum
- optional Spalte mit Namen des Standortes hinzufügbar
- Datei speichern-Dialog
Admin Booking
- Herausforderung:
- Buchungen von Items für andere NutzerInnen, auch jenseits des eingestellten Buchungshorizonts und der für "normale" NutzerInnen erlaubten Länge
- Beispiele: Anfragen für Events länger im Voraus, Selbstnutzung von Standorten
- Lösung:
- im Admin-Bereich "Buchungen" ein Formular 'Buchung erstellen'
- Bedienung:
- Auswahl des Artikels/Items (Lastenrad), Auswahl der NutzerIn (Dropdown mit Filter)
- Auswahl von Start- und Enddatum
- Beschränkung: wie bei normalen Buchungen muss es sich um einen Tag handeln, an dem Standort geöffnet ist
- es dürfen keine Buchungen für ausgewählten Zeitraum existieren
- es muss ein Zeitraum für den Artikel existieren
- da Buchungen für interne Zwecke mitunter keine Bestätigungsmail erfordern, optional, ob diese versendet werden soll (Checkbox)
Post Booking
- Herausforderung:
- zusätzliche Emails an NutzerInnen vor und nach dem Buchungszeitraum
- A: Buchungserinnerung - manche NutzerInnen reservieren Rad länger im Voraus, mitunter wird es dann doch nicht benötigt; Stornierung ermöglicht anderen die Nutzung (effektive Nutzung, faire Verfügbarkeit)
- B: Buchung beendet - Bitte um Feedback, Möglichkeit auf Social Media Kanäle hinzuweisen, Spendenaufforderung, Verweis auf mgl. Umfrage (s. Questionnaire) -> !!! da diese Benachrichtigung nicht mehr unmittelbar für den Ausleihprozess notwendig ist - sollte in den AGB die Zustimmung eingeholt werden (wg. DSGVO)
- Bedienung:
- Einstellungsseite für das Plugin
- A: Buchungserinnerung
- Textfelder für Betreff und Email-Inhalt (Template Tags möglich + {{HASH}} für Buchungshash)
- min. Tage nach Buchung - wieviele Tage müssen seit Erstellung d. Buchung vergangen sein (kurzfristig buchende NutzerInnen müssen nicht erinnert werden)
- Tage im Voraus - wieviele Tage vor Beginn des Buchungszeitraums soll die Benachrichtigung versendet werden
- Checkbox f. (De-)Aktivierung des Email-Versands, Auswahl einer Uhrzeit für den Versand
- B: Buchung beendet
- Textfelder für Betreff und Email-Inhalt (Template Tags möglich + {{HASH}} für Buchungshash)
- Checkbox f. (De-)Aktivierung des Email-Versands, Auswahl einer Uhrzeit für den Versand und Tag, für welchen Buchungen berücksichtigt werden
- Abhängigkeit: WP Cronjob
- Ausblick:
- evtl. Styling der Einstellungsseite verbessern
Item Usage Restriction
- Herausforderung:
- Sichtbarmachung von Schäden und Nutzungseinschränkungen an Rädern für NutzerInnen
- Informieren von direkt betroffenen NutzerInnen (mit Buchungen) und anderen relevanten Beteiligten, mühsames Heraussuchen von Kontakten vermeiden
- Blockierung weiterer Buchungen bei Nichtnutzbarkeit (Totalschaden, Wartung)
- Eingriff (& Auffasern) in Zeiträume vermeiden
- statistische Auswertung von Verfügbarkeit (vertragliche Vereinbarung 'fLotte kommunal')
- Bedienung:
- Einstellungen:
- Auswahl eines blockierenden Nutzers (Erstellung von Buchungen für diesen Nutzer bei Totalausfall > Überbuchen, Verhinderung neuer Buchungen)
- 3 Email-Templates (nach Einschränkungsart: Beschädigung / Totalausfall, Löschung der Nutzungseinschränkung)
- buchungsbezogene Template-Tags stehen zur Verfügung (+ {{HINT}})
- Option zum Einbinden des Markup in Item-Seite, auch wenn keine Einschränkungen vorhanden sind
- Erstellen:
- Artikel und Start-/Enddatum der Einschränkung wählen (ist auch in der Vergangenheit möglich, kein Email-Versand, aber hilfreich für statistische Zwecke)
- Typ der Einschränkung wählen (Totalausfall, eingeschränkt nutzbar)
- Hinweistext, der an die Email angehangen werden kann (Template-Tag {{HINT}}) und auf der Artikelseite erscheint
- optional (Komma separierte) Liste von Email-Adressen, die zusätzlich benachrichtigt werden - Eigentümer des Lastenrads etc.
- Liste:
- Artikel auswählen - Auflistung von Beschränkungen in zeitlich umgekehrter Reihenfolge
- Abhängigkeit: WP Cronjob
- Ausblick:
- verkürzen bzw. verlängern von bestehenden Nutzungsbeschränkungen, bisher nur Erstellen und Löschen möglich
Safe User Deletion
- Herausforderung:
- NutzerInnen haben Recht auf Löschung ihres Accounts (DSGVO)
- ist nicht im WP-Core integriert, Nutzung des Plugins "Delete Me"
- Problem: Verknüpfung zu (vergangenen) Buchungen gehen verloren, zukünftige Buchungen bleiben bestehen, mglw. Kontaktaufnahme bezüglich kürzlich zurückliegender Nutzung notwendig (Schadensfall o.ä.)
- Bedienung:
- Einstellungen: Anzahl der Tage, die seit letzter Buchung vergangen sein müssen, damit Löschung erfolgen kann
- "Delete me" erlaubt Löschung durch NutzerIn über Profil-Seite oder durch Admin über Benutzer-Liste - an dieser Stelle erfolgt Prüfung und ggf. Abbruch mit Rückmeldung
- bei Löschung:
- sofern Buchungen in der Vergangenheit, Anonymisierung des Accounts (Überschreiben persönlicher Daten v. User) - Verbindung zu Buchungen bleiben erhalten
- Buchungen mit Nutzungszeitraum in der Zukunft werden gelöscht, um Slots für anderen NutzerInnen frei zu geben
- Abhängigkeit: Delete me (https://de.wordpress.org/plugins/delete-me/)
Map
(Release: 19.08.2019)
- Herausforderung:
- Anzeige von Standorten mit den jeweiligen Lastenrädern auf einer interaktiven Karte, die auf Openstreetmap basiert
- Erstellung verschiedener Karten zur Präsentation vorgefilterter Lastenräder (nach Kategorien), einfache Einbindung über Shortcode
- Möglichkeit der individuellen Filterung von Lastenrädern/Standorten durch Nutzende
- Teilen von Standortinformationen zwischen mehreren Commons-Booking-Instanzen
- Link "auf Karte anzeigen" auf der Buchungsseite - Nutzung von Openstreetmap, statt Google Maps
- Bedienung:
- Einstellungen: Anpassung der jeweiligen Darstellung und des Verhaltens (z.B. Kartenausschnitt, Zoom, angepasste Marker, Popup, Clustern)
- verschiedene Kartentypen zur Nutzung lokaler Daten bzw. Import/Export von/zu anderen Commons-Booking-Map Installationen - ermöglicht die Aggregation von Informationen mehrerer Initiativen
Shortcodes
- [cb_items_available]:
- Zielgruppe: NutzerInnen
- tabellarische Übersicht von buchbaren und gebuchten Tagen im Buchungsfenster (z.B. 30 Tage) nach Kategorie (Stadtgebiet)
- [cb_bookings_category]:
- Zielgruppe: Partner (Rad-Eigentümer, Verleih-Standorte, Paten)
- Buchungsstatistik Übersicht - Zeiträume aller Artikel
- [cb_bookings_months]:
- Zielgruppe: Partner (Rad-Eigentümer, Verleih-Standorte, Paten)
- tabellarische & grafische Nutzungsstatististiken für Item-Kategorien (bei uns: fLotte, kommunal) und Items
- [cb_booking_codes] & [cb_booking_codes_item] + [bws_pdfprint display='pdf']:
- Zielgruppe: Partner (Rad-Eigentümer, Verleih-Standorte, Paten)
- Liste von Rädern + Seite mit Buchungscodes über 2 Monate zum Selbstausdrucken
- Status: bisher nicht Open Source
( im Screenshot zu [cb_booking_codes_item] ist die Tabelle gekürzt und sind d. Buchungscodes unkenntlich gemacht)
andere Erweiterungen
Ausleihformular als Link
- Zielgruppe: NutzerInnen
- zusätzlicher Link auf der Seite für bestätigte Buchung zu PDF mit Ausleihformular (teilweise vorausgefüllt) - zur Vereinfachung des Ausleihvorgangs
- Status: nicht Open Source
Contract Extension
- Herausforderung:
- Erfassung der "no show" Rate - Verknüpfung der Buchung mit der tatsächlichen Ausleihe über den Leihvertrag
- regelmäßiges Einsammeln der Verträge von den Standorten, Markieren der dazugehörigen Buchungen
- Lösung/Bedienung:
- Erweiterung der Buchungstabelle um Spalte "Vertrag" mit Checkbox zum Vorhandensein
- Status: nicht Open Source
Special Days
- Herausforderung:
- CB ermöglicht nur das Festlegen von wöchentlich wiederkehrenden Schließtagen
- unregelmäßige Schließtage von Standorten, wie z.B. gesetzl. Feiertage
- Lösung/Bedienung:
- zusätzliches wiederholbares Feld für Standorte zum Eintragen von Datum eines besonderen Schließtages
- Checkbox zur Auswahl, ob Standort an gesetzl. Feiertagen geschlossen hat (Berechnung im Hintergrund)
- auf Buchungsseiten, Einschleusen dieser Daten (und Aktualisierung des Buchungskalenders)
- Status: nicht Open Source
Kontakt für Fragen, Feedback und Fehlermeldungen
- Shortcodes: gundelfisch@flotte-berlin.de
- Plugins & Erweiterungen allgem.: thomas.richter@flotte-berlin.de