Fix sending mail with a non-latin display name. #2102 (#2559)

* Fix sending mail with a non-latin display name. #2102

Signed-off-by: Rémi Saurel <contact@remi-saurel.com>

* Take into account the possibility that setting.MailService.From is in `name <email@address>` format. #2102

Signed-off-by: Rémi Saurel <contact@remi-saurel.com>
This commit is contained in:
Rémi Saurel 2017-09-21 06:29:45 +02:00 committed by Lunny Xiao
parent 1fbfccb4fc
commit 66bc0ac251
3 changed files with 6 additions and 4 deletions

View file

@ -31,11 +31,11 @@ type Message struct {
}
// NewMessageFrom creates new mail message object with custom From header.
func NewMessageFrom(to []string, from, subject, body string) *Message {
func NewMessageFrom(to []string, fromDisplayName, fromAddress, subject, body string) *Message {
log.Trace("NewMessageFrom (body):\n%s", body)
msg := gomail.NewMessage()
msg.SetHeader("From", from)
msg.SetAddressHeader("From", fromAddress, fromDisplayName)
msg.SetHeader("To", to...)
msg.SetHeader("Subject", subject)
msg.SetDateHeader("Date", time.Now())
@ -58,7 +58,7 @@ func NewMessageFrom(to []string, from, subject, body string) *Message {
// NewMessage creates new mail message object with default From header.
func NewMessage(to []string, subject, body string) *Message {
return NewMessageFrom(to, setting.MailService.From, subject, body)
return NewMessageFrom(to, setting.MailService.FromName, setting.MailService.FromEmail, subject, body)
}
type loginAuth struct {