diff --git a/lib/email.js b/lib/email.js index 504c21f6e72a78fafbc16b9eafbc16d8fbe0d53a..13d24ffbb45147cbf63c130d6dc1d111d9e5b897 100644 --- a/lib/email.js +++ b/lib/email.js @@ -45,10 +45,10 @@ const templates = { subject: _("Reset Persona password"), template: fs.readFileSync(path.join(TEMPLATE_PATH, 'reset.ejs')), }, - "add": { - landing: 'add_email_address', + "confirm": { + landing: 'confirm', subject: _("Confirm email address for Persona"), - template: fs.readFileSync(path.join(TEMPLATE_PATH, 'add.ejs')), + template: fs.readFileSync(path.join(TEMPLATE_PATH, 'confirm.ejs')), } }; @@ -118,8 +118,8 @@ exports.sendNewUserEmail = function(email, site, secret, langContext) { doSend('new', email, site, secret, langContext); }; -exports.sendAddAddressEmail = function(email, site, secret, langContext) { - doSend('add', email, site, secret, langContext); +exports.sendConfirmationEmail = function(email, site, secret, langContext) { + doSend('confirm', email, site, secret, langContext); }; exports.sendForgotPasswordEmail = function(email, site, secret, langContext) { diff --git a/lib/static/email_templates/add.ejs b/lib/static/email_templates/confirm.ejs similarity index 66% rename from lib/static/email_templates/add.ejs rename to lib/static/email_templates/confirm.ejs index fb928499b4f11710331a8ae83d7d8b4de035e59a..ad8758855cdd0d04cc17432dd8e30e0fc16a3b0d 100644 --- a/lib/static/email_templates/add.ejs +++ b/lib/static/email_templates/confirm.ejs @@ -3,7 +3,7 @@ <%= format(gettext('Click to confirm this email address and automatically sign in to %s'), [site]) %> <%= link %> -<%= format(gettext('Note: If you are NOT trying to sign into this website, please ignore this email.'), [site]) %> +<%= gettext('Note: If you are NOT trying to sign into this website, please ignore this email.') %> <%= gettext('Thank you,') %> <%= gettext('The Persona team') %> diff --git a/lib/static/views.js b/lib/static/views.js index 4533cebac3d1183a77997a5fac2b39b7d7b665a8..957bfb09c92d0b3d1e6ec25d0392c9222d6f2530 100644 --- a/lib/static/views.js +++ b/lib/static/views.js @@ -174,17 +174,19 @@ exports.setup = function(app) { }); }); + // This page can be removed a couple weeks after this code ships into production, + // we're leaving it here to not break outstanding emails app.get("/add_email_address", function(req,res) { - renderCachableView(req, res, 'add_email_address.ejs', {title: 'Verify Email Address', fullpage: false}); + renderCachableView(req, res, 'confirm.ejs', {title: 'Verify Email Address', fullpage: false}); }); app.get("/reset_password", function(req,res) { - renderCachableView(req, res, 'add_email_address.ejs', {title: 'Reset Password'}); + renderCachableView(req, res, 'confirm.ejs', {title: 'Reset Password'}); }); app.get("/confirm", function(req,res) { - renderCachableView(req, res, 'add_email_address.ejs', {title: 'Confirm Email'}); + renderCachableView(req, res, 'confirm.ejs', {title: 'Confirm Email'}); }); diff --git a/lib/wsapi/stage_email.js b/lib/wsapi/stage_email.js index 6f4ede8f64af6c97b2036a854eaba33d9128eda6..1e9d8cdb4f7cdad18008714885ff85100b1fc512 100644 --- a/lib/wsapi/stage_email.js +++ b/lib/wsapi/stage_email.js @@ -88,7 +88,7 @@ exports.process = function(req, res) { res.json({ success: true }); // let's now kick out a verification email! - email.sendAddAddressEmail(req.body.email, req.body.site, secret, langContext); + email.sendConfirmationEmail(req.body.email, req.body.site, secret, langContext); }); } catch(e) { // we should differentiate tween' 400 and 500 here. diff --git a/lib/wsapi/stage_reverify.js b/lib/wsapi/stage_reverify.js index 100e252fe69e5970c91afe5470dd14f679ed2b7c..c439802100faa27a0be5a957e8e37dea875b3aa1 100644 --- a/lib/wsapi/stage_reverify.js +++ b/lib/wsapi/stage_reverify.js @@ -60,7 +60,7 @@ exports.process = function(req, res) { res.json({ success: true }); // let's now kick out a verification email! - email.sendAddAddressEmail(req.body.email, req.body.site, secret, langContext); + email.sendConfirmationEmail(req.body.email, req.body.site, secret, langContext); }); } catch(e) { // we should differentiate tween' 400 and 500 here. diff --git a/resources/static/pages/js/start.js b/resources/static/pages/js/start.js index ed1f480e388f232b3dcb9d71e235c7ed850b09c5..652c111dbc49dd034947cfb901ae8b12c3b192f5 100644 --- a/resources/static/pages/js/start.js +++ b/resources/static/pages/js/start.js @@ -26,7 +26,7 @@ $(function() { XHRDisableForm = modules.XHRDisableForm, Development = modules.Development, ANIMATION_TIME = 500, - checkCookiePaths = [ "/signin", "/signup", "/forgot", "/add_email_address", "/verify_email_address" ]; + checkCookiePaths = [ "/signin", "/signup", "/forgot", "/add_email_address", "/confirm", "/verify_email_address" ]; function shouldCheckCookies(path) { @@ -148,6 +148,9 @@ $(function() { else if (path === "/add_email_address") { verifySecondaryAddress("verifyEmail"); } + else if (path === "/confirm") { + verifySecondaryAddress("verifyEmail"); + } else if (path === "/verify_email_address") { verifySecondaryAddress("verifyUser"); } diff --git a/resources/static/test/cases/pages/js/verify_secondary_address.js b/resources/static/test/cases/pages/js/verify_secondary_address.js index f15227bc0934937982552abb941804c3fe69463f..fcbbe88392b2d1f792bc76d9e1f1a3ac5d7b74d1 100644 --- a/resources/static/test/cases/pages/js/verify_secondary_address.js +++ b/resources/static/test/cases/pages/js/verify_secondary_address.js @@ -25,7 +25,7 @@ module("pages/verify_secondary_address", { setup: function() { testHelpers.setup(); - bid.Renderer.render("#page_head", "site/add_email_address", {}); + bid.Renderer.render("#page_head", "site/confirm", {}); $(".siteinfo,.password_entry").hide(); }, teardown: function() { diff --git a/resources/views/add_email_address.ejs b/resources/views/confirm.ejs similarity index 100% rename from resources/views/add_email_address.ejs rename to resources/views/confirm.ejs diff --git a/tests/cache-header-tests.js b/tests/cache-header-tests.js index 9649791ba48c1ae17cb9902af3e1822dd77dd40e..da97f16712a38a3f8288bf5ce373fb13daccf17d 100755 --- a/tests/cache-header-tests.js +++ b/tests/cache-header-tests.js @@ -132,6 +132,7 @@ suite.addBatch({ '/privacy': hasProperCacheHeaders('/privacy'), '/verify_email_address': hasProperCacheHeaders('/verify_email_address'), '/add_email_address': hasProperCacheHeaders('/add_email_address'), + '/confirm': hasProperCacheHeaders('/confirm'), // '/pk': hasProperCacheHeaders('/pk'), // '/.well-known/browserid': hasProperCacheHeaders('/.well-known/browserid') }); diff --git a/tests/page-requests-test.js b/tests/page-requests-test.js index 2ae2100ab194871b2b756358c7d566802f609539..a6fd57988775c0fe5c8cfb04a0811a40fc3695d2 100755 --- a/tests/page-requests-test.js +++ b/tests/page-requests-test.js @@ -63,6 +63,7 @@ suite.addBatch({ 'GET /privacy': respondsWith(200), 'GET /verify_email_address': respondsWith(200), 'GET /add_email_address': respondsWith(200), + 'GET /confirm': respondsWith(200), 'GET /reset_password': respondsWith(200), 'GET /confirm': respondsWith(200), 'GET /idp_auth_complete': respondsWith(200),