diff options
author | Mark Sapiro <mark@msapiro.net> | 2016-04-19 15:53:54 -0700 |
---|---|---|
committer | Mark Sapiro <mark@msapiro.net> | 2016-04-19 15:53:54 -0700 |
commit | a70edc26ac027f6278a38bbe10c921b962adbf7a (patch) | |
tree | 3013f072c05d5cd9ca324e5aa1dea28dfd8c72cb /Mailman/Handlers | |
parent | d90dcb330021a6bac598e7a032da77e4b1559034 (diff) | |
download | mailman2-a70edc26ac027f6278a38bbe10c921b962adbf7a.tar.gz mailman2-a70edc26ac027f6278a38bbe10c921b962adbf7a.tar.xz mailman2-a70edc26ac027f6278a38bbe10c921b962adbf7a.zip |
Use nonmember_rejection_notice as the default reject reason for a held
nonmember post.
Diffstat (limited to 'Mailman/Handlers')
-rw-r--r-- | Mailman/Handlers/Hold.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/Mailman/Handlers/Hold.py b/Mailman/Handlers/Hold.py index 5452d06a..dcc7f963 100644 --- a/Mailman/Handlers/Hold.py +++ b/Mailman/Handlers/Hold.py @@ -1,4 +1,4 @@ -# Copyright (C) 1998-2011 by the Free Software Foundation, Inc. +# Copyright (C) 1998-2016 by the Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -28,6 +28,7 @@ Finally an exception is raised to let the pipeline machinery know that further message handling should stop. """ +import re import email from email.MIMEText import MIMEText from email.MIMEMessage import MIMEMessage @@ -220,7 +221,14 @@ def hold_for_approval(mlist, msg, msgdata, exc): # We need to send both the reason and the rejection notice through the # translator again, because of the games we play above reason = Utils.wrap(exc.reason_notice()) - msgdata['rejection_notice'] = Utils.wrap(exc.rejection_notice(mlist)) + if isinstance(exc, NonMemberPost) and mlist.nonmember_rejection_notice: + msgdata['rejection_notice'] = Utils.wrap(re.sub( + '%(listowner)s', + mlist.GetOwnerEmail(), + mlist.nonmember_rejection_notice, + )) + else: + msgdata['rejection_notice'] = Utils.wrap(exc.rejection_notice(mlist)) id = mlist.HoldMessage(msg, reason, msgdata) # Now we need to craft and send a message to the list admin so they can # deal with the held message. |