diff --git a/meta.json b/meta.json index 5d511080..d8161091 100644 --- a/meta.json +++ b/meta.json @@ -1,3 +1,3 @@ { - "schemaVersion": 30 + "schemaVersion": 31 } diff --git a/routes/settings.js b/routes/settings.js index 6ac92446..e3fdb6d6 100644 --- a/routes/settings.js +++ b/routes/settings.js @@ -16,7 +16,7 @@ let _ = require('../lib/translate')._; let settings = require('../lib/models/settings'); -let allowedKeys = ['service_url', 'smtp_hostname', 'smtp_port', 'smtp_encryption', 'smtp_disable_auth', 'smtp_user', 'smtp_pass', 'admin_email', 'smtp_log', 'smtp_max_connections', 'smtp_max_messages', 'smtp_self_signed', 'default_from', 'default_address', 'default_subject', 'default_homepage', 'default_postaddress', 'default_sender', 'verp_hostname', 'verp_use', 'disable_wysiwyg', 'pgp_private_key', 'pgp_passphrase', 'ua_code', 'shoutout', 'disable_confirmations', 'smtp_throttling', 'dkim_api_key', 'dkim_private_key', 'dkim_selector', 'dkim_domain', 'mail_transport', 'ses_key', 'ses_secret', 'ses_region']; +let allowedKeys = ['service_url', 'smtp_hostname', 'smtp_port', 'smtp_encryption', 'smtp_disable_auth', 'smtp_user', 'smtp_pass', 'admin_email', 'smtp_log', 'smtp_max_connections', 'smtp_max_messages', 'smtp_self_signed', 'default_from', 'default_address', 'default_subject', 'default_homepage', 'default_postaddress', 'default_sender', 'verp_hostname', 'verp_use', 'disable_wysiwyg', 'pgp_private_key', 'pgp_passphrase', 'ua_code', 'shoutout', 'disable_confirmations', 'smtp_throttling', 'dkim_api_key', 'dkim_private_key', 'dkim_selector', 'dkim_domain', 'mail_transport', 'ses_key', 'ses_secret', 'ses_region', 'x_mailer']; router.all('/*', (req, res, next) => { if (!req.user) { diff --git a/services/sender.js b/services/sender.js index 1e22d1b1..3c2293ff 100644 --- a/services/sender.js +++ b/services/sender.js @@ -312,7 +312,7 @@ function formatMessage(message, callback) { return callback(new Error(_('List not found'))); } - settings.list(['serviceUrl', 'verpUse', 'verpHostname'], (err, configItems) => { + settings.list(['serviceUrl', 'verpUse', 'verpHostname', 'xMailer'], (err, configItems) => { if (err) { return callback(err); } @@ -390,7 +390,7 @@ function formatMessage(message, callback) { address: campaign.address }, replyTo: campaign.replyTo, - xMailer: 'Mailtrain Mailer (+https://mailtrain.org)', + xMailer: configItems.xMailer ? configItems.xMailer : false, to: { name: [].concat(message.subscription.firstName || []).concat(message.subscription.lastName || []).join(' '), address: message.subscription.email diff --git a/setup/sql/upgrade-00031.sql b/setup/sql/upgrade-00031.sql new file mode 100644 index 00000000..9aa0d801 --- /dev/null +++ b/setup/sql/upgrade-00031.sql @@ -0,0 +1,15 @@ +# Header section +# Define incrementing schema version number +SET @schema_version = '31'; + +# Set default X-Mailer header value +LOCK TABLES `settings` WRITE; +INSERT INTO `settings` (`key`, `value`) VALUES ('x_mailer','Mailtrain Mailer (+https://mailtrain.org)') ON DUPLICATE KEY UPDATE `value`='Mailtrain Mailer (+https://mailtrain.org)'; +UNLOCK TABLES; + +# Footer section. Updates schema version in settings +LOCK TABLES `settings` WRITE; +/*!40000 ALTER TABLE `settings` DISABLE KEYS */; +INSERT INTO `settings` (`key`, `value`) VALUES('db_schema_version', @schema_version) ON DUPLICATE KEY UPDATE `value`=@schema_version; +/*!40000 ALTER TABLE `settings` ENABLE KEYS */; +UNLOCK TABLES; diff --git a/views/settings.hbs b/views/settings.hbs index 52472225..ab232a4f 100644 --- a/views/settings.hbs +++ b/views/settings.hbs @@ -74,6 +74,14 @@ +