On 01/14/2015 04:11 PM, Chris Nulk wrote: > > 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.
Correct. > 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. I would replace the elif clause with elif (wtype == mm_cfg.EmailListEx and addr.startswith('@') and (property.endswith('_these_nonmembers') or property == 'my_attribute') indented to the proper level. DRY -- Mark Sapiro <m...@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan ------------------------------------------------------ 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