Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMHSanaei <ho3ein.sanaei@gmail.com>2023-04-21 18:30:14 +0300
committerMHSanaei <ho3ein.sanaei@gmail.com>2023-04-21 18:30:14 +0300
commitb0f974a94db8508c7c77db18c89cd0ef3497f879 (patch)
tree74bc894455da45eab58a051a81b1ae320ea09254 /web/controller/setting.go
parent6bebde410529c068b2458ee21a03127728a8c6ae (diff)
secret token thanks to @HarlyquinForest
Diffstat (limited to 'web/controller/setting.go')
-rw-r--r--web/controller/setting.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/web/controller/setting.go b/web/controller/setting.go
index 1de55ab6..2726c228 100644
--- a/web/controller/setting.go
+++ b/web/controller/setting.go
@@ -17,6 +17,10 @@ type updateUserForm struct {
NewPassword string `json:"newPassword" form:"newPassword"`
}
+type updateSecretForm struct {
+ LoginSecret string `json:"loginSecret" form:"loginSecret"`
+}
+
type SettingController struct {
settingService service.SettingService
userService service.UserService
@@ -38,6 +42,8 @@ func (a *SettingController) initRouter(g *gin.RouterGroup) {
g.POST("/updateUser", a.updateUser)
g.POST("/restartPanel", a.restartPanel)
g.GET("/getDefaultJsonConfig", a.getDefaultJsonConfig)
+ g.POST("/updateUserSecret", a.updateSecret)
+ g.POST("/getUserSecret", a.getUserSecret)
}
func (a *SettingController) getAllSetting(c *gin.Context) {
@@ -128,3 +134,25 @@ func (a *SettingController) restartPanel(c *gin.Context) {
err := a.panelService.RestartPanel(time.Second * 3)
jsonMsg(c, I18n(c, "pages.setting.restartPanel"), err)
}
+
+func (a *SettingController) updateSecret(c *gin.Context) {
+ form := &updateSecretForm{}
+ err := c.ShouldBind(form)
+ if err != nil {
+ jsonMsg(c, I18n(c, "pages.setting.toasts.modifySetting"), err)
+ }
+ user := session.GetLoginUser(c)
+ err = a.userService.UpdateUserSecret(user.Id, form.LoginSecret)
+ if err == nil {
+ user.LoginSecret = form.LoginSecret
+ session.SetLoginUser(c, user)
+ }
+ jsonMsg(c, I18n(c, "pages.setting.toasts.modifyUser"), err)
+}
+func (a *SettingController) getUserSecret(c *gin.Context) {
+ loginUser := session.GetLoginUser(c)
+ user := a.userService.GetUserSecret(loginUser.Id)
+ if user != nil {
+ jsonObj(c, user, nil)
+ }
+}