:date: 2018-07-20 ===================== Friday, July 20, 2018 ===================== Better summary for EntriesByCourse ================================== I continued to work on :ticket:`2441`. I call it now "intelligent" because it dynamically chooses between table and bullet-list mode depending on the number of appointments. I started to tidy up in :mod:`lino.utils.format_date` and :mod:`lino_xl.lib.cal.utils`. I introduced the new calendar entry state "missed". In :ref:`tera` this is important because a missed appointment may get invoiced while a cancelled appointment not. I added this to :ref:`specs.tera.cal`. En passant I fixed two failures in :ref:`book` caused by Hamza's recent changes (new :class:`DeviceTypeMiddleware `).