|
@@ -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) {
|
|
|
InvitationCodes.remove(_id);
|
|
|
throw new Meteor.Error('email-fail', e.message);
|