Commit 8b1f28d3 by Sylvia Pearce Committed by Bill DeRusha

Account registration and activation text string revisions

parent 35267e47
...@@ -235,7 +235,7 @@ class AuthTestCase(ContentStoreTestCase): ...@@ -235,7 +235,7 @@ class AuthTestCase(ContentStoreTestCase):
# check the the HTML has links to the right login page. Note that this is merely a content # check the the HTML has links to the right login page. Note that this is merely a content
# check and thus could be fragile should the wording change on this page # check and thus could be fragile should the wording change on this page
expected = 'You can now <a href="' + reverse('login') + '">login</a>.' expected = 'You can now <a href="' + reverse('login') + '">sign in</a>.'
self.assertIn(expected, resp.content) self.assertIn(expected, resp.content)
def test_private_pages_auth(self): def test_private_pages_auth(self):
......
...@@ -25,7 +25,7 @@ from django.core.urlresolvers import reverse ...@@ -25,7 +25,7 @@ from django.core.urlresolvers import reverse
%if user_logged_in: %if user_logged_in:
${_("Visit your {link_start}dashboard{link_end} to see your courses.").format(link_start='<a href="/">', link_end='</a>')} ${_("Visit your {link_start}dashboard{link_end} to see your courses.").format(link_start='<a href="/">', link_end='</a>')}
%else: %else:
${_("You can now {link_start}login{link_end}.").format(link_start='<a href="{url}">'.format(url=reverse('login')), link_end='</a>')} ${_("You can now {link_start}sign in{link_end}.").format(link_start='<a href="{url}">'.format(url=reverse('login')), link_end='</a>')}
%endif %endif
</p> </p>
</section> </section>
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<h1>Check your email</h1> <h1>Check your email</h1>
<p>${_("An activation link has been sent to {email}, along with instructions for activating your account.").format(email=email)}</p> <p>${_("We've sent an email message to {email} with instructions for activating your account.").format(email=email)}</p>
...@@ -75,10 +75,10 @@ class ActivationEmailTests(TestCase): ...@@ -75,10 +75,10 @@ class ActivationEmailTests(TestCase):
# Text fragments we expect in the body of an email # Text fragments we expect in the body of an email
# sent from an OpenEdX installation. # sent from an OpenEdX installation.
OPENEDX_FRAGMENTS = [ OPENEDX_FRAGMENTS = [
"Thank you for signing up for {platform}.".format(platform=settings.PLATFORM_NAME), "Thank you for creating an account with {platform}!".format(platform=settings.PLATFORM_NAME),
"http://edx.org/activate/", "http://edx.org/activate/",
( (
"if you require assistance, check the help section of the " "Check the help section of the "
"{platform} website".format(platform=settings.PLATFORM_NAME) "{platform} website".format(platform=settings.PLATFORM_NAME)
) )
] ]
...@@ -86,10 +86,10 @@ class ActivationEmailTests(TestCase): ...@@ -86,10 +86,10 @@ class ActivationEmailTests(TestCase):
# Text fragments we expect in the body of an email # Text fragments we expect in the body of an email
# sent from an EdX-controlled domain. # sent from an EdX-controlled domain.
EDX_DOMAIN_FRAGMENTS = [ EDX_DOMAIN_FRAGMENTS = [
"Thank you for signing up for {platform}".format(platform=settings.PLATFORM_NAME), "Thank you for creating an account with {platform}!".format(platform=settings.PLATFORM_NAME),
"http://edx.org/activate/", "http://edx.org/activate/",
"https://www.edx.org/contact-us", "https://www.edx.org/contact-us",
"This email was automatically sent by edx.org" "This email message was automatically sent by edx.org"
] ]
def setUp(self): def setUp(self):
......
...@@ -126,7 +126,7 @@ class LoginTest(CacheIsolationTestCase): ...@@ -126,7 +126,7 @@ class LoginTest(CacheIsolationTestCase):
# Should now be unable to login # Should now be unable to login
response, mock_audit_log = self._login_response('test@edx.org', 'test_password') response, mock_audit_log = self._login_response('test@edx.org', 'test_password')
self._assert_response(response, success=False, self._assert_response(response, success=False,
value="This account has not been activated") value="Before you sign in, you need to activate your account")
self._assert_audit_log(mock_audit_log, 'warning', [u'Login failed', u'Account not active for user']) self._assert_audit_log(mock_audit_log, 'warning', [u'Login failed', u'Account not active for user'])
@patch.dict("django.conf.settings.FEATURES", {'SQUELCH_PII_IN_LOGS': True}) @patch.dict("django.conf.settings.FEATURES", {'SQUELCH_PII_IN_LOGS': True})
...@@ -138,7 +138,7 @@ class LoginTest(CacheIsolationTestCase): ...@@ -138,7 +138,7 @@ class LoginTest(CacheIsolationTestCase):
# Should now be unable to login # Should now be unable to login
response, mock_audit_log = self._login_response('test@edx.org', 'test_password') response, mock_audit_log = self._login_response('test@edx.org', 'test_password')
self._assert_response(response, success=False, self._assert_response(response, success=False,
value="This account has not been activated") value="Before you sign in, you need to activate your account")
self._assert_audit_log(mock_audit_log, 'warning', [u'Login failed', u'Account not active for user']) self._assert_audit_log(mock_audit_log, 'warning', [u'Login failed', u'Account not active for user'])
self._assert_not_in_audit_log(mock_audit_log, 'warning', [u'test']) self._assert_not_in_audit_log(mock_audit_log, 'warning', [u'test'])
......
...@@ -1316,8 +1316,8 @@ def login_user(request, error=""): # pylint: disable=too-many-statements,unused ...@@ -1316,8 +1316,8 @@ def login_user(request, error=""): # pylint: disable=too-many-statements,unused
AUDIT_LOG.warning(u"Login failed - Account not active for user {0}, resending activation".format(username)) AUDIT_LOG.warning(u"Login failed - Account not active for user {0}, resending activation".format(username))
reactivation_email_for_user(user) reactivation_email_for_user(user)
not_activated_msg = _("This account has not been activated. We have sent another activation " not_activated_msg = _("Before you sign in, you need to activate your account. We have sent you an "
"message. Please check your email for the activation instructions.") "email message with instructions for activating your account.")
return JsonResponse({ return JsonResponse({
"success": False, "success": False,
"value": not_activated_msg, "value": not_activated_msg,
......
...@@ -361,7 +361,7 @@ class IntegrationTest(testutil.TestCase, test.TestCase): ...@@ -361,7 +361,7 @@ class IntegrationTest(testutil.TestCase, test.TestCase):
self.assertEqual(200, response.status_code) # Yes, it's a 200 even though it's a failure. self.assertEqual(200, response.status_code) # Yes, it's a 200 even though it's a failure.
payload = json.loads(response.content) payload = json.loads(response.content)
self.assertFalse(payload.get('success')) self.assertFalse(payload.get('success'))
self.assertIn('This account has not been activated', payload.get('value')) self.assertIn('Before you sign in, you need to activate your account', payload.get('value'))
def assert_json_failure_response_is_missing_social_auth(self, response): def assert_json_failure_response_is_missing_social_auth(self, response):
"""Asserts failure on /login for missing social auth looks right.""" """Asserts failure on /login for missing social auth looks right."""
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
<%! from openedx.core.djangoapps.theming.helpers import get_value as get_themed_value %> <%! from openedx.core.djangoapps.theming.helpers import get_value as get_themed_value %>
${_("Thank you for signing up for {platform_name}.").format( ${_("Thank you for creating an account with {platform_name}!").format(
platform_name=get_themed_value('PLATFORM_NAME', settings.PLATFORM_NAME) platform_name=get_themed_value('PLATFORM_NAME', settings.PLATFORM_NAME)
)} )}
${_("Change your life and start learning today by activating your " ${_("There's just one more step before you can enroll in a course: "
"{platform_name} account. Click on the link below or copy and " "you need to activate your {platform_name} account. To activate "
"paste it into your browser's address bar.").format( "your account, click the following link. If that doesn't work, "
"copy and paste the link into your browser's address bar.").format(
platform_name=get_themed_value('PLATFORM_NAME', settings.PLATFORM_NAME) platform_name=get_themed_value('PLATFORM_NAME', settings.PLATFORM_NAME)
)} )}
...@@ -15,7 +16,7 @@ ${_("Change your life and start learning today by activating your " ...@@ -15,7 +16,7 @@ ${_("Change your life and start learning today by activating your "
% else: % else:
http://${ site }/activate/${ key } http://${ site }/activate/${ key }
% endif % endif
${_("If you didn't request this, you don't need to do anything; you won't " ${_("If you didn't create an account, you don't need to do anything; you "
"receive any more email from us. Please do not reply to this e-mail; " "won't receive any more email from us. If you need assistance, please "
"if you require assistance, check the help section of the " "do not reply to this email message. Check the help section of the "
"{platform_name} website.").format(platform_name=get_themed_value('PLATFORM_NAME', settings.PLATFORM_NAME))} "{platform_name} website.").format(platform_name=get_themed_value('PLATFORM_NAME', settings.PLATFORM_NAME))}
<%! <%!
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
%> %>
...@@ -22,9 +22,9 @@ from django.core.urlresolvers import reverse ...@@ -22,9 +22,9 @@ from django.core.urlresolvers import reverse
## Disable help unless the FAQ marketing link is enabled ## Disable help unless the FAQ marketing link is enabled
% if settings.MKTG_URL_LINK_MAP.get('FAQ'): % if settings.MKTG_URL_LINK_MAP.get('FAQ'):
<h3>${_("Need Help?")}</h3> <h3>${_("Need Help?")}</h3>
<p>${_("Looking for help in logging in or with your {platform_name} account?").format(platform_name=platform_name)} <p>${_("Looking for help signing in or with your {platform_name} account?").format(platform_name=platform_name)}
<a href="${marketing_link('FAQ')}"> <a href="${marketing_link('FAQ')}">
${_("View our help section for answers to commonly asked questions.")} ${_("View our help section for answers to commonly asked questions.")}
</a></p> </a></p>
% endif % endif
</div> </div>
\ No newline at end of file
...@@ -33,16 +33,16 @@ from django.core.urlresolvers import reverse ...@@ -33,16 +33,16 @@ from django.core.urlresolvers import reverse
<div class="cta cta-nextsteps"> <div class="cta cta-nextsteps">
<h3>${_("Next Steps")}</h3> <h3>${_("Next Steps")}</h3>
<p>${_("As part of joining {platform_name}, you will receive an activation email. You must click on the activation link to complete the process. Don't see the email? Check your spam folder and mark {platform_name} emails as 'not spam'. At {platform_name}, we communicate mostly through email.").format(platform_name=platform_name)}</p> <p>${_("As part of joining {platform_name}, you will receive an email message with instructions for activating your account. Don't see the email? Check your spam folder and mark {platform_name} emails as 'not spam'. At {platform_name}, we communicate mostly through email.").format(platform_name=platform_name)}</p>
</div> </div>
% if settings.MKTG_URL_LINK_MAP.get('FAQ'): % if settings.MKTG_URL_LINK_MAP.get('FAQ'):
<div class="cta cta-help"> <div class="cta cta-help">
<h3>${_("Need Help?")}</h3> <h3>${_("Need Help?")}</h3>
<p>${_("Need help in registering with {platform_name}?").format(platform_name=platform_name)} <p>${_("Need help registering with {platform_name}?").format(platform_name=platform_name)}
<a href="${marketing_link('FAQ')}"> <a href="${marketing_link('FAQ')}">
${_("View our FAQs for answers to commonly asked questions.")} ${_("View our FAQs for answers to commonly asked questions.")}
</a> </a>
${_("Once registered, most questions can be answered in the course specific discussion forums or through the FAQs.")}</p> ${_("You can find the answers to most of your questions in our list of FAQs. After you enroll in a course, you can also find answers in the course discussions.")}</p>
</div> </div>
% endif % endif
...@@ -6,12 +6,16 @@ from openedx.core.djangolib.markup import HTML, Text ...@@ -6,12 +6,16 @@ from openedx.core.djangolib.markup import HTML, Text
<div class="wrapper-msg urgency-high"> <div class="wrapper-msg urgency-high">
<div class="msg"> <div class="msg">
<div class="msg-content"> <div class="msg-content">
<h2 class="title">${_("Thanks for Registering!")}</h2> <h2 class="title">${_("You're almost there!")}</h2>
<div class="copy"> <div class="copy">
<p class='activation-message'>${Text(_( <p class='activation-message'>${Text(_(
"You've successfully created an account on {platform_name}. We've sent an account " "There's just one more step: Before you "
"activation message to {email_start}{email}{email_end}. To activate your account and start enrolling in " "enroll in a course, you need to activate "
"courses, click the link in the message." "your account. We've sent an email message to "
"{email_start}{email}{email_end} with "
"instructions for activating your account. If "
"you don't receive this message, check your "
"spam folder."
)).format(email_start=HTML("<strong>"), )).format(email_start=HTML("<strong>"),
email_end=HTML("</strong>"), email_end=HTML("</strong>"),
email=email, email=email,
......
...@@ -11,9 +11,9 @@ from openedx.core.djangolib.markup import HTML, Text ...@@ -11,9 +11,9 @@ from openedx.core.djangolib.markup import HTML, Text
<section class="message"> <section class="message">
%if not already_active: %if not already_active:
<h1 class="valid">${_("Activation Complete!")}</h1> <h1 class="valid">${_("Account Activated")}</h1>
%else: %else:
<h1>${_("Account already active!")}</h1> <h1>${_("Account already active")}</h1>
%endif %endif
<hr class="horizontal-divider"> <hr class="horizontal-divider">
...@@ -28,7 +28,7 @@ from openedx.core.djangolib.markup import HTML, Text ...@@ -28,7 +28,7 @@ from openedx.core.djangolib.markup import HTML, Text
${Text(_("Visit your {link_start}dashboard{link_end} to see your courses.")).format( ${Text(_("Visit your {link_start}dashboard{link_end} to see your courses.")).format(
link_start=HTML('<a href="{url}">').format(url=reverse('dashboard')), link_end=HTML('</a>'))} link_start=HTML('<a href="{url}">').format(url=reverse('dashboard')), link_end=HTML('</a>'))}
%else: %else:
${Text(_("You can now {link_start}log in{link_end}.")).format( ${Text(_("You can now {link_start}sign in{link_end}.")).format(
link_start=HTML('<a href="{url}">').format(url=reverse('signin_user')), link_end=HTML('</a>'))} link_start=HTML('<a href="{url}">').format(url=reverse('signin_user')), link_end=HTML('</a>'))}
%endif %endif
</p> </p>
......
...@@ -13,16 +13,15 @@ from openedx.core.djangolib.markup import HTML, Text ...@@ -13,16 +13,15 @@ from openedx.core.djangolib.markup import HTML, Text
<h1 class="invalid">${_("Activation Invalid")}</h1> <h1 class="invalid">${_("Activation Invalid")}</h1>
<hr class="horizontal-divider"> <hr class="horizontal-divider">
<p>${Text(_('Something went wrong. Check to make sure the URL you went to was ' <p>${Text(_("Something went wrong. Email programs sometimes split URLs "
'correct -- e-mail programs will sometimes split it into two ' "into two lines, so make sure the URL you're using is " "formatted correctly. If you still have issues, send us "
'lines. If you still have issues, e-mail us to let us know what happened ' "an email message at " "{email_start}{email}{email_end}.")).format(
'at {email_start}{email}{email_end}.')).format(
email_start=HTML('<a href="mailto:{}">').format(settings.BUGS_EMAIL), email_start=HTML('<a href="mailto:{}">').format(settings.BUGS_EMAIL),
email=settings.BUGS_EMAIL, email=settings.BUGS_EMAIL,
email_end=HTML('</a>') email_end=HTML('</a>')
)}</p> )}</p>
<p>${Text(_('Or you can go back to the {link_start}home page{link_end}.')).format( <p>${Text(_('Return to the {link_start}home page{link_end}.')).format(
link_start=HTML('<a href="/">'), link_end=HTML('</a>'))}</p> link_start=HTML('<a href="/">'), link_end=HTML('</a>'))}</p>
</section> </section>
</section> </section>
...@@ -1472,7 +1472,7 @@ class RegistrationViewTest(ThirdPartyAuthTestMixin, UserAPITestCase): ...@@ -1472,7 +1472,7 @@ class RegistrationViewTest(ThirdPartyAuthTestMixin, UserAPITestCase):
self.assertEqual(sent_email.to, [self.EMAIL]) self.assertEqual(sent_email.to, [self.EMAIL])
self.assertEqual(sent_email.subject, "Activate Your edX Account") self.assertEqual(sent_email.subject, "Activate Your edX Account")
self.assertIn( self.assertIn(
u"activating your {platform} account".format(platform=settings.PLATFORM_NAME), u"you need to activate your {platform} account".format(platform=settings.PLATFORM_NAME),
sent_email.body sent_email.body
) )
......
<%! from django.utils.translation import ugettext as _ %> <%! from django.utils.translation import ugettext as _ %>
${_("Thank you for signing up for {platform_name}.").format(platform_name=settings.PLATFORM_NAME)} ${_("Thank you for creating an account with {platform_name}!").format(platform_name=settings.PLATFORM_NAME)}
"There’s just one more step before you can enroll in a course: "
${_("Change your life and start learning today by activating your " "You need to activate your {platform_name} account. To activate "
"{platform_name} account. Click on the link below or copy and " "your account, click the following link. If that doesn't work, "
"paste it into your browser's address bar.").format( "copy and paste the link into your browser's address bar.").format(
platform_name=settings.PLATFORM_NAME platform_name=settings.PLATFORM_NAME
)} )}
...@@ -13,13 +13,13 @@ ${_("Change your life and start learning today by activating your " ...@@ -13,13 +13,13 @@ ${_("Change your life and start learning today by activating your "
http://${ site }/activate/${ key } http://${ site }/activate/${ key }
% endif % endif
${_("After you activate your account, you can sign up for " ${_("After you activate your account, you can take "
"and take any of the hundreds of courses {platform_name} offers." "any of the hundreds of courses {platform_name} "
"offers. You will receive occasional email "
"messages from {platform_name} about new courses "
"or other information."
).format(platform_name=settings.PLATFORM_NAME)} ).format(platform_name=settings.PLATFORM_NAME)}
${_("Once you have activated your account, edX will send you email "
"from time to time about new courses or other information.")}
${_("If you need help, please use our web form at " ${_("If you need help, please use our web form at "
"{contact_us_url}, email {info_email_address}, " "{contact_us_url}, email {info_email_address}, "
"or write to {info_postal_address}." "or write to {info_postal_address}."
...@@ -35,8 +35,9 @@ ${_("We hope you enjoy learning with {platform_name}!").format( ...@@ -35,8 +35,9 @@ ${_("We hope you enjoy learning with {platform_name}!").format(
${_("The {platform_name} Team").format(platform_name=settings.PLATFORM_NAME)} ${_("The {platform_name} Team").format(platform_name=settings.PLATFORM_NAME)}
${_("This email was automatically sent by {site_name} because someone " ${_("This email message was automatically sent by {site_name} because "
"attempted to create an {platform_name} account using this email address." "someone attempted to create an account on {platform_name} using "
"this email address."
).format( ).format(
site_name=settings.SITE_NAME, site_name=settings.SITE_NAME,
platform_name=settings.PLATFORM_NAME platform_name=settings.PLATFORM_NAME
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment