diff options
Diffstat (limited to 'routers/user/setting.go')
-rw-r--r-- | routers/user/setting.go | 115 |
1 files changed, 55 insertions, 60 deletions
diff --git a/routers/user/setting.go b/routers/user/setting.go index 347aec4e03..f38f2c1429 100644 --- a/routers/user/setting.go +++ b/routers/user/setting.go @@ -5,12 +5,8 @@ package user import ( - "net/http" "strconv" - "github.com/martini-contrib/render" - "github.com/martini-contrib/sessions" - "github.com/gogits/gogs/models" "github.com/gogits/gogs/modules/auth" "github.com/gogits/gogs/modules/base" @@ -18,20 +14,20 @@ import ( "github.com/gogits/gogs/modules/middleware" ) -func Setting(form auth.UpdateProfileForm, ctx *middleware.Context, r render.Render, data base.TmplData, req *http.Request, session sessions.Session) { - data["Title"] = "Setting" - data["PageIsUserSetting"] = true +func Setting(ctx *middleware.Context, form auth.UpdateProfileForm) { + ctx.Data["Title"] = "Setting" + ctx.Data["PageIsUserSetting"] = true - user := auth.SignedInUser(session) - data["Owner"] = user + user := ctx.User + ctx.Data["Owner"] = user - if req.Method == "GET" { - r.HTML(200, "user/setting", data) + if ctx.Req.Method == "GET" { + ctx.Render.HTML(200, "user/setting", ctx.Data) return } - if hasErr, ok := data["HasError"]; ok && hasErr.(bool) { - r.HTML(200, "user/setting", data) + if hasErr, ok := ctx.Data["HasError"]; ok && hasErr.(bool) { + ctx.Render.HTML(200, "user/setting", ctx.Data) return } @@ -45,20 +41,20 @@ func Setting(form auth.UpdateProfileForm, ctx *middleware.Context, r render.Rend return } - data["IsSuccess"] = true - r.HTML(200, "user/setting", data) + ctx.Data["IsSuccess"] = true + ctx.Render.HTML(200, "user/setting", ctx.Data) } -func SettingPassword(form auth.UpdatePasswdForm, ctx *middleware.Context, r render.Render, data base.TmplData, session sessions.Session, req *http.Request) { - data["Title"] = "Password" - data["PageIsUserSetting"] = true +func SettingPassword(ctx *middleware.Context, form auth.UpdatePasswdForm) { + ctx.Data["Title"] = "Password" + ctx.Data["PageIsUserSetting"] = true - if req.Method == "GET" { - r.HTML(200, "user/password", data) + if ctx.Req.Method == "GET" { + ctx.Render.HTML(200, "user/password", ctx.Data) return } - user := auth.SignedInUser(session) + user := ctx.User newUser := &models.User{Passwd: form.NewPasswd} if err := newUser.EncodePasswd(); err != nil { ctx.Handle(200, "setting.SettingPassword", err) @@ -66,35 +62,34 @@ func SettingPassword(form auth.UpdatePasswdForm, ctx *middleware.Context, r rend } if user.Passwd != newUser.Passwd { - data["HasError"] = true - data["ErrorMsg"] = "Old password is not correct" + ctx.Data["HasError"] = true + ctx.Data["ErrorMsg"] = "Old password is not correct" } else if form.NewPasswd != form.RetypePasswd { - data["HasError"] = true - data["ErrorMsg"] = "New password and re-type password are not same" + ctx.Data["HasError"] = true + ctx.Data["ErrorMsg"] = "New password and re-type password are not same" } else { user.Passwd = newUser.Passwd if err := models.UpdateUser(user); err != nil { ctx.Handle(200, "setting.SettingPassword", err) return } - data["IsSuccess"] = true + ctx.Data["IsSuccess"] = true } - data["Owner"] = user - r.HTML(200, "user/password", data) + ctx.Data["Owner"] = user + ctx.Render.HTML(200, "user/password", ctx.Data) } -func SettingSSHKeys(form auth.AddSSHKeyForm, r render.Render, data base.TmplData, req *http.Request, session sessions.Session) { - data["Title"] = "SSH Keys" +func SettingSSHKeys(ctx *middleware.Context, form auth.AddSSHKeyForm) { + ctx.Data["Title"] = "SSH Keys" // Delete SSH key. - if req.Method == "DELETE" || req.FormValue("_method") == "DELETE" { - println(1) - id, err := strconv.ParseInt(req.FormValue("id"), 10, 64) + if ctx.Req.Method == "DELETE" || ctx.Query("_method") == "DELETE" { + id, err := strconv.ParseInt(ctx.Query("id"), 10, 64) if err != nil { - data["ErrorMsg"] = err + ctx.Data["ErrorMsg"] = err log.Error("ssh.DelPublicKey: %v", err) - r.JSON(200, map[string]interface{}{ + ctx.Render.JSON(200, map[string]interface{}{ "ok": false, "err": err.Error(), }) @@ -102,18 +97,18 @@ func SettingSSHKeys(form auth.AddSSHKeyForm, r render.Render, data base.TmplData } k := &models.PublicKey{ Id: id, - OwnerId: auth.SignedInId(session), + OwnerId: ctx.User.Id, } if err = models.DeletePublicKey(k); err != nil { - data["ErrorMsg"] = err + ctx.Data["ErrorMsg"] = err log.Error("ssh.DelPublicKey: %v", err) - r.JSON(200, map[string]interface{}{ + ctx.Render.JSON(200, map[string]interface{}{ "ok": false, "err": err.Error(), }) } else { - r.JSON(200, map[string]interface{}{ + ctx.Render.JSON(200, map[string]interface{}{ "ok": true, }) } @@ -121,51 +116,51 @@ func SettingSSHKeys(form auth.AddSSHKeyForm, r render.Render, data base.TmplData } // Add new SSH key. - if req.Method == "POST" { - if hasErr, ok := data["HasError"]; ok && hasErr.(bool) { - r.HTML(200, "user/publickey", data) + if ctx.Req.Method == "POST" { + if hasErr, ok := ctx.Data["HasError"]; ok && hasErr.(bool) { + ctx.Render.HTML(200, "user/publickey", ctx.Data) return } - k := &models.PublicKey{OwnerId: auth.SignedInId(session), + k := &models.PublicKey{OwnerId: ctx.User.Id, Name: form.KeyName, Content: form.KeyContent, } if err := models.AddPublicKey(k); err != nil { - data["ErrorMsg"] = err + ctx.Data["ErrorMsg"] = err log.Error("ssh.AddPublicKey: %v", err) - r.HTML(200, "base/error", data) + ctx.Render.HTML(200, "base/error", ctx.Data) return } else { - data["AddSSHKeySuccess"] = true + ctx.Data["AddSSHKeySuccess"] = true } } // List existed SSH keys. - keys, err := models.ListPublicKey(auth.SignedInId(session)) + keys, err := models.ListPublicKey(ctx.User.Id) if err != nil { - data["ErrorMsg"] = err + ctx.Data["ErrorMsg"] = err log.Error("ssh.ListPublicKey: %v", err) - r.HTML(200, "base/error", data) + ctx.Render.HTML(200, "base/error", ctx.Data) return } - data["PageIsUserSetting"] = true - data["Keys"] = keys - r.HTML(200, "user/publickey", data) + ctx.Data["PageIsUserSetting"] = true + ctx.Data["Keys"] = keys + ctx.Render.HTML(200, "user/publickey", ctx.Data) } -func SettingNotification(r render.Render, data base.TmplData) { +func SettingNotification(ctx *middleware.Context) { // todo user setting notification - data["Title"] = "Notification" - data["PageIsUserSetting"] = true - r.HTML(200, "user/notification", data) + ctx.Data["Title"] = "Notification" + ctx.Data["PageIsUserSetting"] = true + ctx.Render.HTML(200, "user/notification", ctx.Data) } -func SettingSecurity(r render.Render, data base.TmplData) { +func SettingSecurity(ctx *middleware.Context) { // todo user setting security - data["Title"] = "Security" - data["PageIsUserSetting"] = true - r.HTML(200, "user/security", data) + ctx.Data["Title"] = "Security" + ctx.Data["PageIsUserSetting"] = true + ctx.Render.HTML(200, "user/security", ctx.Data) } |