20130905 (Thursday, 05 September 2013)

Optimized the detail of Reception ‣ Clients <welfare.reception.Clients>.

  • Changed the layout so that the photo is now relatively visible.
  • lino.mixins.beid.BeIdCardHolder: eid_info now adds the “Must read eID card!” message also when the card_valid_until has passed. And uses red background color when that message appears. And card_valid_until is bold when it has passed.
  • the eid card fields are no longer disabled for UserLevels.admin. (Ouch, that innocent “UserLevels.admin” inadvertently made me dive into writing documentation about Permissions though there are more urgent things to do…)
  • New table welfare.pcsw.AllClients shows all columns. Accessible for UserLevels.admin via Explorer ‣ ÖSHZ ‣ Klienten. Use this for manually modifying eid card fields which are otherwise nowhere.

The fields started and stopped of welfare.jobs.Experience and welfare.jobs.Study are no longer MonthDields but normal DateFields.

  • Gerd: “Manuelle Eingabe von Daten mit Punkt als Trenner geht nicht in den Daten von den Berufserfahrungen und Ausbildungen.” – “Stimmt, das war, weil das Monatsfelder waren. Monatsfelder sind in der Datenbankwie normale Datumsfelder abgelegt, haben aber einen speziellen DatePicker. Aber das funktionierte scheinbar nicht so richtig: in der Tabellenansicht wurden trotzdem “normale” Datumsfelder angezeigt, und beim Bearbeiten auch. Habe die vier Felder jetzt auf normale Datumsfelder gesetzt. Jetzt kann man diese Daten auf den Tag genau anzeigen. Aber im Lebenslauf wird trotzdem nur der Monat gedruckt.”

FieldError at /api/jobs/ExperiencesByOffer

Fixed a bug that occured in Experiences by Job Offer. “Cannot resolve keyword u’date_submitted’ into field. Choices are: company, country, function, id, person, remarks, sector, started, stopped, title”

In fact the tables Experiences by Job Offer and Candidatures by Job Offer simply didn’t work. Which never disturbed anybody because in Eupen they don’t use Job Offers.

  • My first use of the get_latest_by meta option and the django.db.models.query.QuerySet.latest() method.
  • New document The Jobs plugin
  • I rediscovered atelier.doctest_utf8

A specification sheet for Lino Welfare

User docs now as .pdf files

Hier ganz zwischendurch im Stress vor der Demo aus dem Ärmel geschüttelt mal was ganz Neues: erstmals kann man das komplette Benutzerhandbuch als druckbare pdf-Datei generieren.

  • New fabric command fab pdf (See atelier.fablib) builds pdf versions of the userdocs.

The first example is http://welfare-user.lino-framework.org/lino-userdocs.pdf

But there is still a lot to do:

  • write useful content
  • translations
  • Infrastruktur (more tools to efficiently generate parts of the content)

A first problem is that the translations don’t yet build. I get a LaTeX error message:

! Package inputenc Error: Unicode char \u8:ō not set up for use with LaTeX.

See the inputenc package documentation for explanation.
Type  H <return>  for immediate help.
 ...

l.4895 ...]{Tables based on Rōles de participant}
                                                  }
?

Termine erstellen

  • Wenn man versuchte, einen Termin für einen Klienten bei einem seiner Begleiter zu machen, und wenn der Begleiter kein Profil hatte, dann kam nach dem Klick auf OK scheinbar nichts (und unscheinbar ein Traceback auf dem Server). Begleiter, die kein Benutzerprofil haben, arbeiten nicht in Lino, also macht es keinen Sinn, für die einen Termin in Lino zu erstellen. Für diese Begleiter zeigt Lino deshalb jetzt keinen Button “Termin” mehr an.
  • Neuer Button “Termin mit…” in welfare.reception.Clients. Den braucht man um einen Termin bei einem Agenten zu erstellen, der nicht Begleiter dieses Klienten ist.

Printing a budget

Fixed two bugs in the template used to print a welfare.debts.Budget:

  • bei einem Budgetausdruck (Nr. 73) kommt am Ende der Seite “settings.SITE.site_version()”
  • und am Anfang beim Haushalt “actor.household.get_address(‘, ‘)”

Seeing the Calendar Panel of another user

Uff! I think I fixed a difficult bug. Until now this possibility was accessed only through the “Act as…” menu command which sets the global variable Lino.subst_user. But the “Appointment” actions in each row of welfare.reception.CoachingsByClient use it differently, they open the Lino.CalendarAppPanel with su as base parameter. And Lino.CalendarAppPanel wasn’t yet designed to handle this situation. Now it seems to work.

Since this kind of changes can cause bugs which are being reported only weeks later, I try to explain what I did: The panel called event_store.load() in its afterRender listener. I had to remove this because it caused duplicate load calls. Instead of this I replaced the reload() cal in refresh() by load() so that it works also on first invocation.