From b9cf3fb6381f71c976fbe515f728082d90a9c437 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 10 Nov 2020 15:56:13 +0100 Subject: [PATCH] Fix email footer Do not include notif preferences in contact form email --- server/lib/emailer.ts | 5 ++++- server/lib/emails/common/base.pug | 25 +++++++++++++------------ server/tests/api/server/contact-form.ts | 5 +++++ server/tests/api/server/email.ts | 5 +++++ 4 files changed, 27 insertions(+), 13 deletions(-) diff --git a/server/lib/emailer.ts b/server/lib/emailer.ts index 6532fb4b4..708808cf2 100644 --- a/server/lib/emailer.ts +++ b/server/lib/emailer.ts @@ -606,7 +606,10 @@ class Emailer { locals: { fromName, fromEmail, - body + body, + + // There are not notification preferences for the contact form + hideNotificationPreferences: true } } diff --git a/server/lib/emails/common/base.pug b/server/lib/emails/common/base.pug index b66a2a6d7..991cd5fbe 100644 --- a/server/lib/emails/common/base.pug +++ b/server/lib/emails/common/base.pug @@ -199,7 +199,7 @@ body(width="100%" style="margin: 0; padding: 0 !important; mso-line-height-rule: td(width="40px") img(src=`${WEBSERVER.URL}/client/assets/images/icons/icon-192x192.png` width="auto" height="30px" alt="" border="0" style="height: 30px; background: #ffffff; font-family: sans-serif; font-size: 15px; line-height: 15px; color: #555555;") td - h1(style='margin: 10px 0 10px 0; font-family: sans-serif; font-size: 25px; line-height: 30px; color: #333333; font-weight: normal;') + h1(style='margin: 10px 0 10px 0; font-family: sans-serif; font-size: 25px; line-height: 30px; color: #333333; font-weight: normal;') block title if title | #{title} @@ -234,17 +234,18 @@ body(width="100%" style="margin: 0; padding: 0 !important; mso-line-height-rule: //- 1 Column Text : END //- Email Body : END //- Email Footer : BEGIN - table(align='center' role='presentation' cellspacing='0' cellpadding='0' border='0' width='100%' style='margin: auto;') - tr - td(style='padding: 20px; padding-bottom: 0px; font-family: sans-serif; font-size: 12px; line-height: 15px; text-align: center; color: #888888;') - webversion - a.nocolor(href=`${WEBSERVER.URL}/my-account/notifications` style='color: #cccccc; font-weight: bold;') View in your notifications - br - tr - td(style='padding: 20px; padding-top: 10px; font-family: sans-serif; font-size: 12px; line-height: 15px; text-align: center; color: #888888;') - unsubscribe - a.nocolor(href=`${WEBSERVER.URL}/my-account/settings#notifications` style='color: #888888;') Manage your notification preferences in your profile - br + unless hideNotificationPreferences + table(align='center' role='presentation' cellspacing='0' cellpadding='0' border='0' width='100%' style='margin: auto;') + tr + td(style='padding: 20px; padding-bottom: 0px; font-family: sans-serif; font-size: 12px; line-height: 15px; text-align: center; color: #888888;') + webversion + a.nocolor(href=`${WEBSERVER.URL}/my-account/notifications` style='color: #cccccc; font-weight: bold;') View in your notifications + br + tr + td(style='padding: 20px; padding-top: 10px; font-family: sans-serif; font-size: 12px; line-height: 15px; text-align: center; color: #888888;') + unsubscribe + a.nocolor(href=`${WEBSERVER.URL}/my-account/settings#notifications` style='color: #888888;') Manage your notification preferences in your profile + br //- Email Footer : END //if mso //- Full Bleed Background Section : BEGIN diff --git a/server/tests/api/server/contact-form.ts b/server/tests/api/server/contact-form.ts index 8d1270358..c0965d9d1 100644 --- a/server/tests/api/server/contact-form.ts +++ b/server/tests/api/server/contact-form.ts @@ -83,6 +83,11 @@ describe('Test contact form', function () { }) }) + it('Should not have the manage preferences link in the email', async function () { + const email = emails[0] + expect(email['text']).to.not.contain('Manage your notification preferences') + }) + after(async function () { MockSmtpServer.Instance.kill() diff --git a/server/tests/api/server/email.ts b/server/tests/api/server/email.ts index 05c89d2a3..53f96a94f 100644 --- a/server/tests/api/server/email.ts +++ b/server/tests/api/server/email.ts @@ -279,6 +279,11 @@ describe('Test emails', function () { expect(email['subject']).contains(' unblacklisted') expect(email['text']).contains('my super user video') }) + + it('Should have the manage preferences link in the email', async function () { + const email = emails[6] + expect(email['text']).to.contain('Manage your notification preferences') + }) }) describe('When verifying a user email', function () {