summaryrefslogtreecommitdiff
path: root/src/mailman/commands
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/commands')
-rw-r--r--src/mailman/commands/cli_members.py12
-rw-r--r--src/mailman/commands/docs/members.rst37
2 files changed, 30 insertions, 19 deletions
diff --git a/src/mailman/commands/cli_members.py b/src/mailman/commands/cli_members.py
index e4cad5966..ccacbeeb8 100644
--- a/src/mailman/commands/cli_members.py
+++ b/src/mailman/commands/cli_members.py
@@ -27,15 +27,14 @@ import codecs
from email.utils import formataddr, parseaddr
from mailman.app.membership import add_member
-from mailman.config import config
from mailman.core.i18n import _
from mailman.database.transaction import transactional
from mailman.interfaces.command import ICLISubCommand
from mailman.interfaces.listmanager import IListManager
from mailman.interfaces.member import (
AlreadySubscribedError, DeliveryMode, DeliveryStatus)
+from mailman.interfaces.subscriptions import RequestRecord
from operator import attrgetter
-from passlib.utils import generate_password as generate
from zope.component import getUtility
from zope.interface import implementer
@@ -193,12 +192,11 @@ class Members:
continue
# Parse the line and ensure that the values are unicodes.
display_name, email = parseaddr(line)
- # Give the user a default, user-friendly password.
- password = generate(int(config.passwords.password_length))
try:
- add_member(mlist, email, display_name, password,
- DeliveryMode.regular,
- mlist.preferred_language.code)
+ add_member(mlist,
+ RequestRecord(email, display_name,
+ DeliveryMode.regular,
+ mlist.preferred_language.code))
except AlreadySubscribedError:
# It's okay if the address is already subscribed, just
# print a warning and continue.
diff --git a/src/mailman/commands/docs/members.rst b/src/mailman/commands/docs/members.rst
index c90418181..3e5b2d09c 100644
--- a/src/mailman/commands/docs/members.rst
+++ b/src/mailman/commands/docs/members.rst
@@ -36,12 +36,16 @@ Once the mailing list add some members, they will be displayed.
>>> from mailman.interfaces.member import DeliveryMode
>>> from mailman.app.membership import add_member
- >>> add_member(mlist1, 'anne@example.com', 'Anne Person', 'xxx',
- ... DeliveryMode.regular, mlist1.preferred_language.code)
+ >>> from mailman.interfaces.subscriptions import RequestRecord
+
+ >>> add_member(mlist1, RequestRecord('anne@example.com', 'Anne Person',
+ ... DeliveryMode.regular,
+ ... mlist1.preferred_language.code))
<Member: Anne Person <anne@example.com>
on test1@example.com as MemberRole.member>
- >>> add_member(mlist1, 'bart@example.com', 'Bart Person', 'xxx',
- ... DeliveryMode.regular, mlist1.preferred_language.code)
+ >>> add_member(mlist1, RequestRecord('bart@example.com', 'Bart Person',
+ ... DeliveryMode.regular,
+ ... mlist1.preferred_language.code))
<Member: Bart Person <bart@example.com>
on test1@example.com as MemberRole.member>
@@ -52,8 +56,9 @@ Once the mailing list add some members, they will be displayed.
Members are displayed in alphabetical order based on their address.
::
- >>> add_member(mlist1, 'anne@aaaxample.com', 'Anne Person', 'xxx',
- ... DeliveryMode.regular, mlist1.preferred_language.code)
+ >>> add_member(mlist1, RequestRecord('anne@aaaxample.com', 'Anne Person',
+ ... DeliveryMode.regular,
+ ... mlist1.preferred_language.code))
<Member: Anne Person <anne@aaaxample.com>
on test1@example.com as MemberRole.member>
@@ -136,21 +141,29 @@ status is enabled...
::
>>> from mailman.interfaces.member import DeliveryStatus
+
>>> member = mlist1.members.get_member('anne@aaaxample.com')
>>> member.preferences.delivery_status = DeliveryStatus.by_moderator
>>> member = mlist1.members.get_member('bart@example.com')
>>> member.preferences.delivery_status = DeliveryStatus.by_user
+
>>> member = add_member(
- ... mlist1, 'cris@example.com', 'Cris Person', 'xxx',
- ... DeliveryMode.regular, mlist1.preferred_language.code)
+ ... mlist1,
+ ... RequestRecord('cris@example.com', 'Cris Person',
+ ... DeliveryMode.regular,
+ ... mlist1.preferred_language.code))
>>> member.preferences.delivery_status = DeliveryStatus.unknown
>>> member = add_member(
- ... mlist1, 'dave@example.com', 'Dave Person', 'xxx',
- ... DeliveryMode.regular, mlist1.preferred_language.code)
+ ... mlist1,
+ ... RequestRecord('dave@example.com', 'Dave Person',
+ ... DeliveryMode.regular,
+ ... mlist1.preferred_language.code))
>>> member.preferences.delivery_status = DeliveryStatus.enabled
>>> member = add_member(
- ... mlist1, 'elly@example.com', 'Elly Person', 'xxx',
- ... DeliveryMode.regular, mlist1.preferred_language.code)
+ ... mlist1,
+ ... RequestRecord('elly@example.com', 'Elly Person',
+ ... DeliveryMode.regular,
+ ... mlist1.preferred_language.code))
>>> member.preferences.delivery_status = DeliveryStatus.by_bounces
>>> args.nomail = 'enabled'