20120904 ======== - New method :meth:`lino.Lino.get_application_info`. - Fixed a bug that caused the list of models in `lino.About` to not open in a separate window. :meth:`lino.core.actors.Actor.disabled_actions` returns now an empty dict, but is overridden by :meth:`lino.core.dbtables.Table.disabled_actions` which tests for `get_row_permission`. - Added an argument `ar` to :meth:`lino.core.model.Model.disable_delete` and :func:`lino.utils.mti.delete_child`, because :term:`watch_tim` needs special permission to modify imported partners. It got a "Cannot delete companies and persons imported from TIM" veto when trying to convert a Person to a Company or vice-versa. Application code before:: def disable_delete(self): if settings.LINO.is_imported_partner(self): return _("Cannot delete companies and persons imported from TIM") return super(CpasPartner,self).disable_delete() ... and after:: def disable_delete(self,ar): if ar is not None and settings.LINO.is_imported_partner(self): return _("Cannot delete companies and persons imported from TIM") return super(CpasPartner,self).disable_delete(ar) Lino-Welfare ------------ The legacy database (TIM) contains duplicate clients having the same `national_id`. But we want to keep the `unique=True` requirement on `Client.national_id`. How to solve this: legacy Clients marked `is_deprecated ` now automaticaly get a suffix " (A)" appended to their `national_id`. (both watch_tim and migrate) Field `prefix` of imported Companies wasn't read-only. Bug "Imbiss Firat": watch_tim konnte seit 20120728 nicht mehr von Person nach Firma konvertieren. Also z.B. wenn man die MWSt-Nr eines Partners in TIM löschte. Dann kam die Fehlermeldung "Aus TIM importierte Partner d\xfcrfen nicht gelöscht werden."