diff --git a/__init__.py b/__init__.py index 3e602da768..e3e2c9a413 100644 --- a/__init__.py +++ b/__init__.py @@ -31,6 +31,7 @@ def register(): party.Party, party.PartyLang, party.ContactMechanism, + party.ContactMechanismLanguage, module='company', type_='model') Pool.register( company.CompanyConfig, diff --git a/party.py b/party.py index 34ef92f197..51d30163da 100644 --- a/party.py +++ b/party.py @@ -116,6 +116,17 @@ class ContactMechanism(CompanyMultiValueMixin, metaclass=PoolMeta): yield address.country.code +class ContactMechanismLanguage(CompanyValueMixin, metaclass=PoolMeta): + __name__ = 'party.contact_mechanism.language' + + @classmethod + def __setup__(cls): + super().__setup__() + cls.contact_mechanism.context['company'] = Eval('company', -1) + if 'company' not in cls.contact_mechanism.depends: + cls.contact_mechanism.depends.append('company') + + class LetterReport(CompanyReport): __name__ = 'party.letter'