|
|
|
|
@ -35,6 +35,9 @@ Settings.attachSchema(new SimpleSchema({ |
|
|
|
|
})); |
|
|
|
|
Settings.helpers({ |
|
|
|
|
mailUrl () { |
|
|
|
|
if (!this.mailServer.host) { |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
if (!this.mailServer.username && !this.mailServer.password) { |
|
|
|
|
return `smtp://${this.mailServer.host}:${this.mailServer.port}/`; |
|
|
|
|
} |
|
|
|
|
@ -69,7 +72,7 @@ if (Meteor.isServer) { |
|
|
|
|
}); |
|
|
|
|
Settings.after.update((userId, doc, fieldNames) => { |
|
|
|
|
// assign new values to mail-from & MAIL_URL in environment
|
|
|
|
|
if (_.contains(fieldNames, 'mailServer')) { |
|
|
|
|
if (_.contains(fieldNames, 'mailServer') && _.contains(fieldNames, 'host')) { |
|
|
|
|
if (!doc.mailServer.username && !doc.mailServer.password) { |
|
|
|
|
process.env.MAIL_URL = `smtp://${doc.mailServer.host}:${doc.mailServer.port}/`; |
|
|
|
|
} else { |
|
|
|
|
@ -97,12 +100,14 @@ if (Meteor.isServer) { |
|
|
|
|
url: FlowRouter.url('sign-up'), |
|
|
|
|
}; |
|
|
|
|
const lang = author.getLanguage(); |
|
|
|
|
Email.send({ |
|
|
|
|
to: icode.email, |
|
|
|
|
from: Accounts.emailTemplates.from, |
|
|
|
|
subject: TAPi18n.__('email-invite-register-subject', params, lang), |
|
|
|
|
text: TAPi18n.__('email-invite-register-text', params, lang), |
|
|
|
|
}); |
|
|
|
|
if (Settings.findOne().mailUrl()) { |
|
|
|
|
Email.send({ |
|
|
|
|
to: icode.email, |
|
|
|
|
from: Accounts.emailTemplates.from, |
|
|
|
|
subject: TAPi18n.__('email-invite-register-subject', params, lang), |
|
|
|
|
text: TAPi18n.__('email-invite-register-text', params, lang), |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
} catch (e) { |
|
|
|
|
throw new Meteor.Error('email-fail', e.message); |
|
|
|
|
} |
|
|
|
|
|