feat: support custom SMTP port setting (#45)
* feat: support custom SMTP port setting * fix: send SMTPPort value to frontend --------- Co-authored-by: JustSong <quanpengsong@gmail.com>
This commit is contained in:
@@ -33,6 +33,7 @@ var MessagePersistenceEnabled = true
|
|||||||
var MessageRenderEnabled = true
|
var MessageRenderEnabled = true
|
||||||
|
|
||||||
var SMTPServer = ""
|
var SMTPServer = ""
|
||||||
|
var SMTPPort = 587
|
||||||
var SMTPAccount = ""
|
var SMTPAccount = ""
|
||||||
var SMTPToken = ""
|
var SMTPToken = ""
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -8,7 +8,7 @@ func SendEmail(subject string, receiver string, content string) error {
|
|||||||
m.SetHeader("To", receiver)
|
m.SetHeader("To", receiver)
|
||||||
m.SetHeader("Subject", subject)
|
m.SetHeader("Subject", subject)
|
||||||
m.SetBody("text/html", content)
|
m.SetBody("text/html", content)
|
||||||
d := gomail.NewDialer(SMTPServer, 587, SMTPAccount, SMTPToken)
|
d := gomail.NewDialer(SMTPServer, SMTPPort, SMTPAccount, SMTPToken)
|
||||||
err := d.DialAndSend(m)
|
err := d.DialAndSend(m)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ func InitOptionMap() {
|
|||||||
common.OptionMap["MessageRenderEnabled"] = strconv.FormatBool(common.MessageRenderEnabled)
|
common.OptionMap["MessageRenderEnabled"] = strconv.FormatBool(common.MessageRenderEnabled)
|
||||||
common.OptionMap["SMTPServer"] = ""
|
common.OptionMap["SMTPServer"] = ""
|
||||||
common.OptionMap["SMTPAccount"] = ""
|
common.OptionMap["SMTPAccount"] = ""
|
||||||
|
common.OptionMap["SMTPPort"] = strconv.Itoa(common.SMTPPort)
|
||||||
common.OptionMap["SMTPToken"] = ""
|
common.OptionMap["SMTPToken"] = ""
|
||||||
common.OptionMap["Notice"] = ""
|
common.OptionMap["Notice"] = ""
|
||||||
common.OptionMap["About"] = ""
|
common.OptionMap["About"] = ""
|
||||||
@@ -114,6 +115,9 @@ func updateOptionMap(key string, value string) {
|
|||||||
switch key {
|
switch key {
|
||||||
case "SMTPServer":
|
case "SMTPServer":
|
||||||
common.SMTPServer = value
|
common.SMTPServer = value
|
||||||
|
case "SMTPPort":
|
||||||
|
intValue, _ := strconv.Atoi(value)
|
||||||
|
common.SMTPPort = intValue
|
||||||
case "SMTPAccount":
|
case "SMTPAccount":
|
||||||
common.SMTPAccount = value
|
common.SMTPAccount = value
|
||||||
case "SMTPToken":
|
case "SMTPToken":
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ const SystemSetting = () => {
|
|||||||
GitHubClientSecret: '',
|
GitHubClientSecret: '',
|
||||||
Notice: '',
|
Notice: '',
|
||||||
SMTPServer: '',
|
SMTPServer: '',
|
||||||
|
SMTPPort: '',
|
||||||
SMTPAccount: '',
|
SMTPAccount: '',
|
||||||
SMTPToken: '',
|
SMTPToken: '',
|
||||||
ServerAddress: '',
|
ServerAddress: '',
|
||||||
@@ -110,6 +111,12 @@ const SystemSetting = () => {
|
|||||||
if (originInputs['SMTPAccount'] !== inputs.SMTPAccount) {
|
if (originInputs['SMTPAccount'] !== inputs.SMTPAccount) {
|
||||||
await updateOption('SMTPAccount', inputs.SMTPAccount);
|
await updateOption('SMTPAccount', inputs.SMTPAccount);
|
||||||
}
|
}
|
||||||
|
if (
|
||||||
|
originInputs['SMTPPort'] !== inputs.SMTPPort &&
|
||||||
|
inputs.SMTPPort !== ''
|
||||||
|
) {
|
||||||
|
await updateOption('SMTPPort', inputs.SMTPPort);
|
||||||
|
}
|
||||||
if (
|
if (
|
||||||
originInputs['SMTPToken'] !== inputs.SMTPToken &&
|
originInputs['SMTPToken'] !== inputs.SMTPToken &&
|
||||||
inputs.SMTPToken !== ''
|
inputs.SMTPToken !== ''
|
||||||
@@ -259,6 +266,14 @@ const SystemSetting = () => {
|
|||||||
value={inputs.SMTPServer}
|
value={inputs.SMTPServer}
|
||||||
placeholder='例如:smtp.qq.com'
|
placeholder='例如:smtp.qq.com'
|
||||||
/>
|
/>
|
||||||
|
<Form.Input
|
||||||
|
label='SMTP 端口'
|
||||||
|
name='SMTPPort'
|
||||||
|
onChange={handleInputChange}
|
||||||
|
autoComplete='off'
|
||||||
|
value={inputs.SMTPPort}
|
||||||
|
placeholder='默认: 587'
|
||||||
|
/>
|
||||||
<Form.Input
|
<Form.Input
|
||||||
label='SMTP 账户'
|
label='SMTP 账户'
|
||||||
name='SMTPAccount'
|
name='SMTPAccount'
|
||||||
|
|||||||
Reference in New Issue
Block a user