@@ -34,32 +34,38 @@ var DefaultEmail = EmailLogic{}
34
34
func (EmailLogic ) SendMail (subject , content string , tos []string ) (err error ) {
35
35
emailConfig , _ := config .ConfigFile .GetSection ("email" )
36
36
37
+ fromEmail := emailConfig ["from_email" ]
38
+ smtpUsername := emailConfig ["smtp_username" ]
39
+ smtpPassword := emailConfig ["smtp_password" ]
40
+ smtpHost := emailConfig ["smtp_host" ]
41
+ smtpPort := emailConfig ["smtp_port" ]
42
+
37
43
for _ , to := range tos {
38
44
if strings .HasSuffix (to , "163.com" ) || strings .HasSuffix (to , "126.com" ) {
39
45
email163Config , _ := config .ConfigFile .GetSection ("email.163" )
40
- emailConfig [ "from_email" ] = email163Config ["from_email" ]
41
- emailConfig [ "smtp_username" ] = email163Config ["smtp_username" ]
42
- emailConfig [ "smtp_password" ] = email163Config ["smtp_password" ]
43
- emailConfig [ "smtp_host" ] = email163Config ["smtp_host" ]
44
- emailConfig [ "smtp_port" ] = email163Config ["smtp_port" ]
46
+ fromEmail = email163Config ["from_email" ]
47
+ smtpUsername = email163Config ["smtp_username" ]
48
+ smtpPassword = email163Config ["smtp_password" ]
49
+ smtpHost = email163Config ["smtp_host" ]
50
+ smtpPort = email163Config ["smtp_port" ]
45
51
46
52
break
47
53
}
48
54
}
49
55
50
56
e := email .NewEmail ()
51
- e .From = WebsiteSetting .Name + ` <` + emailConfig [ "from_email" ] + `>`
57
+ e .From = WebsiteSetting .Name + ` <` + fromEmail + `>`
52
58
e .To = tos
53
59
e .Subject = subject
54
60
e .HTML = []byte (content )
55
61
56
- auth := smtp .PlainAuth ("" , emailConfig [ "smtp_username" ], emailConfig [ "smtp_password" ], emailConfig [ "smtp_host" ] )
57
- smtpAddr := emailConfig [ "smtp_host" ] + ":" + emailConfig [ "smtp_port" ]
62
+ auth := smtp .PlainAuth ("" , smtpUsername , smtpPassword , smtpHost )
63
+ smtpAddr := smtpHost + ":" + smtpPort
58
64
59
65
if goutils .MustBool (emailConfig ["tls" ]) {
60
66
tlsConfig := & tls.Config {
61
67
InsecureSkipVerify : true ,
62
- ServerName : emailConfig [ "smtp_host" ] ,
68
+ ServerName : smtpHost ,
63
69
}
64
70
65
71
err = e .SendWithTLS (smtpAddr , auth , tlsConfig )
0 commit comments