diff options
author | Mark Sapiro <mark@msapiro.net> | 2010-02-27 09:57:24 -0800 |
---|---|---|
committer | Mark Sapiro <mark@msapiro.net> | 2010-02-27 09:57:24 -0800 |
commit | 136ceb7679d51fa50504bbcdbf09c224c188e2ec (patch) | |
tree | 1cbeb6aff4ce6fbfbd10360c5b430a671155125d /Mailman | |
parent | 3eaeb16bbe2eeb039bd37a190f8ddf5d36533c57 (diff) | |
download | mailman2-136ceb7679d51fa50504bbcdbf09c224c188e2ec.tar.gz mailman2-136ceb7679d51fa50504bbcdbf09c224c188e2ec.tar.xz mailman2-136ceb7679d51fa50504bbcdbf09c224c188e2ec.zip |
Added a urlhost argument to the MailList.MailList.Create() method to
allow bin/newlist and the the create CGI to pass urlhost so the host
will be correct in the listinfo link on the emptyarchive page.
Bug #529100.
Diffstat (limited to 'Mailman')
-rw-r--r-- | Mailman/Cgi/create.py | 5 | ||||
-rw-r--r-- | Mailman/MailList.py | 11 |
2 files changed, 9 insertions, 7 deletions
diff --git a/Mailman/Cgi/create.py b/Mailman/Cgi/create.py index 7e21b981..dd862208 100644 --- a/Mailman/Cgi/create.py +++ b/Mailman/Cgi/create.py @@ -1,4 +1,4 @@ -# Copyright (C) 2001-2008 by the Free Software Foundation, Inc. +# Copyright (C) 2001-2010 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 @@ -187,7 +187,8 @@ def process_request(doc, cgidata): oldmask = os.umask(002) try: try: - mlist.Create(listname, owner, pw, langs, emailhost) + mlist.Create(listname, owner, pw, langs, emailhost, + urlhost=hostname) finally: os.umask(oldmask) except Errors.EmailAddressError, e: diff --git a/Mailman/MailList.py b/Mailman/MailList.py index 674017d1..6083fb12 100644 --- a/Mailman/MailList.py +++ b/Mailman/MailList.py @@ -1,4 +1,4 @@ -# Copyright (C) 1998-2008 by the Free Software Foundation, Inc. +# Copyright (C) 1998-2010 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 @@ -290,7 +290,8 @@ class MailList(HTMLFormatter, Deliverer, ListAdmin, continue self._gui.append(getattr(Gui, component)()) - def InitVars(self, name=None, admin='', crypted_password=''): + def InitVars(self, name=None, admin='', crypted_password='', + urlhost=None): """Assign default values - some will be overriden by stored state.""" # Non-configurable list info if name: @@ -322,7 +323,7 @@ class MailList(HTMLFormatter, Deliverer, ListAdmin, self.host_name = mm_cfg.DEFAULT_HOST_NAME or mm_cfg.DEFAULT_EMAIL_HOST self.web_page_url = ( mm_cfg.DEFAULT_URL or - mm_cfg.DEFAULT_URL_PATTERN % mm_cfg.DEFAULT_URL_HOST) + mm_cfg.DEFAULT_URL_PATTERN % (urlhost or mm_cfg.DEFAULT_URL_HOST)) self.owner = [admin] self.moderator = [] self.reply_goes_to_list = mm_cfg.DEFAULT_REPLY_GOES_TO_LIST @@ -471,7 +472,7 @@ class MailList(HTMLFormatter, Deliverer, ListAdmin, # List creation # def Create(self, name, admin, crypted_password, - langs=None, emailhost=None): + langs=None, emailhost=None, urlhost=None): assert name == name.lower(), 'List name must be all lower case.' if Utils.list_exists(name): raise Errors.MMListAlreadyExistsError, name @@ -499,7 +500,7 @@ class MailList(HTMLFormatter, Deliverer, ListAdmin, self._full_path = Site.get_listpath(name, create=1) # Don't use Lock() since that tries to load the non-existant config.pck self.__lock.lock() - self.InitVars(name, admin, crypted_password) + self.InitVars(name, admin, crypted_password, urlhost=urlhost) self.CheckValues() if langs is None: self.available_languages = [self.preferred_language] |