summaryrefslogtreecommitdiff
path: root/src/mailman/interfaces/subscriptions.py
diff options
context:
space:
mode:
authorBarry Warsaw2015-03-28 16:14:10 -0400
committerBarry Warsaw2015-03-28 16:14:10 -0400
commitdb5311200674432669787ef05d019536d3011c4e (patch)
tree31ff2401763890d49ee0a2c94ec684709fc926dc /src/mailman/interfaces/subscriptions.py
parentf3d34e989155cbe82e0c2db3fc9659ff73001dbe (diff)
parenteef0c0a53ed3068a1c8def64f51479673d7c08a7 (diff)
downloadmailman-db5311200674432669787ef05d019536d3011c4e.tar.gz
mailman-db5311200674432669787ef05d019536d3011c4e.tar.zst
mailman-db5311200674432669787ef05d019536d3011c4e.zip
Diffstat (limited to 'src/mailman/interfaces/subscriptions.py')
-rw-r--r--src/mailman/interfaces/subscriptions.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mailman/interfaces/subscriptions.py b/src/mailman/interfaces/subscriptions.py
index c72a902cb..677f591ef 100644
--- a/src/mailman/interfaces/subscriptions.py
+++ b/src/mailman/interfaces/subscriptions.py
@@ -19,9 +19,12 @@
__all__ = [
'ISubscriptionService',
+ 'RequestRecord',
]
+from collections import namedtuple
+
from mailman.interfaces.errors import MailmanError
from mailman.interfaces.member import DeliveryMode, MemberRole
from zope.interface import Interface
@@ -40,6 +43,19 @@ class MissingUserError(MailmanError):
+_RequestRecord = namedtuple(
+ 'RequestRecord',
+ 'email display_name delivery_mode, language')
+def RequestRecord(email, display_name='',
+ delivery_mode=DeliveryMode.regular,
+ language=None):
+ if language is None:
+ from mailman.core.constants import system_preferences
+ language = system_preferences.preferred_language
+ return _RequestRecord(email, display_name, delivery_mode, language)
+
+
+
class ISubscriptionService(Interface):
"""General Subscription services."""