Merge pull request #110 from cloudron-io/master
Add support for reply-to field
This commit is contained in:
commit
8db3672a28
9 changed files with 48 additions and 5 deletions
|
@ -14,7 +14,7 @@ let mailer = require('../mailer');
|
|||
let caches = require('../caches');
|
||||
let humanize = require('humanize');
|
||||
|
||||
let allowedKeys = ['description', 'from', 'address', 'subject', 'template', 'source_url', 'list', 'segment', 'html', 'text', 'tracking_disabled'];
|
||||
let allowedKeys = ['description', 'from', 'address', 'reply_to', 'subject', 'template', 'source_url', 'list', 'segment', 'html', 'text', 'tracking_disabled'];
|
||||
|
||||
module.exports.list = (start, limit, callback) => {
|
||||
db.getConnection((err, connection) => {
|
||||
|
|
|
@ -12,3 +12,15 @@
|
|||
from { -webkit-transform: rotate(0deg); }
|
||||
to { -webkit-transform: rotate(360deg); }
|
||||
}
|
||||
|
||||
/* Supporting wider description lists */
|
||||
|
||||
@media screen and (min-width: 768px) {
|
||||
.dl-horizontal dt {
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
.dl-horizontal dd {
|
||||
margin-left: 220px;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -88,6 +88,7 @@ router.get('/create', passport.csrfProtection, (req, res) => {
|
|||
|
||||
data.from = data.from || configItems.defaultFrom;
|
||||
data.address = data.address || configItems.defaultAddress;
|
||||
data.replyTo = data.replyTo || '';
|
||||
data.subject = data.subject || configItems.defaultSubject;
|
||||
|
||||
let view;
|
||||
|
|
|
@ -333,6 +333,7 @@ function formatMessage(message, callback) {
|
|||
name: campaign.from,
|
||||
address: campaign.address
|
||||
},
|
||||
replyTo: campaign.replyTo,
|
||||
xMailer: 'Mailtrain Mailer (+https://mailtrain.org)',
|
||||
to: {
|
||||
name: [].concat(message.subscription.firstName || []).concat(message.subscription.lastName || []).join(' '),
|
||||
|
|
|
@ -56,6 +56,7 @@ CREATE TABLE `campaigns` (
|
|||
`check_status` varchar(255) DEFAULT NULL,
|
||||
`from` varchar(255) DEFAULT '',
|
||||
`address` varchar(255) DEFAULT '',
|
||||
`reply_to` varchar(255) DEFAULT '',
|
||||
`subject` varchar(255) DEFAULT '',
|
||||
`html` longtext,
|
||||
`html_prepared` longtext,
|
||||
|
@ -209,7 +210,7 @@ CREATE TABLE `settings` (
|
|||
`value` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `key` (`key`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=36 DEFAULT CHARSET=utf8mb4;
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8mb4;
|
||||
INSERT INTO `settings` (`id`, `key`, `value`) VALUES (1,'smtp_hostname','localhost');
|
||||
INSERT INTO `settings` (`id`, `key`, `value`) VALUES (2,'smtp_port','465');
|
||||
INSERT INTO `settings` (`id`, `key`, `value`) VALUES (3,'smtp_encryption','TLS');
|
||||
|
@ -226,7 +227,7 @@ INSERT INTO `settings` (`id`, `key`, `value`) VALUES (13,'default_from','My Awes
|
|||
INSERT INTO `settings` (`id`, `key`, `value`) VALUES (14,'default_address','admin@example.com');
|
||||
INSERT INTO `settings` (`id`, `key`, `value`) VALUES (15,'default_subject','Test message');
|
||||
INSERT INTO `settings` (`id`, `key`, `value`) VALUES (16,'default_homepage','http://localhost:3000/');
|
||||
INSERT INTO `settings` (`id`, `key`, `value`) VALUES (17,'db_schema_version','19');
|
||||
INSERT INTO `settings` (`id`, `key`, `value`) VALUES (17,'db_schema_version','20');
|
||||
CREATE TABLE `subscription` (
|
||||
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cid` varchar(255) CHARACTER SET ascii NOT NULL,
|
||||
|
|
11
setup/sql/upgrade-00020.sql
Normal file
11
setup/sql/upgrade-00020.sql
Normal file
|
@ -0,0 +1,11 @@
|
|||
# Header section
|
||||
# Define incrementing schema version number
|
||||
SET @schema_version = '20';
|
||||
|
||||
# Add reply_to field
|
||||
ALTER TABLE `campaigns` ADD COLUMN `reply_to` varchar(255) DEFAULT '' AFTER `address`;
|
||||
|
||||
# Footer section
|
||||
LOCK TABLES `settings` WRITE;
|
||||
INSERT INTO `settings` (`key`, `value`) VALUES('db_schema_version', @schema_version) ON DUPLICATE KEY UPDATE `value`=@schema_version;
|
||||
UNLOCK TABLES;
|
|
@ -91,7 +91,13 @@
|
|||
<div class="form-group">
|
||||
<label for="address" class="col-sm-2 control-label">Email "from" address</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="email" class="form-control" name="address" id="address" value="{{address}}" placeholder="This is the address people will send replies to" required>
|
||||
<input type="email" class="form-control" name="address" id="address" value="{{address}}" placeholder="This is the address people will send replies to unless reply-to address is set" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="address" class="col-sm-2 control-label">Email "reply-to" address</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="email" class="form-control" name="reply-to" id="reply-to" value="{{replyTo}}" placeholder="If set, this is the address people will send replies to">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
|
|
|
@ -102,7 +102,13 @@
|
|||
<div class="form-group">
|
||||
<label for="address" class="col-sm-2 control-label">Email "from" address</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="email" class="form-control" name="address" id="address" value="{{address}}" placeholder="This is the address people will send replies to" required>
|
||||
<input type="email" class="form-control" name="address" id="address" value="{{address}}" placeholder="This is the address people will send replies to unless reply-to address is set" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="reply-to" class="col-sm-2 control-label">Email "reply-to" address</label>
|
||||
<div class="col-sm-10">
|
||||
<input type="email" class="form-control" name="reply-to" id="reply-to" value="{{replyTo}}" placeholder="If set, this is the address people will send replies to">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
|
|
|
@ -78,6 +78,11 @@
|
|||
<dd>{{address}}</dd>
|
||||
{{/if}}
|
||||
|
||||
{{#if replyTo}}
|
||||
<dt>Email "reply-to" address</dt>
|
||||
<dd>{{replyTo}}</dd>
|
||||
{{/if}}
|
||||
|
||||
{{#if subject}}
|
||||
<dt>Email "subject line"</dt>
|
||||
<dd>{{subject}}</dd>
|
||||
|
|
Loading…
Reference in a new issue