Sunday, June 5, 2016

ParamsLayout on tickets.Tickets has no params_store

Hamza and I continue to receive, sporadically, series of error messages like the following:

Exception at /tickets/Ticket/39

20160329 params_layout ParamsLayout on tickets.Tickets has no params_store in <class 'lino_noi.lib.tickets.ui.Tickets'>

...

I opened #960 for this. It seems that the problem comes only when the server did not yet serve any list view. When the problem is “active”, any public request for the detail of a ticket (e.g. http://bugs.lino-framework.org/tickets/Ticket/960) causes the internal server error. To “deactivate” the problem, it is enough to do a request to the index page (http://bugs.lino-framework.org).

Which means that in some situations Lino somehow “forgets” to set that params_store at startup.

The problem is reproduceable as follows:

$ cd lino_noi/projects/bs3
$ python manage.py runserver

Then point your browser to some detail view (e.g. http://127.0.0.1:8000/tickets/Ticket/13) without previously requesting the index view http://127.0.0.1:8000.

I added a (hidden) test case in A read-only interface to Team using generic Bootstrap which reproduces the problem.

I fixed the problem by adding, lino.core.requests, an otherwise useless call to get_layout_handle:

# call get_layout_handle to make sure that
# params_store has been created:
self.actor.params_layout.get_layout_handle(
    self.renderer.plugin)

Yearly reports for ESF

Continued to work on #584.

The initial observation was that we cannot manually create a summary in SummariesByClient.

  • Converted from wkhtmltopdf to weasyprint
  • Updated esf : European Social Fund
  • New exception lino.core.exceptions.UnresolvedChoice
  • The icon for UpdateSummariesByMaster now is a lightning, not a bell.
  • Summaries.allow_create is now False.
  • SummariesByClient now has slave_grid_summary “html”.
  • Adapted some test suites

TODO: - Don’t show a sum for the years of a summary - Display a help text for each column