Merge branch 'lkisme-admin-panel' into devel

This commit is contained in:
Lauri Ojansivu 2017-03-12 16:15:53 +02:00
commit d4c2b9c882
2 changed files with 22 additions and 5 deletions

View file

@ -103,8 +103,8 @@ BlazeComponent.extendComponent({
try{
const host = this.checkField('#mail-server-host');
const port = this.checkField('#mail-server-port');
const username = this.checkField('#mail-server-username');
const password = this.checkField('#mail-server-password');
const username = $('#mail-server-username').val().trim();
const password = $('#mail-server-password').val().trim();
const from = this.checkField('#mail-server-from');
Settings.update(Settings.findOne()._id, {$set:{'mailServer.host':host, 'mailServer.port': port, 'mailServer.username': username,
'mailServer.password': password, 'mailServer.from': from}});

View file

@ -35,8 +35,10 @@ Settings.attachSchema(new SimpleSchema({
}));
Settings.helpers({
mailUrl () {
const mailUrl = `smtp://${this.mailServer.username}:${this.mailServer.password}@${this.mailServer.host}:${this.mailServer.port}/`;
return mailUrl;
if (!this.mailServer.username && !this.mailServer.password) {
return `smtp://${this.mailServer.host}:${this.mailServer.port}/`;
}
return `smtp://${this.mailServer.username}:${this.mailServer.password}@${this.mailServer.host}:${this.mailServer.port}/`;
},
});
Settings.allow({
@ -65,6 +67,17 @@ if (Meteor.isServer) {
process.env.MAIL_URL = newSetting.mailUrl();
Accounts.emailTemplates.from = newSetting.mailServer.from;
});
Settings.after.update((userId, doc, fieldNames) => {
// assign new values to mail-from & MAIL_URL in environment
if (_.contains(fieldNames, 'mailServer')) {
if (!doc.mailServer.username && !doc.mailServer.password) {
process.env.MAIL_URL = `smtp://${doc.mailServer.host}:${doc.mailServer.port}/`;
} else {
process.env.MAIL_URL = `smtp://${doc.mailServer.username}:${doc.mailServer.password}@${doc.mailServer.host}:${doc.mailServer.port}/`;
}
Accounts.emailTemplates.from = doc.mailServer.from;
}
});
function getRandomNum (min, max) {
const range = max - min;
@ -107,7 +120,11 @@ if (Meteor.isServer) {
if (email && SimpleSchema.RegEx.Email.test(email)) {
const code = getRandomNum(100000, 999999);
InvitationCodes.insert({code, email, boardsToBeInvited: boards, createdAt: new Date(), authorId: Meteor.userId()}, function(err, _id){
if(!err && _id) sendInvitationEmail(_id);
if (!err && _id) {
sendInvitationEmail(_id);
} else {
throw new Meteor.Error('invitation-generated-fail', err.message);
}
});
}
});