Import order flake8 plugin.
[mailman.git] / src / mailman / interfaces / preferences.py
blob4b5b490cb20dfd34d0b2d0473f1df3c66ac02f39
1 # Copyright (C) 2007-2016 by the Free Software Foundation, Inc.
3 # This file is part of GNU Mailman.
5 # GNU Mailman is free software: you can redistribute it and/or modify it under
6 # the terms of the GNU General Public License as published by the Free
7 # Software Foundation, either version 3 of the License, or (at your option)
8 # any later version.
10 # GNU Mailman is distributed in the hope that it will be useful, but WITHOUT
11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
13 # more details.
15 # You should have received a copy of the GNU General Public License along with
16 # GNU Mailman. If not, see <http://www.gnu.org/licenses/>.
18 """Interface for preferences."""
20 from mailman import public
21 from zope.interface import Attribute, Interface
24 @public
25 class IPreferences(Interface):
26 """Delivery related information."""
28 acknowledge_posts = Attribute(
29 """Send an acknowledgment for every posting?
31 This preference can be True, False, or None. True means the user is
32 sent a receipt for each message they send to the mailing list. False
33 means that no receipt is sent. None means no preference is
34 specified.""")
36 preferred_language = Attribute(
37 """The preferred language for interacting with a mailing list.
39 This is either the language code for the preferred language, or None
40 meaning no preferred language is specified.""")
42 receive_list_copy = Attribute(
43 """Should an explicit recipient receive a list copy?
45 When a list member is explicitly named in a message's recipients
46 (e.g. the To or CC headers), and this preference is True, the
47 recipient will still receive a list copy of the message. When False,
48 this list copy will be suppressed. None means no preference is
49 specified.""")
51 receive_own_postings = Attribute(
52 """Should the poster get a list copy of their own messages?
54 When this preference is True, a list copy will be sent to the poster
55 of all messages. When False, this list copy will be suppressed. None
56 means no preference is specified.""")
58 delivery_mode = Attribute(
59 """The preferred delivery mode.
61 This is an enum constant of the type DeliveryMode. It may also be
62 None which means that no preference is specified.""")
64 delivery_status = Attribute(
65 """The delivery status.
67 This is an enum constant of type DeliveryStatus. It may also be None
68 which means that no preference is specified.
70 XXX I'm not sure this is the right place to put this.""")