20140325 (Tuesday, 25 March 2014)


In Lino Welfare we would like to change a few things about the “Uploads” of a client. An “upload”, currently, represents an external document (not generated by Lino) which the user has scanned, downloaded or received by email and wants to store in the database.

One thing is that the user interface is rather quirky (ticket docs/tickets/102, which probably will be easier to work on after docs/tickets/101), but in general we agree that these two tickets are not vitally urgent.

But one concrete user request is to also register information on things like medical attestations about handicaps for which the user has no original document, they just trust their client that it exists, or they saw the original with their eyes but did not want to scan and upload it. But they do want to get reminded when the validity of that document expires.

My first idea is to simply add blank=True for the FileField defined in the dd.Uploadable mixin. And also for the mimetype field of course.

This turns lino.modlib.uploads.models.Upload into something more general than an “uploaded file”. I’d call it a “managed external document”.

The uploads module was rather old. Now I converted it into a plugin and made it extendable. The lino.modlib.uploads is now minimalistic, and only the new module lino_welfare.modlib.uploads adds valid_until.

Study regimes

New class lino_welfare.modlib.isip.models.StudyRegimes. This is to differenciate between “Studies” (Études) and “Trainings” (Formations). The former might also be called “national” or “regular” school system.

StudiesByPerson TrainingsByPerson

Found also a document “Enseignement et Formation” by Patrice RANJARD which differentiates three levels of education:

  • Enseignement (Teaching) : changing representations, concepts
  • Formation (Training) : changing practices, methods
  • Thérapie (Therapy) : changing conducts, behaviour

Database migration:

  • new field study_regime in lino_welfare.modlib.jobs.models.Study