summaryrefslogtreecommitdiff
path: root/Mailman/MailList.py
diff options
context:
space:
mode:
authorcotton1998-11-13 15:33:28 +0000
committercotton1998-11-13 15:33:28 +0000
commit0f2de82859c3b4634ff9582e4f104464d96655de (patch)
tree63f234b6e9b1a6d734298da2c026e15a48273122 /Mailman/MailList.py
parent69ea72e446c21e791696ee974741350c00a7d768 (diff)
downloadmailman-0f2de82859c3b4634ff9582e4f104464d96655de.tar.gz
mailman-0f2de82859c3b4634ff9582e4f104464d96655de.tar.zst
mailman-0f2de82859c3b4634ff9582e4f104464d96655de.zip
Made it so that the moderated variable is sensitive to whether or not
there are posters listed. I realized that it was impossible to set up a list so that only people listed in posters can post when i tried to set up a list this way! scott
Diffstat (limited to 'Mailman/MailList.py')
-rw-r--r--Mailman/MailList.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/Mailman/MailList.py b/Mailman/MailList.py
index c9d0d6a5b..db31f16fe 100644
--- a/Mailman/MailList.py
+++ b/Mailman/MailList.py
@@ -937,11 +937,20 @@ class MailList(MailCommandHandler, HTMLFormatter, Deliverer, ListAdmin,
self.AddRequest('post', Utils.SnarfMessage(msg),
Errors.FORBIDDEN_SENDER_MSG,
msg.getheader('subject'))
- if self.moderated:
+ if self.moderated and not len(self.posters):
self.AddRequest('post', Utils.SnarfMessage(msg),
Errors.MODERATED_LIST_MSG,
- msg.getheader('subject'))
- if len(self.posters):
+ msg.getheader('subject'))
+ elif self.moderated and len(self.posters):
+ addrs = Utils.FindMatchingAddresses(sender, self.posters)
+ if not len(addrs):
+ self.AddRequest('post', Utils.SnarfMessage(msg),
+ Errors.MODERATED_LIST_MSG,
+ msg.getheader('subject'))
+ #
+ # not moderated
+ #
+ elif len(self.posters):
addrs = Utils.FindMatchingAddresses(sender, self.posters)
if not len(addrs):
if self.member_posting_only: