[Mailman-Developers] unsubscriptions requiring approval

Thomas Wouters thomas@xs4all.net
Wed, 9 Feb 2000 18:31:07 +0100


On Wed, Feb 09, 2000 at 11:58:58AM +0100, Harald Meland wrote:

> I've had a go at integrating your patch into my locally hacked Mailman
> (BTW, could anyone provide me with a clue as to how I can tell
> patch(1) to understand a multiple-directory CVS diff?) -- and noticed
> that you seemingly have forgotten to add a DEFAULT_UNSUBSCRIBE_POLICY
> to Defaults.py.in, and that the comments in some places bore clear
> signs of a bit hasty cut-and-paste work :)


DISCLAIMER:
It was late at night, i wanted to move a few of our lists to mailman the
following day, and we have some peculiar requirements ;)

We have basically two lists, an 'admin' list and a 'garbage' list. The
'admin' list is the entire company, and we dont want people to unsubscribe
themselves without aproval. The garbage list is for discussions, jokes,
anecdotes, etc. We want to allow people to subscribe and unsubscribe at
will, IF they are on the 'admin' list. We didn't have this in Majordomo, so
it's no big deal that they we have it now. It's on my wishlist tho ;) In the
mean time, we set subscribe policy on the garbage list to 'approve'.

We also want both these lists to be 'closed' (postings by members only) BUT
a lot of our employees have multiple email adresses, and we want to allow
them to post using all of them. So, in majordomo, we had a seperate file,
included in _both_ lists as 'allow posts from this list of addresses', so we
had to include only a single file. In Mailman, we'd have to paste the entire
file (which is currently 495 entries long, and getting longer and longer ;)
into the webform, and update them both.

So instead I hacked the same behaviour into mailman -- include a seperate
file. Not intended for general use, which is why I didn't post it here, and
it has _no_ security, but it works ;) I'm thinking of changing it to make it
allow postings from users on different lists as well, but I didn't want to
spend my time figuring out if I can safely instantiate one or more MailList
instances inside Hold.py's process().

Another hack I added this morning, right before I switched the first list
(the 'garbage' list) to Mailman, is to allow people to read the (private)
archives for the list _only_ when they connect from a specific network. This
is a _really_ dirty hack and i'm ashamed now that I look back at it, but
hey, it was 7:45am after a party and 5 hours of sleep. It's also embarassing
because i realize now that there is a much better way. (_public_ archives,
with a .htaccess in them. This is guaranteed to work, right ?)

A colleague of mine found a bug, though (the hard way ;).
MailList.MailList.DeleteMember() tries to call 'ApprovedDeleteMember()'
instead of 'self.ApprovedDeleteMember()'. No other bugs yet, but noone tried
to unsubscribe from a closed list yet, either. (other than me.)

regarding patch: you need to do 'patch -p0'. See the manpage for 'patch';
there is a not-so-subtle difference between -p0 (or -p without a number, if
it's the last option) and no -p option.

And yes, the entire patch is mostly cut&paste work. I didn't think so much
about wording and comments as I did about getting it working quickly. This
patch is in no way what I would propose to be checked in ;P

>   Your authorization is required for a mailing list unsubscription
>   request approval:
> 
> (quickly, three times in a row :) is quite a mouthful, so one might
> consider rephrasing that sentence somewhat ;)

Yeah, I agree. #TBD ;)

> My immediate comment would be:
>   How fast can we get this guy to sign the appropriate papers?

Me ? Are they the grep-able or the dead-tree kind of papers ? do I need to
fax, or do you need to fax me something ? I have access to such things here
at work, thankfully ;)

-- 
Thomas Wouters <thomas@xs4all.net>

Hi! I'm a .signature virus! copy me into your .signature file to help me spread!