summaryrefslogtreecommitdiff
path: root/mailman/commands
diff options
context:
space:
mode:
Diffstat (limited to 'mailman/commands')
-rw-r--r--mailman/commands/docs/join.txt20
-rw-r--r--mailman/commands/join.py5
2 files changed, 23 insertions, 2 deletions
diff --git a/mailman/commands/docs/join.txt b/mailman/commands/docs/join.txt
index 75a8ac8ea..d9163fbb6 100644
--- a/mailman/commands/docs/join.txt
+++ b/mailman/commands/docs/join.txt
@@ -58,3 +58,23 @@ The 'subscribe' command is an alias.
<BLANKLINE>
+Joining the sender
+------------------
+
+When the message has a From field, that address will be subscribed.
+
+ >>> msg = message_from_string("""\
+ ... From: Anne Person <anne@example.com>
+ ...
+ ... """)
+ >>> results = Results()
+ >>> print command.process(mlist, msg, {}, (), results)
+ ContinueProcessing.yes
+ >>> print unicode(results)
+ XXX
+
+Anne is not yet a member because she must confirm her subscription request
+first. Mailman has sent her the confirmation message.
+
+ >>> for message in smtpd.messages:
+ ... print message.as_string()
diff --git a/mailman/commands/join.py b/mailman/commands/join.py
index 1cbf394e0..bfc3435e7 100644
--- a/mailman/commands/join.py
+++ b/mailman/commands/join.py
@@ -68,8 +68,9 @@ example:
return ContinueProcessing.no
password = MakeRandomPassword()
try:
- confirm_add_member(mlist, address, realname, password,
- delivery_mode, mlist.preferred_language)
+ validate_subscription(mlist, address)
+ confirm_subscription(mlist, address, realname, password,
+ delivery_mode, mlist_preferred_language)
except XXX:
pass
print >> results, self.name, address, \