Metalab OS/Calendaring: Unterschied zwischen den Versionen

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen
(update & 1st public version)
Zeile 21: Zeile 21:
 
Veranstaltungen ab.
 
Veranstaltungen ab.
  
=== Register ===
+
=== Add Entry ===
  
Ein AC beantragt die Registrierung als Benutzer des metalab-Kalenders.
+
Ein Benutzer erstellt  eine neue Veranstaltung mit allen
Dafür füllt er ein Formular mit Kontaktdaten etc. aus. Der Antrag wird
+
dazugehörigen Daten (was, wann, wo, Beschreibung, url, ...).
zur Freischaltung des (dann registrierten) Benutzers an die Calendar
 
Admins per Email verschickt. Die Freischaltung erfolgt wiederum über
 
ein Formular.
 
  
=== Add Entry ===
+
ACs müssen eine Email-Adresse angeben, über die eine Verifizierung des
 +
Termins erfolgt (a la mailman): Durch Eingabe eines per Mail
 +
übermittelten Tokens wird der Termin bestätigt und sichergestellt, daß
 +
die Email-Adresse auch erreichbar ist.
  
Ein registered User erstellt  eine neue Veranstaltung mit allen
+
Für registered User fällt der Verifizierungsschritt.
dazugehörigen Daten (was, wann, wo, Beschreibung, url, ...)
 
  
 
=== Modify Entry ===
 
=== Modify Entry ===
  
Ein registered User verändert die Daten einer von ihm
+
Ein Benutzer verändert die Daten einer Veranstaltung. Für ACs erfolgt
erstellten Veranstaltung oder ein Calendar Admin die Daten einer
+
wiederum ein Verifizierungsschritt. Ist der Benutzer nicht der ursprüngliche
beliebigen Verantaltung.
+
Ersteller einer Veranstaltung, wird diesem eine Benachrichtigung über die
 +
Veränderung per Email geschickt.
 +
 
 +
=== Administer Entry ===
 +
 
 +
Ein Calender Admin modifiziert eine Veranstaltung direkt über das
 +
Admin-Interface von Django.
  
 
== Recurrence ==
 
== Recurrence ==
  
  1 2 3 4
+
  1 2 3
  - - d m every mth day
+
  D - n every nth day
  n - w m nday of the week every m weeks
+
  W - weekday(date) of the week every n weeks
  - n m m nth day of the month every m months
+
  M - n  monthday(date) of the month every n months
  m n m o every nth mday every oth month
+
  M m n  every mth weekday(date) every nth month
  
  1. weekday
+
  1. interval (day, week, month)
  2. monthday
+
  2. week of the month (1st, 2nd, 3rd, 4th, last)
3. interval (day, week, month)
+
  3. stride (every nth interval)
  4. stride (every nth interval)
 
  
 
Daraus Belegung im Kalender berechnen.
 
Daraus Belegung im Kalender berechnen.
Zeile 58: Zeile 62:
 
werden extra eingetragen und referenzieren die ursprüngliche
 
werden extra eingetragen und referenzieren die ursprüngliche
 
Veranstaltung.
 
Veranstaltung.
 +
 +
== Status der Implementierung ==
 +
 +
Es gibt inzwischen eine sehr rudimentäre Version: [[Bild:Metacal-0.0.1.tar.gz]]
 +
 +
=== TODOs ===
 +
 +
* Editieren von Events: derzeit broken, denn die Validators für's Modell verlangen Werte, die zwar für jedes Event definiert, aber nicht änderbar sein müssen.
 +
* Benutzbarkeit: Navigationselemente etc. (derzeit heißt es URLs tippen!)
 +
* Templates überarbeiten: da ist sehr viel Redundanz drin
 +
* Token per Email für Aktionen von ACs
 +
* Daten angemeldeter Benutzer nutzen
 +
* Übersetzungen: Sprachakuderwelsch entwirren, deutsche & englische Texte erstellen
 +
* Modell weiter verfeinern

Version vom 25. Januar 2007, 21:23 Uhr

Use Cases

Rollen:

  • AC: ein beliebiger unauthentifizierter Benutzer
  • registered User: ein authentifizierter Benutzer
  • Calendar Admin: ein authentifizierter Benutzer mit administrativen Privilegien

View Calendar

Ein AC sieht sich mittels eines Browsers eine HTML-Repräsentation des metalab-Kalenders an. Der AC kann zwischen den Ansichten Tag, Woche, Monat, nächste n Tage und Liste der nächsten n Veranstaltungen wechseln. Zudem kann die Ansicht auf bestimmte Räume eingeschränkt werden. Der AC kann einzelne Veranstaltungen anwählen, um die dazugehörigen Details (was, wann, wo, Beschreibung, url, ...) einzusehen.

Retreive Feed

Ein AC ruft über http einen RSS (oder Atom?) Feed der nächsten n Veranstaltungen ab.

Add Entry

Ein Benutzer erstellt eine neue Veranstaltung mit allen dazugehörigen Daten (was, wann, wo, Beschreibung, url, ...).

ACs müssen eine Email-Adresse angeben, über die eine Verifizierung des Termins erfolgt (a la mailman): Durch Eingabe eines per Mail übermittelten Tokens wird der Termin bestätigt und sichergestellt, daß die Email-Adresse auch erreichbar ist.

Für registered User fällt der Verifizierungsschritt.

Modify Entry

Ein Benutzer verändert die Daten einer Veranstaltung. Für ACs erfolgt wiederum ein Verifizierungsschritt. Ist der Benutzer nicht der ursprüngliche Ersteller einer Veranstaltung, wird diesem eine Benachrichtigung über die Veränderung per Email geschickt.

Administer Entry

Ein Calender Admin modifiziert eine Veranstaltung direkt über das Admin-Interface von Django.

Recurrence

1 2 3
D - n  every nth day
W - n  weekday(date) of the week every n weeks
M - n  monthday(date) of the month every n months
M m n  every mth weekday(date) every nth month
1. interval (day, week, month)
2. week of the month (1st, 2nd, 3rd, 4th, last)
3. stride (every nth interval)

Daraus Belegung im Kalender berechnen.

Veränderung einzelner Termine einer sich wiederholenden Veranstaltung: werden extra eingetragen und referenzieren die ursprüngliche Veranstaltung.

Status der Implementierung

Es gibt inzwischen eine sehr rudimentäre Version: Datei:Metacal-0.0.1.tar.gz

TODOs

  • Editieren von Events: derzeit broken, denn die Validators für's Modell verlangen Werte, die zwar für jedes Event definiert, aber nicht änderbar sein müssen.
  • Benutzbarkeit: Navigationselemente etc. (derzeit heißt es URLs tippen!)
  • Templates überarbeiten: da ist sehr viel Redundanz drin
  • Token per Email für Aktionen von ACs
  • Daten angemeldeter Benutzer nutzen
  • Übersetzungen: Sprachakuderwelsch entwirren, deutsche & englische Texte erstellen
  • Modell weiter verfeinern