20140210 (Monday, 10 February 2014)¶
Endspurt vor Baustellenbesichtigung Lino Welfare:
Übersetzungen
pcsw.Client is now also a subclass of
Attestable
. This raises the question of how to differentiate, for end-users, between AttestationsByProject and AttestationsByOwner.Oder auf gut Deutsch: Wie soll ich den Unterschied zwischen
AttestationsByProject: Bescheinigungen, die direkt oder indirekt für diesen Klienten ausgestellt wurden
AttestationsByOwner: nur die direkten Bescheinigungen, deren owner ein Klient ist. Momentan sind das Lebensläufe und (eventuell… sh. nächster Punkt) eID-Info.
Soll eID-Info eine DirectPrintAction bleiben? Nein, die mache ich auch zu einer Bescheinigung. Denn dann haben wir eine Historie der gemachten Ausdrucke dieses Dokuments. Damit haben wir auch gleich einen ersten Fall einer Aktion “Bescheinigung erstellen”, die mehrere mögliche AttestationType hat, also bei der noch ein Dialogfenster nötig ist. Um das alles zu regeln und konfigurierbar zu machen, haben wir die neuen Felder primary und skip_dialog
Moved eid-content.odt to lino_welfare/config/attestations/Attestation.
Note about this and self in templates: we have two templating
machines Jinja and Appy. Jinja uses the name self
to access some
part of the renderer, and you cannot override this. But for historical
reasons there are .odt templates containing self
for representing
“the current object”.
I had to remember what I learned 2013-08-09 about LO’s conditional fields: LibreOffice doesn’t actually just insert the Then or Else part depending on the condition, but uses artificial intelligence: if the text contains two periods, then it is expected to be a database field. To avoid this magic behaviour, simply include it within quotes. Good to know…
Miscellaneous changes:
Lino didn’t yet support context-sensitive choosers with a GenericForeignKey field in the context. And Attestation.type_choice needs this. Started docs/tickets/97. The current solution (
lino.utils.instantiator.GenericForeignKeyConverter
) is rather hackerish but works for me.atelier.test.TestCase.run_simple_doctests()
didn’t notice when an invalid filename was given.