Add organization.MasterVerificationCode

This commit is contained in:
Yang Luo 2023-11-13 13:53:41 +08:00
parent d3ed6c348b
commit 2d4998228c
4 changed files with 47 additions and 18 deletions

View File

@ -319,6 +319,9 @@ func GetMaskedApplication(application *Application, userId string) *Application
if application.OrganizationObj.DefaultPassword != "" { if application.OrganizationObj.DefaultPassword != "" {
application.OrganizationObj.DefaultPassword = "***" application.OrganizationObj.DefaultPassword = "***"
} }
if application.OrganizationObj.MasterVerificationCode != "" {
application.OrganizationObj.MasterVerificationCode = "***"
}
if application.OrganizationObj.PasswordType != "" { if application.OrganizationObj.PasswordType != "" {
application.OrganizationObj.PasswordType = "***" application.OrganizationObj.PasswordType = "***"
} }

View File

@ -65,6 +65,7 @@ type Organization struct {
ThemeData *ThemeData `xorm:"json" json:"themeData"` ThemeData *ThemeData `xorm:"json" json:"themeData"`
MasterPassword string `xorm:"varchar(100)" json:"masterPassword"` MasterPassword string `xorm:"varchar(100)" json:"masterPassword"`
DefaultPassword string `xorm:"varchar(100)" json:"defaultPassword"` DefaultPassword string `xorm:"varchar(100)" json:"defaultPassword"`
MasterVerificationCode string `xorm:"varchar(100)" json:"masterVerificationCode"`
InitScore int `json:"initScore"` InitScore int `json:"initScore"`
EnableSoftDeletion bool `json:"enableSoftDeletion"` EnableSoftDeletion bool `json:"enableSoftDeletion"`
IsProfilePublic bool `json:"isProfilePublic"` IsProfilePublic bool `json:"isProfilePublic"`
@ -159,6 +160,9 @@ func GetMaskedOrganization(organization *Organization, errs ...error) (*Organiza
if organization.DefaultPassword != "" { if organization.DefaultPassword != "" {
organization.DefaultPassword = "***" organization.DefaultPassword = "***"
} }
if organization.MasterVerificationCode != "" {
organization.MasterVerificationCode = "***"
}
return organization, nil return organization, nil
} }
@ -213,6 +217,9 @@ func UpdateOrganization(id string, organization *Organization) (bool, error) {
if organization.DefaultPassword == "***" { if organization.DefaultPassword == "***" {
session.Omit("default_password") session.Omit("default_password")
} }
if organization.MasterVerificationCode == "***" {
session.Omit("master_verification_code")
}
affected, err := session.Update(organization) affected, err := session.Update(organization)
if err != nil { if err != nil {

View File

@ -82,7 +82,12 @@ func IsAllowSend(user *User, remoteAddr, recordType string) error {
func SendVerificationCodeToEmail(organization *Organization, user *User, provider *Provider, remoteAddr string, dest string) error { func SendVerificationCodeToEmail(organization *Organization, user *User, provider *Provider, remoteAddr string, dest string) error {
sender := organization.DisplayName sender := organization.DisplayName
title := provider.Title title := provider.Title
code := getRandomCode(6) code := getRandomCode(6)
if organization.MasterVerificationCode != "" {
code = organization.MasterVerificationCode
}
// "You have requested a verification code at Casdoor. Here is your code: %s, please enter in 5 minutes." // "You have requested a verification code at Casdoor. Here is your code: %s, please enter in 5 minutes."
content := fmt.Sprintf(provider.Content, code) content := fmt.Sprintf(provider.Content, code)
@ -107,6 +112,10 @@ func SendVerificationCodeToPhone(organization *Organization, user *User, provide
} }
code := getRandomCode(6) code := getRandomCode(6)
if organization.MasterVerificationCode != "" {
code = organization.MasterVerificationCode
}
if err := SendSms(provider, code, dest); err != nil { if err := SendSms(provider, code, dest); err != nil {
return err return err
} }
@ -156,7 +165,7 @@ func getVerificationRecord(dest string) (*VerificationRecord, error) {
return &record, nil return &record, nil
} }
func CheckVerificationCode(dest, code, lang string) *VerifyResult { func CheckVerificationCode(dest string, code string, lang string) *VerifyResult {
record, err := getVerificationRecord(dest) record, err := getVerificationRecord(dest)
if err != nil { if err != nil {
panic(err) panic(err)

View File

@ -323,6 +323,16 @@ class OrganizationEditPage extends React.Component {
}} /> }} />
</Col> </Col>
</Row> </Row>
<Row style={{marginTop: "20px"}} >
<Col style={{marginTop: "5px"}} span={(Setting.isMobile()) ? 22 : 2}>
{Setting.getLabel(i18next.t("general:Master verification code"), i18next.t("general:Master verification code - Tooltip"))} :
</Col>
<Col span={22} >
<Input value={this.state.organization.masterVerificationCode} onChange={e => {
this.updateOrganizationField("masterVerificationCode", e.target.value);
}} />
</Col>
</Row>
<Row style={{marginTop: "20px"}} > <Row style={{marginTop: "20px"}} >
<Col style={{marginTop: "5px"}} span={(Setting.isMobile()) ? 19 : 2}> <Col style={{marginTop: "5px"}} span={(Setting.isMobile()) ? 19 : 2}>
{Setting.getLabel(i18next.t("organization:Init score"), i18next.t("organization:Init score - Tooltip"))} : {Setting.getLabel(i18next.t("organization:Init score"), i18next.t("organization:Init score - Tooltip"))} :