Added user editing for admins
This commit is contained in:
parent
18831ddf6a
commit
a8379ddc8c
@ -203,6 +203,7 @@ func Configure(app *aero.Application) {
|
||||
l.Page("/user/:nick/animelist/anime/:id", animelistitem.Get)
|
||||
l.Page("/user/:nick/recommended/anime", recommended.Anime)
|
||||
l.Page("/user/:nick/notifications", notifications.ByUser)
|
||||
l.Page("/user/:nick/edit", user.Edit)
|
||||
|
||||
// Anime list
|
||||
l.Page("/user/:nick/animelist/watching", animelist.FilterByStatus(arn.AnimeListStatusWatching))
|
||||
|
28
pages/user/edit.go
Normal file
28
pages/user/edit.go
Normal file
@ -0,0 +1,28 @@
|
||||
package user
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/aerogo/aero"
|
||||
"github.com/animenotifier/arn"
|
||||
"github.com/animenotifier/notify.moe/utils"
|
||||
"github.com/animenotifier/notify.moe/utils/editform"
|
||||
)
|
||||
|
||||
// Edit user.
|
||||
func Edit(ctx *aero.Context) string {
|
||||
nick := ctx.Get("nick")
|
||||
user := utils.GetUser(ctx)
|
||||
|
||||
if user == nil || user.Role != "admin" {
|
||||
return ctx.Error(http.StatusUnauthorized, "Not logged in or not auhorized to edit this user", nil)
|
||||
}
|
||||
|
||||
viewUser, err := arn.GetUserByNick(nick)
|
||||
|
||||
if err != nil {
|
||||
return ctx.Error(http.StatusNotFound, "User not found", err)
|
||||
}
|
||||
|
||||
return ctx.HTML(editform.Render(viewUser, "Edit user", user))
|
||||
}
|
@ -354,6 +354,7 @@ var routeTests = map[string][]string{
|
||||
"/animelist/dropped": nil,
|
||||
"/notifications": nil,
|
||||
"/user/:nick/notifications": nil,
|
||||
"/user/:nick/edit": nil,
|
||||
"/api/test/notification": nil,
|
||||
"/api/paypal/payment/create": nil,
|
||||
"/api/userfollows/:id/get/:item": nil,
|
||||
|
Loading…
Reference in New Issue
Block a user