PLT-3752 Changed email connection test to use the existing password if unchanged by client (#3685)

Этот коммит содержится в:
Harrison Healey
2016-07-29 10:09:22 -04:00
коммит произвёл Christopher Speller
родитель 6f45bdd68b
Коммит 56fd348123
3 изменённых файлов: 23 добавлений и 1 удалений

Просмотреть файл

@@ -195,6 +195,19 @@ func testEmail(c *Context, w http.ResponseWriter, r *http.Request) {
return
}
// if the user hasn't changed their email settings, fill in the actual SMTP password so that
// the user can verify an existing SMTP connection
if cfg.EmailSettings.SMTPPassword == model.FAKE_SETTING {
if cfg.EmailSettings.SMTPServer == utils.Cfg.EmailSettings.SMTPServer &&
cfg.EmailSettings.SMTPPort == utils.Cfg.EmailSettings.SMTPPort &&
cfg.EmailSettings.SMTPUsername == utils.Cfg.EmailSettings.SMTPUsername {
cfg.EmailSettings.SMTPPassword = utils.Cfg.EmailSettings.SMTPPassword
} else {
c.Err = model.NewLocAppError("testEmail", "api.admin.test_email.reenter_password", nil, "")
return
}
}
if result := <-Srv.Store.User().Get(c.Session.UserId); result.Err != nil {
c.Err = result.Err
return

Просмотреть файл

@@ -103,6 +103,10 @@
"id": "api.admin.test_email.missing_server",
"translation": "SMTP Server is required"
},
{
"id": "api.admin.test_email.reenter_password",
"translation": "The SMTP server, port, or username has changed. Please re-enter the SMTP password to test connection."
},
{
"id": "api.admin.test_email.subject",
"translation": "Mattermost - Testing Email Settings"

Просмотреть файл

@@ -46,9 +46,14 @@ export default class EmailConnectionTestButton extends React.Component {
});
},
(err) => {
let fail = err.message;
if (err.detailed_error) {
fail += ' - ' + err.detailed_error;
}
this.setState({
testing: false,
fail: err.message + ' - ' + err.detailed_error
fail
});
}
);