On 05/28/2013 04:48 AM, Graham Leggett wrote: > > Here is another small issue, when VIRTUAL_HOST_OVERVIEW was switched off to > allow all virtual lists to appear on the same host, the host_name of the list > wasn't passed in the URL. The attached patch fixes this. > > diff -u -r mailman-2.1.12/Mailman/MailList.py > mailman-2.1.12-patched/Mailman/MailList.py > --- mailman-2.1.12/Mailman/MailList.py 2013-05-28 10:39:09.333154778 +0000 > +++ mailman-2.1.12-patched/Mailman/MailList.py 2013-05-28 10:40:57.874209489 > +0000 > @@ -252,6 +252,9 @@ > def GetScriptURL(self, scriptname, absolute=0): > # Using "local_part" here works for both site wide lists on > # the default url host and for vhost lists on the vhost url host. > + if not mm_cfg.VIRTUAL_HOST_OVERVIEW: > + return Utils.ScriptURL(scriptname, self.web_page_url, absolute) > + \ > + '/' + self.local_part + '@' + self.host_name > return Utils.ScriptURL(scriptname, self.web_page_url, absolute) + \ > '/' + self.local_part >
Actually, that patch is not what's required. The comment is wrong. @hostname is required for all vhosts lists regardless of the host name in the URL or the setting of VIRTUAL_HOST_OVERVIEW. A correct patch is attached. As for the patch below, I see what you're trying to do, but I'm nervous about untended consequences of creating lists in domains not in VIRTUAL_HOSTS. I think the patch should be OK, but as I say, I'm nervous about it. I will definitely commit the attached patch, and I'll think about the other. Do you have any motivation for it other than just not wanting to bother with adding add_virtualhost() to mm_cfg.py? > diff -u -r mailman-2.1.12/bin/newlist mailman-2.1.12-patched/bin/newlist > --- mailman-2.1.12/bin/newlist 2013-05-28 10:39:09.339158852 +0000 > +++ mailman-2.1.12-patched/bin/newlist 2013-05-28 10:21:04.730131451 +0000 > @@ -165,7 +165,7 @@ > emailhost = domain > elif emailhost != domain: > usage(1, C_('You cannot use an email host different from the > domain part of the list name.')) > - if not mm_cfg.VIRTUAL_HOSTS.has_key(urlhost): > + if mm_cfg.VIRTUAL_HOST_OVERVIEW and not > mm_cfg.VIRTUAL_HOSTS.has_key(urlhost): > _urlhost = repr(urlhost) > _emailhost = repr(emailhost) > usage(1, C_('The Mailman config file lacks a line mapping > urlhost to emailhost:\n add_virtualhost(%(_urlhost)s,\n > %(_emailhost)s)')) -- Mark Sapiro <m...@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
--- ../vhost/Mailman/MailList.py 2013-05-25 16:00:50.930182026 -0700 +++ Mailman/MailList.py 2013-05-28 16:26:36.696692828 -0700 @@ -250,10 +250,10 @@ return "%s%s@%s" % (acct, self.umbrella_member_suffix, host) def GetScriptURL(self, scriptname, absolute=0): - # Using "local_part" here works for both site wide lists on - # the default url host and for vhost lists on the vhost url host. - return Utils.ScriptURL(scriptname, self.web_page_url, absolute) + \ - '/' + self.local_part + return '%s/%s' % ( + Utils.ScriptURL(scriptname, self.web_page_url, absolute), + self.internal_name() + ) def GetOptionsURL(self, user, obscure=0, absolute=0): url = self.GetScriptURL('options', absolute)
_______________________________________________ Mailman-Developers mailing list Mailman-Developers@python.org http://mail.python.org/mailman/listinfo/mailman-developers Mailman FAQ: http://wiki.list.org/x/AgA3 Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ Unsubscribe: http://mail.python.org/mailman/options/mailman-developers/archive%40jab.org Security Policy: http://wiki.list.org/x/QIA9