20120211 ======== [html] und [pdf] respektieren Grid-Einstellungen ------------------------------------------------ Wow, das ging schöner als ich gedacht hatte: [html] und [pdf] respektieren jetzt die Grid-Einstellungen: Kolonnenreihenfolge, -breiten und -sichtbarkeit. Die Kolonnenbreiten werden "so gut wie möglich" respektiert: - Im [html]-Ausdruck nimmt die Tabelle immer die ganze Bildschirmbreite ein und der Browser interpretiert die Breitenangaben unter Umständen, aber insgesamt kriegt er es einigermaßen sinnvoll hin. - Im [pdf]-Ausdruck sind momentan leider alle Kolonnen immer gleich breit. https://answers.launchpad.net/appy/+question/187455 Endspurt vor dem Release 1.3.9 ------------------------------ Under Python 2.6.6 (not Python 2.7.1), the [pdf] button to print a table produced an empty document showing only header and footer, but no table body. Rendering to .odt instead of .pdf revealed the following traceback:: Error while evaluating the expression "xhtml(table_body)" defined in the "from" part of a statement. File "", line 1, in File "/var/snapshots/appy/appy/pod/renderer.py", line 244, in renderXhtml stylesMapping, ns).run() File "/var/snapshots/appy/appy/pod/xhtml2odt.py", line 497, in run self.xhtmlParser.parse(self.xhtmlString) File "/var/snapshots/appy/appy/shared/xml_parser.py", line 193, in parse self.parser.parse(inputSource) File "/usr/lib/python2.6/xml/sax/expatreader.py", line 107, in parse xmlreader.IncrementalParser.parse(self, source) File "/usr/lib/python2.6/xml/sax/xmlreader.py", line 123, in parse self.feed(buffer) File "/usr/lib/python2.6/xml/sax/expatreader.py", line 211, in feed self._err_handler.fatalError(exc) File "/usr/lib/python2.6/xml/sax/handler.py", line 38, in fatalError raise exception : :1:1: not well-formed (invalid token) It seems that the 2.6 expatreader doesn't like Unicode strings. Replacing the line:: body = self.table2xhtml(ar).tostring() by:: body = self.table2xhtml(ar).tostring().encode('utf-8') solved the problem. Updated German translations. Added :func:`lino.apps.pcsw.migrate.migrate_from_1_3_8`. Das Feld `ganztags` funktionierte noch nicht. Außerdem machte er beim Speichern eines automatisch generierten Auswertungstermins ein paar unnütze save's. Auch das mangelnde Feedback bei längeren Aktionen ist jetzt behoben: er muss beim Ausführen einer row action (natürlich) auch die loadMask aktivieren. Der folgende Punkt ist jetzt auch endlich behoben: #. The CalendarPanel when starting, calls all Events. Should call only those of current month/week/day. Brian Moeskau hatte mir schon vor zwei Wochen auf `meine Frage `_ geantwortet, aber jetzt erst hatte ich das gesehen. :class:`lino.utils.auth.RemoteUserMiddleware` now raises an exception (instead of just logging an error) when the remote username doesn't exist in Lino's database. A person can have 2 coaches. :meth:`lino.apps.pcsw.models.Person.update_reminders` must decide for which of them to generate reminders. The rule here is "coach2 or coach1": if there are 2 coaches, then coach2 is responsible and gets the reminders. :meth:`lino.apps.pcsw.settigs.Lino.get_reminder_generators_by_user` also works according to this rule. :lino:`/releases/1.3.9`