summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbhilash Raj2015-08-06 07:13:01 +0530
committerBarry Warsaw2015-08-30 10:35:26 -0400
commit91aa5536e49bdd1d374fe6b4da4696fd43ce5923 (patch)
tree2cc2214fdbdef39fd02d70effc771f958dfaacd4
parentb54227490df7367831e98add9d2f39edf21dd8b5 (diff)
downloadmailman-91aa5536e49bdd1d374fe6b4da4696fd43ce5923.tar.gz
mailman-91aa5536e49bdd1d374fe6b4da4696fd43ce5923.tar.zst
mailman-91aa5536e49bdd1d374fe6b4da4696fd43ce5923.zip
-rw-r--r--src/mailman/handlers/decorate.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/mailman/handlers/decorate.py b/src/mailman/handlers/decorate.py
index 0bdce7545..9f3e768ce 100644
--- a/src/mailman/handlers/decorate.py
+++ b/src/mailman/handlers/decorate.py
@@ -33,7 +33,7 @@ from mailman.core.i18n import _
from mailman.email.message import Message
from mailman.interfaces.handler import IHandler
from mailman.interfaces.templates import ITemplateLoader
-from mailman.interfaces.archiver import IArchiver
+from mailman.interfaces.mailinglist import IListArchiverSet
from mailman.utilities.string import expand
from urllib.error import URLError
from zope.component import getUtility
@@ -62,10 +62,14 @@ def process(mlist, msg, msgdata):
else member.address.original_email)
d['user_optionsurl'] = member.options_url
- archivers = [archiver for archiver in config.archivers
- if archiver.is_enabled]
- d['archive_url'] = ("\n").join([archiver.permalink(mlist, msg)
- for archiver in archivers])
+ archivers = IListArchiverSet(mlist).archivers
+ archive_urls = [archiver.system_archiver.permalink(mlist, msg)
+ for archiver in archivers if archiver.is_enabled]
+ archive_urls = [url for url in archive_urls if url is not None]
+ if len(archive_urls):
+ d['archive_url'] = ("\n").join(archive_urls)
+ else:
+ d['archive_url'] = None
# These strings are descriptive for the log file and shouldn't be i18n'd
d.update(msgdata.get('decoration-data', {}))
try: