[Mailman-Users] How to add a new Mailman CGI program?

Jerold Stratton jerry at sandiego.edu
Mon Dec 29 22:39:29 CET 2003


On Monday, December 29, 2003, at 12:38  PM, Christoph Seiler wrote:
> I would like to add a new CGI program for Mailman, because the 
> existing scripts do not fit my needs. Unfortunately I'm not too 
> familiar with Mailman and this seems to be a bit complicated. So I 
> would appreciate any help.
>

I recently needed to add a 'list all members' function for our list 
admins; I elected to modify the python scripts in the Mailman directory:

1. In Mailman/Gui/Membership.py:
I added:
	('listall', _('List All')),
to the function GetConfigSubCategories(self, category)

This had the effect of adding a new option to the 'Membership 
Management' section of Mailman, called 'List All' with an internal code 
of 'listall'.

2. In Mailman/Cgi/admin.py line 488, I changed:
         if subcat not in ('list', 'add', 'remove'):
to:
         if subcat not in ('list', 'add', 'remove', 'listall'):

This had the effect of not defaulting to the wrong thing when the user 
requests 'listall'.

The rest of it may not help you, as the functionality I needed was 
already there, I just needed access to it. I changed line 814 from:
     if len(all) < chunksz:
to:
     if len(all) < chunksz  or subcat == 'listall':

Presumably I could have just as well have added an elseif to handle 
that (as I may well do to make it *just* a list of members and not a 
form).

Jerry
jerry at sandiego.edu
http://www.sandiego.edu/~jerry/
Serra 188B/x8773
--
"The major difference between a thing that might go wrong and a thing 
that cannot possibly go wrong is that when a thing that cannot possibly 
go wrong goes wrong it usually turns out to be impossible to get at and 
repair."--Douglas Adams (Mostly Harmless)





More information about the Mailman-Users mailing list