20120627 ======== Action parameters ----------------- TODO: #. Was Lino noch braucht und nicht hat, ist die Möglichkeit, dass beim Klicken auf den Button einer Aktion vor deren Abschicken noch ein Dialogfenster mit Optionen kommt. Zum Beispiel eine Aktion `cal.Event.defer`, die vorher noch wissen muss, um wieviele Tage (Wochen, Monate) oder bis zu welchem Datum sie verschieben soll. #. `on_user_change` and `after_ui_save` are two answers for the same question. Can replace `after_ui_save` with `on_user_change`, but `on_user_change` should receive the complete `ar`, not only the web request. Calendar workflows ------------------ The calendar is becoming usable. Added new tables :class:`lino_xl.lib.cal.MyEventsToSchedule`, :class:`lino_xl.lib.cal.MyEventsToNotify`, :class:`lino_xl.lib.cal.EventsToNotify`, :class:`lino_xl.lib.cal.MyEventsToConfirm`, :class:`lino_xl.lib.cal.EventsToConfirm`, :class:`lino_xl.lib.cal.TasksToDo` Wrote documentation for `attr:`lino.core.actions.Action.sort_index`. Endspurt outbox --------------- DONE: - Empfänger manuell hinzufügen -> "Partner darf nicht leer sein." kommt als Warnung. (gridmode muss da aktiviert sein) - Auf "E-Mail senden" klicken muss eine sichtbare Antwort "Wurde versendet" kriegen. - Button "E-Mail senden" muss disabled sein, wenn sie verschickt wurde. - Zwei neue Datenfelder "von" und "bis" in household.Member - updated Event Types in apps.pcsw.fixtures.std. - "Hilfetexte bearbeiten" funktionierte nicht - `email_template`und `attach_to_email` fehlten im Detail von notes.NoteTypes. - Added detail window for cal.EventTypes. New slave table EventsByType. - Added detail window for cal.GuestRoles. New slave table GuestsByRole. GuestRole is now also a PrintableType (and Guest a TypedPrintable). - watch_tim hatte zwei Bugs: (1) Feld Sprache aus TIM wurde nicht übernommen und (2) nach dem Release wäre auf jeder Person ein Fehler wegen `card_type` gekommen. - outbox.Mail.project muss automatisch vorbelegt sein. Added :meth:`lino.mixins.ProjectRelated.update_owned_instance`: When a :class:`project-related ` object controls another project-related object, then the controlled automatically inherits the `project` of its controller. - E-Mail-Ausgang auf Person : hier soll man direkt eine Mail erstellen können. - Anhang manuell hinzufügen. Also irgendeine Datei vom lokalen Rechner des Benutzers. Allerdings ist das noch nicht perfekt: - Benutzer sehen irritierenderweise zwei Panels mit Anhängen - Und eigentlich sollten sie sogar noch eine dritte Möglichkeit kriegen: Bestehende Uploads auswählen und anhängen. - In den Details von Notiz und Person fehlt noch das Fenster "Postversendungen" TODO: - Fallbeispiel: Sozi macht sich Notiz nach Gespräch mit Klienten. Die soll dann per E-Mail an die Kollegen verschickt werden. - Label von Feld outbox.Mail.project sollte nicht "Person" heißen, sondern... "Akte"? Hilfetext z.B. "Der Klient, um den es geht (nicht unbedingt Empfänger)" - Label für outbox.user muss "Absender" oder "von" heißen - Label "Kontrolliert durch:" ersetzen durch "Verknüpft mit:" - Label "als E-Mail" ersetzen durch "E-Mail erstellen" WAIT: - Irritierend: in "Name" eines Mail-Empfängers steht einmal "Max MUSTERMANN" (Person) und einmal "MUSTERMANN Max" (Partner) - Historie (virtuelle Tabelle). Pending injects --------------- notes.Note ist jetzt ProjectRelated statt PartnerDocument. Das war um ein subtiles Problem mit update_owned_instance in notes.Note zu lösen, und weil notes.Note eigentlich nur aus historischen Gründen noch ein PartnerDocument war. Um das Feld "company" in apps.pcsw dennoch zu behalten, mache ich ein dd.inject_field darauf. Dabei entstand erstmals das Problem, dass notes.Note zu diesem Zeitpunkt irgendwie noch nicht existiert: resolve_model gibt UnresolvedModel zurück.