Benutzer:Dan-yell/Kalender-Konzeption/technische Umsetzung: Unterschied zwischen den Versionen

Aus München Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Professionelle Lösungen''' bedeuten eine zumindest teilweise Neuprogrammierung, vermutlich in PHP. Sie sollten unter einer Creative-Commons-Linzenz veröffentlichbar sein und durch Dritte nachvollziehbare Strukturen besitzen.
;eine Benutzer-Seite


==Funktion 1: Collaborative Bearbeitung einer Termin-Datenbank==
Achtung: Diese Seite ist wenig aktuell und lässt erkennen, dass der Ersteller Unterstützung durch erfahrene Programmierer*innen braucht, um die Programmierung der verschiedenen Front- und Backends zu konkretisieren.
 
Gespräche mit Ehrenamtlichen bei [https://www.wikidata.org/wiki/Wikidata:Introduction/de Wikidata] in Berlin ergaben, dass die (Teil)-Umsetzung durch ein dort angedocktes Projekt denkbar wäre.
 
'''Neu entwickelte Lösungen''' sollten unter einer Creative-Commons-Lizenz veröffentlichbar sein und durch Dritte nachvollziehbare Strukturen besitzen.
 
==Funktion 1: Kollaborative Bearbeitung einer Termin-Datenbank==
Ziele: Transparenz und Nachvollziehbarkeit, Nutzerrechteverwaltung, bequeme Eingabe- und Importmöglichkeiten, komfortables Einfügen von [[Benutzer:Dan-yell/Kalender-Konzeption/Tags|Tags (hier mehr dazu)]].
Ziele: Transparenz und Nachvollziehbarkeit, Nutzerrechteverwaltung, bequeme Eingabe- und Importmöglichkeiten, komfortables Einfügen von [[Benutzer:Dan-yell/Kalender-Konzeption/Tags|Tags (hier mehr dazu)]].
===Professionelle Lösung===
===Neu entwickelte Lösung===
* Ein Entwurf besteht bereits im Bearbeitungssystem von http://www.Lifeguide-München.de
* Ein Entwurf besteht bereits im Bearbeitungssystem von http://www.Lifeguide-München.de
** Benutzergruppen mit unterschiedlichen Bearbeitungsrechten
** Benutzergruppen mit unterschiedlichen Bearbeitungsrechten
** Bearbeitungnen nachvollziehbar (nur Autor und Datum, nicht Änderung!)
** Bearbeitungen nachvollziehbar (hier allerdings nur Autor und Datum, nicht konkrete Änderung!)
** Wesentliche Lücken bestehen z.B. bei der Einbindung von Tags
** Wesentliche Lücken bestehen z.B. bei der Einbindung von Tags
===Lösung durch Nutzung bestehender Services===
===Lösung durch Nutzung bestehender Services===
Zeile 15: Zeile 21:
==Funktion 2: Terminzusammenstellung nach Tags==
==Funktion 2: Terminzusammenstellung nach Tags==
Ziel: Befehl zur Tag-gestützten Terminauswahl wird durch Parameter in der iCalendar-URL gegeben.
Ziel: Befehl zur Tag-gestützten Terminauswahl wird durch Parameter in der iCalendar-URL gegeben.
===Professionelle Lösung===
===Neu entwickelte Lösung===
* URL-gesteuerte Abfrage von Daten (vgl. die sofortige Generierung beliebig dimensionierter Bilder durch Mediawiki-Server: [http://upload.wikimedia.org/wikipedia/commons/thumb/2/26/Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg/315px-Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg],  [http://upload.wikimedia.org/wikipedia/commons/thumb/2/26/Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg/123px-Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg], [http://upload.wikimedia.org/wikipedia/commons/thumb/2/26/Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg/42px-Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg])
* URL-gesteuerte Abfrage von Daten (vgl. z.B. die sofortige Generierung beliebig dimensionierter Bilder durch Mediawiki-Server: [http://upload.wikimedia.org/wikipedia/commons/thumb/2/26/Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg/315px-Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg],  [http://upload.wikimedia.org/wikipedia/commons/thumb/2/26/Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg/123px-Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg], [http://upload.wikimedia.org/wikipedia/commons/thumb/2/26/Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg/42px-Frauenkirche_Munich_-_View_from_Peterskirche_Tower.jpg])
* Dateiendung (.ical, .html, .PDF) bestimmt, in welchem Format die gefilterten Terminergebnisse ausgegeben werden.
* Dateiendung (.ical, .html, .PDF) bestimmt, in welchem Format die gefilterten Terminergebnisse ausgegeben werden (das funktionierte z.B. beim leider beendeten Projekt "editgrid").
* Optional: weitere Parameter für bevorzugte Sprache, Sortierung, Zeitraum, etc.
* Optional: weitere Parameter für bevorzugte Sprache, Sortierung, Zeitraum, etc.
===(Not)Lösung durch Nutzung bestehender Services===
===(Not)Lösung durch Nutzung bestehender Services===
Zeile 27: Zeile 33:


==Funktion 3: Ausgabe als iCalendar-Feed==
==Funktion 3: Ausgabe als iCalendar-Feed==
===Professionelle Lösung===
===Neu entwickelte Lösung===
* Auswahl aus der Datenbank wird gemäß dem [https://de.wikipedia.org/wiki/ICalendar ICalendar-Syntax (.ics, .ifb, .iCal, .iFBf)] bei jedem Feed-Abruf zusammengestellt.
* Auswahl aus der Datenbank wird gemäß dem [https://de.wikipedia.org/wiki/ICalendar ICalendar-Syntax (.ics, .ifb, .iCal, .iFBf)] bei jedem Feed-Abruf zusammengestellt.
===Lösung durch Nutzung bestehender Services===
* Ausgabe / Abruf optional auch als
** CSV-Datei
** TXT-Datei in verschiedenen Ausführungen (Rahmendaten, Titel, Zusatzinfos)
** HTML-Datei in verschiedenen Ausführungen (wie bei TXT-Datei + Formate + Verlinkungen)
** In Wiki-Seiten einbindbarer content
** In gängigen CMS einbindbares Widget
===Lösung durch Nutzung bestehender Services (eher gar nicht möglich)===
* Yahoo! Pipes
* Yahoo! Pipes
* Online-Tabellenkalkulation
* Online-Tabellenkalkulation
** Das leider nicht mehr existierende Editgrid bot an, einzelne Zellen mit beliebiger Dateiendung einzeln abzurufen.
** Das leider nicht mehr existierende Editgrid bot an, einzelne Zellen mit beliebiger Dateiendung einzeln abzurufen.
** [https://developers.google.com/gdata/articles/spreadsheets_calendar_base_mashup Via ein Google Spreadsheet und einen Google calendar]
** [https://developers.google.com/gdata/articles/spreadsheets_calendar_base_mashup Via ein Google Spreadsheet und einen Google calendar]
===Herausforderungen===
* Aktualität
** Var. 1: Überarbeitung der Datenbank: Jeden Tag läuft ein script/bot darüber und ändert einen Aktualitäts-Tag oder archiviert die Veranstaltung
** Var. 2: Bei der Terminzusammenstellung werden vergangene Termine auch ohne eigenen Tag aussortiert
** Extras: Präzise (relative und/oder absolute) Zeiträume können angegeben werden, z.B. "zukünftiges und max. 7 Tage altes" oder "alles vom 15. bis 28. Juni 2015".
* Geschwindigkeit
** Wichtig, damit Bearbeitende sofort Rückmeldung über das geänderte Feed bekommen
** Wahrscheinlich kein Problem, wenn direkt auf die Datenbank zugegriffen wird


==Einbindung des iCalendar-Feeds==
==Einbindung des iCalendar-Feeds==

Aktuelle Version vom 8. Januar 2026, 15:33 Uhr

eine Benutzer-Seite

Achtung: Diese Seite ist wenig aktuell und lässt erkennen, dass der Ersteller Unterstützung durch erfahrene Programmierer*innen braucht, um die Programmierung der verschiedenen Front- und Backends zu konkretisieren.

Gespräche mit Ehrenamtlichen bei Wikidata in Berlin ergaben, dass die (Teil)-Umsetzung durch ein dort angedocktes Projekt denkbar wäre.

Neu entwickelte Lösungen sollten unter einer Creative-Commons-Lizenz veröffentlichbar sein und durch Dritte nachvollziehbare Strukturen besitzen.

Funktion 1: Kollaborative Bearbeitung einer Termin-Datenbank

Ziele: Transparenz und Nachvollziehbarkeit, Nutzerrechteverwaltung, bequeme Eingabe- und Importmöglichkeiten, komfortables Einfügen von Tags (hier mehr dazu).

Neu entwickelte Lösung

  • Ein Entwurf besteht bereits im Bearbeitungssystem von http://www.Lifeguide-München.de
    • Benutzergruppen mit unterschiedlichen Bearbeitungsrechten
    • Bearbeitungen nachvollziehbar (hier allerdings nur Autor und Datum, nicht konkrete Änderung!)
    • Wesentliche Lücken bestehen z.B. bei der Einbindung von Tags

Lösung durch Nutzung bestehender Services

  • Mediawiki mit "gesichtete Versionen"-Erweiterung
    • -> Realistische Option, stellt aber besondere Anforderung an die weiteren Schritte
    • Jeder Termin ist eine eigene Wiki-Seite

Funktion 2: Terminzusammenstellung nach Tags

Ziel: Befehl zur Tag-gestützten Terminauswahl wird durch Parameter in der iCalendar-URL gegeben.

Neu entwickelte Lösung

  • URL-gesteuerte Abfrage von Daten (vgl. z.B. die sofortige Generierung beliebig dimensionierter Bilder durch Mediawiki-Server: [1], [2], [3])
  • Dateiendung (.ical, .html, .PDF) bestimmt, in welchem Format die gefilterten Terminergebnisse ausgegeben werden (das funktionierte z.B. beim leider beendeten Projekt "editgrid").
  • Optional: weitere Parameter für bevorzugte Sprache, Sortierung, Zeitraum, etc.

(Not)Lösung durch Nutzung bestehender Services

  • Bei Nutzung von Mediawiki als Datenbank: Nutzung der Erweiterung DynamicPageList
    • Kein URL-gesteuerter Abruf, Tagauswahl müsste fest ins Wiki eingetragen werden
    • Einzige mögliche Operatoren: NOT, AND
  • Online-Tabellenkalkulation
  • Yahoo! Pipes (Hinweis: Das gibt es inzwischen nicht mehr)

Funktion 3: Ausgabe als iCalendar-Feed

Neu entwickelte Lösung

  • Auswahl aus der Datenbank wird gemäß dem ICalendar-Syntax (.ics, .ifb, .iCal, .iFBf) bei jedem Feed-Abruf zusammengestellt.
  • Ausgabe / Abruf optional auch als
    • CSV-Datei
    • TXT-Datei in verschiedenen Ausführungen (Rahmendaten, Titel, Zusatzinfos)
    • HTML-Datei in verschiedenen Ausführungen (wie bei TXT-Datei + Formate + Verlinkungen)
    • In Wiki-Seiten einbindbarer content
    • In gängigen CMS einbindbares Widget

Lösung durch Nutzung bestehender Services (eher gar nicht möglich)

Einbindung des iCalendar-Feeds

  • Drupal (Anleitungen):
Importing and exporting iCalendar (.ics) feeds is one of the strongest features of the All-in-One Event Calendar system
  • Alternativen, falls Funktion bei weiteren Systemen fehlt oder unbefriedigend ist:
http://time.ly/
  • Mit zusätzlichem Programmieraufwand: Eigener iframe, der vom Server des Feedgenerators miterzeugt wird (z.B. vgl. Funktionalität von Google calendar oder einfach nur Terminliste)

Andere interessante Vorstöße