diff options
| author | Barry Warsaw | 2014-03-02 16:38:32 -0500 |
|---|---|---|
| committer | Barry Warsaw | 2014-03-02 16:38:32 -0500 |
| commit | 703cd02ce0dd891d04d635513af74e24e4a9615c (patch) | |
| tree | 66d5272a0d21cec7329e803e0f20dfd7dc51696c /src/mailman/model/member.py | |
| parent | 59c7ae5b05ffd9d1663b5c8102afe56eb7458e37 (diff) | |
| download | mailman-703cd02ce0dd891d04d635513af74e24e4a9615c.tar.gz mailman-703cd02ce0dd891d04d635513af74e24e4a9615c.tar.zst mailman-703cd02ce0dd891d04d635513af74e24e4a9615c.zip | |
* Module coding style consistency.
* handle_SubscriptionEvent(): We're always guaranteed to get a language from a
member, since lookup falls back ultimately to the system preferences. So
this method can be simplified.
* Bump up code coverage for several modules.
Diffstat (limited to 'src/mailman/model/member.py')
| -rw-r--r-- | src/mailman/model/member.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/mailman/model/member.py b/src/mailman/model/member.py index 84f99d5ac..438796811 100644 --- a/src/mailman/model/member.py +++ b/src/mailman/model/member.py @@ -136,7 +136,7 @@ class Member(Model): if self._address is None else getUtility(IUserManager).get_user(self._address.email)) - def _lookup(self, preference): + def _lookup(self, preference, default=None): pref = getattr(self.preferences, preference) if pref is not None: return pref @@ -147,7 +147,9 @@ class Member(Model): pref = getattr(self.address.user.preferences, preference) if pref is not None: return pref - return getattr(system_preferences, preference) + if default is None: + return getattr(system_preferences, preference) + return default @property def acknowledge_posts(self): @@ -157,7 +159,13 @@ class Member(Model): @property def preferred_language(self): """See `IMember`.""" - return self._lookup('preferred_language') + missing = object() + language = self._lookup('preferred_language', missing) + if language is missing: + language = ((self.mailing_list and + self.mailing_list.preferred_language) or + system_preferences.preferred_language) + return language @property def receive_list_copy(self): |
