diff --git a/roundup/mailgw.py b/roundup/mailgw.py
index b67c5c9bd030d03514a1aa907bbae3752d767ff6..1664484c12081791864a7cf05eea35c6e9eb6118 100644 (file)
--- a/roundup/mailgw.py
+++ b/roundup/mailgw.py
attempts.append(classname)
if self.mailgw.default_class:
- attempts.append(self.default_class)
+ attempts.append(self.mailgw.default_class)
else:
attempts.append(self.config['MAILGW_DEFAULT_CLASS'])
class MailGW:
+ # To override the message parsing, derive your own class from
+ # parsedMessage and assign to parsed_message_class in a derived
+ # class of MailGW
+ parsed_message_class = parsedMessage
+
def __init__(self, instance, arguments=()):
self.instance = instance
self.arguments = arguments
The following code expects an opened database and a try/finally
that closes the database.
'''
- parsed_message = parsedMessage(self, message)
+ parsed_message = self.parsed_message_class(self, message)
# Filter out messages to ignore
parsed_message.handle_ignore()
try:
return db.user.create(username=trying, address=address,
realname=realname, roles=db.config.NEW_EMAIL_USER_ROLES,
- password=password.Password(password.generatePassword()),
+ password=password.Password(password.generatePassword(), config=db.config),
**user_props)
except exceptions.Reject:
return 0