User edit
This commit is contained in:
@ -6,10 +6,13 @@ import (
|
||||
"github.com/kataras/iris/v12"
|
||||
)
|
||||
|
||||
func GetUsersPage(ctx iris.Context) {
|
||||
params1 := []string{"param 1", "param 2", "param 3"}
|
||||
ctx.ViewData("params1", params1)
|
||||
type editUserForm struct {
|
||||
FirstName string `form:"first-name"`
|
||||
LastName string `form:"last-name"`
|
||||
Email string `form:"email"`
|
||||
}
|
||||
|
||||
func GetUsersPage(ctx iris.Context) {
|
||||
userRepository := repository.Dao.UsersRepository
|
||||
|
||||
pagination := repository.NewPagination()
|
||||
@ -18,7 +21,8 @@ func GetUsersPage(ctx iris.Context) {
|
||||
repository.NewOrdering("last_name", repository.ORDERING_ASC),
|
||||
}
|
||||
|
||||
users := userRepository.List(&repository.UserFilter{}, &pagination, &ordering)
|
||||
isActive := true
|
||||
users := userRepository.List(&repository.UserFilter{IsActive: &isActive}, &pagination, &ordering)
|
||||
|
||||
ctx.ViewData("users", users)
|
||||
|
||||
@ -27,3 +31,42 @@ func GetUsersPage(ctx iris.Context) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func EditUserPage(ctx iris.Context) {
|
||||
userId := ctx.Params().Get("userId")
|
||||
userRepository := repository.Dao.UsersRepository
|
||||
|
||||
filter := repository.UserFilter{Id: &userId}
|
||||
user := userRepository.Get(&filter)
|
||||
|
||||
ctx.ViewData("user", user)
|
||||
ctx.ViewData("currentPath", ctx.Path())
|
||||
|
||||
if err := ctx.View("pages/user-edit.jet"); err != nil {
|
||||
showError(ctx, err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func SaveUserPage(ctx iris.Context) {
|
||||
var form editUserForm
|
||||
err := ctx.ReadForm(&form)
|
||||
if err != nil {
|
||||
ctx.StopWithError(iris.StatusBadRequest, err)
|
||||
return
|
||||
}
|
||||
|
||||
userId := ctx.Params().Get("userId")
|
||||
userRepository := repository.Dao.UsersRepository
|
||||
|
||||
filter := repository.UserFilter{Id: &userId}
|
||||
user := userRepository.Get(&filter)
|
||||
|
||||
user.FirstName = form.FirstName
|
||||
user.LastName = form.LastName
|
||||
user.Email = form.Email
|
||||
|
||||
userRepository.Save(user)
|
||||
|
||||
ctx.Redirect("/users")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user