aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/ui/form/user.go
diff options
context:
space:
mode:
Diffstat (limited to 'server/ui/form/user.go')
-rw-r--r--server/ui/form/user.go23
1 files changed, 15 insertions, 8 deletions
diff --git a/server/ui/form/user.go b/server/ui/form/user.go
index 1197b48..5319cb8 100644
--- a/server/ui/form/user.go
+++ b/server/ui/form/user.go
@@ -5,11 +5,13 @@
package form
import (
- "errors"
- "github.com/miniflux/miniflux2/model"
"net/http"
+
+ "github.com/miniflux/miniflux2/errors"
+ "github.com/miniflux/miniflux2/model"
)
+// UserForm represents the user form.
type UserForm struct {
Username string
Password string
@@ -17,40 +19,43 @@ type UserForm struct {
IsAdmin bool
}
+// ValidateCreation validates user creation.
func (u UserForm) ValidateCreation() error {
if u.Username == "" || u.Password == "" || u.Confirmation == "" {
- return errors.New("All fields are mandatory.")
+ return errors.NewLocalizedError("All fields are mandatory.")
}
if u.Password != u.Confirmation {
- return errors.New("Passwords are not the same.")
+ return errors.NewLocalizedError("Passwords are not the same.")
}
if len(u.Password) < 6 {
- return errors.New("You must use at least 6 characters.")
+ return errors.NewLocalizedError("You must use at least 6 characters.")
}
return nil
}
+// ValidateModification validates user modification.
func (u UserForm) ValidateModification() error {
if u.Username == "" {
- return errors.New("The username is mandatory.")
+ return errors.NewLocalizedError("The username is mandatory.")
}
if u.Password != "" {
if u.Password != u.Confirmation {
- return errors.New("Passwords are not the same.")
+ return errors.NewLocalizedError("Passwords are not the same.")
}
if len(u.Password) < 6 {
- return errors.New("You must use at least 6 characters.")
+ return errors.NewLocalizedError("You must use at least 6 characters.")
}
}
return nil
}
+// ToUser returns a User from the form values.
func (u UserForm) ToUser() *model.User {
return &model.User{
Username: u.Username,
@@ -59,6 +64,7 @@ func (u UserForm) ToUser() *model.User {
}
}
+// Merge updates the fields of the given user.
func (u UserForm) Merge(user *model.User) *model.User {
user.Username = u.Username
user.IsAdmin = u.IsAdmin
@@ -70,6 +76,7 @@ func (u UserForm) Merge(user *model.User) *model.User {
return user
}
+// NewUserForm returns a new UserForm.
func NewUserForm(r *http.Request) *UserForm {
return &UserForm{
Username: r.FormValue("username"),