From 6c16333b66ab661e1fa0a5627a3019432993ed55 Mon Sep 17 00:00:00 2001 From: Sebastian Mihalache <sebastian.mihalache@gmail.con> Date: Tue, 25 Sep 2018 16:21:31 +0300 Subject: [PATCH] feat(email-templating): add footer --- .../component-email-templating/config/default.js | 14 ++++---------- .../src/EmailTemplate.js | 14 +++++++++++--- .../src/templates/partials/footer.hbs | 16 ++++++++++------ .../xpub-faraday/app/config/journal/metadata.js | 5 +++++ packages/xpub-faraday/config/default.js | 3 +++ 5 files changed, 33 insertions(+), 19 deletions(-) diff --git a/packages/component-email-templating/config/default.js b/packages/component-email-templating/config/default.js index 0d5f73e62..363ee8104 100644 --- a/packages/component-email-templating/config/default.js +++ b/packages/component-email-templating/config/default.js @@ -1,18 +1,12 @@ module.exports = { - // sender: { - // state: 'CA', - // zipCode: '94103', - // city: 'San Francisco', - // name: 'Coko Foundation', - // address: '2973 16th St., Suite 300', - // fromEmail: , - // }, journal: { name: 'Coko Foundation', staffEmail: 'Coko <team@coko.foundation>', - logo: - 'https://marketing-image-production.s3.amazonaws.com/uploads/5870a9c1bd8e6213ef1e02718d2db115be163584a9fc401accb63866479b952fe83d646a32a55996a3701a0b40943c47900cb1c2d255ae34e7925555b2cdc24a.png', + logo: 'https://coko.foundation/wp-content/uploads/2017/11/logo-coko.png', ctaColor: '#EE2B77', logoLink: 'https://coko.foundation/', + publisher: 'Coko Foundation', + privacy: '', + address: '2973 16th St., Suite 300, San Francisco, CA 94103', }, } diff --git a/packages/component-email-templating/src/EmailTemplate.js b/packages/component-email-templating/src/EmailTemplate.js index 51d944c0e..24e80c068 100644 --- a/packages/component-email-templating/src/EmailTemplate.js +++ b/packages/component-email-templating/src/EmailTemplate.js @@ -2,7 +2,14 @@ const config = require('config') const helpers = require('./helpers') const SendEmail = require('@pubsweet/component-send-email') -const configData = {} +const configData = { + logo: config.get('journal.logo'), + address: config.get('journal.address'), + privacy: config.get('journal.privacy'), + ctaColor: config.get('journal.ctaColor'), + logoLink: config.get('journal.logoLink'), + publisher: config.get('journal.publisher'), +} class Email { constructor({ type = 'system', @@ -16,7 +23,6 @@ class Email { subject: '', ctaLink: '', ctaText: '', - ctaColor: '', signatureName: '', unsubscribeLink: '', signatureJournal: '', @@ -42,11 +48,12 @@ class Email { getInvitationBody({ emailBodyProps }) { return { - html: helpers.getInvitationBody({ + html: helpers.getCompiledInvitationBody({ replacements: { ...configData, ...this.content, ...emailBodyProps, + toEmail: this.toUser.email, toUserName: this.toUser.name, }, }), @@ -63,6 +70,7 @@ class Email { ...configData, ...this.content, ...emailBodyProps, + toEmail: this.toUser.email, toUserName: this.toUser.name, }, }), diff --git a/packages/component-email-templating/src/templates/partials/footer.hbs b/packages/component-email-templating/src/templates/partials/footer.hbs index ef5a6c5d0..0d98f5123 100644 --- a/packages/component-email-templating/src/templates/partials/footer.hbs +++ b/packages/component-email-templating/src/templates/partials/footer.hbs @@ -1,14 +1,18 @@ <div data-role="module-unsubscribe" class="module unsubscribe-css__unsubscribe___2CDlR" role="module" data-type="unsubscribe" style="color:#444444;font-size:12px;line-height:20px;padding:16px 16px 16px 16px;text-align:center"> + <p style="font-family:Arial, Helvetica, sans-serif;font-size:11px;line-height:20px;text-align:left"> + This email was sent to {{toEmail}}. You have received this email in regards to the account creation, submission, or peer review process of a paper submitted to a journal published by {{ publisher }}. + </p> <div class="Unsubscribe--addressLine"> - <p class="Unsubscribe--senderName" style="font-family:Arial, Helvetica, sans-serif;font-size:12px;line-height:20px">{{ senderName }}</p> - <p style="font-family:Arial, Helvetica, sans-serif;font-size:12px;line-height:20px"> - <span class="Unsubscribe--senderAddress">{{ senderAddress }}</span>, - <span class="Unsubscribe--senderCity">{{ senderCity }}</span>, - <span class="Unsubscribe--senderState">{{ senderState }}</span> - <span class="Unsubscribe--senderZip">{{ senderZip }}</span> + <p style="font-family:Arial, Helvetica, sans-serif;font-size:11px;line-height:20px;text-align:left"> + {{ address }} </p> </div> + <p style="font-family:Arial, Helvetica, sans-serif;font-size:11px;line-height:20px;text-align:left"> + </p> + <p style="font-family:Arial, Helvetica, sans-serif;font-size:11px;line-height:20px;text-align:left"> + {{{ privacy }}} + </p> <p style="font-family:Arial, Helvetica, sans-serif;font-size:12px;line-height:20px"> <a class="Unsubscribe--unsubscribeLink" href="{{ unsubscribeLink }}">Unsubscribe</a> </p> diff --git a/packages/xpub-faraday/app/config/journal/metadata.js b/packages/xpub-faraday/app/config/journal/metadata.js index 38c8bb3b5..a465d36db 100644 --- a/packages/xpub-faraday/app/config/journal/metadata.js +++ b/packages/xpub-faraday/app/config/journal/metadata.js @@ -18,5 +18,10 @@ module.exports = { 'https://marketing-image-production.s3.amazonaws.com/uploads/bb39b20cf15e52c1c0933676e25f2b2402737c6560b8098c204ad6932b84eb2058804376dbc4db138c7a21dcaed9325bde36185648afac5bc97e3d73d4e12718.png', ctaColor: '#63a945', logoLink: 'https://hindawi.com', + privacy: + 'Hindawi respects your right to privacy. Please see our <a href="https://www.hindawi.com/privacy/">privacy policy</a> for information on how we store, process, and safeguard your data.', + address: + 'Hindawi Limited, 3rd Floor, Adam House, 1 Fitzroy Square, London, W1T 5HF, United Kingdom', + publisher: 'Hindawi Limited', }, } diff --git a/packages/xpub-faraday/config/default.js b/packages/xpub-faraday/config/default.js index 5122682df..90fefee88 100644 --- a/packages/xpub-faraday/config/default.js +++ b/packages/xpub-faraday/config/default.js @@ -124,8 +124,11 @@ module.exports = { name: get(journalConfig, 'metadata.nameText'), staffEmail: get(journalConfig, 'metadata.email'), logo: get(journalConfig, 'metadata.emailData.logo'), + privacy: get(journalConfig, 'metadata.emailData.privacy'), + address: get(journalConfig, 'metadata.emailData.address'), ctaColor: get(journalConfig, 'metadata.emailData.ctaColor'), logoLink: get(journalConfig, 'metadata.emailData.logoLink'), + publisher: get(journalConfig, 'metadata.emailData.publisher'), }, features: { mts: JSON.parse(get(process, 'env.FEATURE_MTS', true)), -- GitLab