Hello,

In a previous message, I mentioned my plans on upgrading/migrating a customized v2.1.9 installation to a customized v2.1.18-1 installation. I have analyzed the changes needed and made to the v2.1.18-1 installation.

I have run into a small problem. One of the customizations I did was to added an additional attribute to the sender filters similar to the *_these_nonmembers fields. On the v2.1.9 installation, my customization will accept individual email addresses, regex's, and lists. On the v2.1.18-1 installation, it only accepts the individual email addresses. I took a closer look at the code (GUIBase.py in the Gui directory) and I believe the solution lies there.

The code on the v2.1.18-1 installation has some additional checks. Specifically, the following:
                    # See if this is a context that accepts regular
                    # expressions, and that the re is legal
if wtype == mm_cfg.EmailListEx and addr.startswith('^'):
                        try:
                            re.compile(addr)
                        except re.error:
                            bad_addrs.append(addr)
elif (wtype == mm_cfg.EmailListEx and addr.startswith('@')
                            and property.endswith('_these_nonmembers')):
                        # XXX Needs to be reviewed for list@domain names.
                        # don't reference your own list
                        if addr[1:] == mlist.internal_name():
                            bad_addrs.append(addr)
                        # check for existence of list?  For now allow
                        # reference to list before creating it.
                    else:
                        bad_addrs.append(addr)

On v2.1.9, the code did not check for the 'and property.endswith('_these_nonmembers')):'.

I think that addtional check is preventing my additional attribute/property from accepting lists in the field.

Before I go off and possibly muck my installation up, can I simply duplicate the 'elif' section with the property.endswith code and replace the '_these_nonmembers' with my attribute/property?

Or is a better solution to do something list:
elif (wtype == mm_cfg.EmailListEx and addr.startswith('@') and (property.endswith('_these_nonmembers') or (property.endswith('my_attribute'))):
Would that work?

Or even more optimially, I am open to the correct solution to my issue.

Thanks for any assistance,
Chris


------------------------------------------------------
Mailman-Users mailing list Mailman-Users@python.org
https://mail.python.org/mailman/listinfo/mailman-users
Mailman FAQ: http://wiki.list.org/x/AgA3
Security Policy: http://wiki.list.org/x/QIA9
Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/
Unsubscribe: 
https://mail.python.org/mailman/options/mailman-users/archive%40jab.org

Reply via email to