Save settings on user registration
This commit is contained in:
parent
b357835ed8
commit
f004899f2f
10
api/users.go
10
api/users.go
|
@ -70,6 +70,8 @@ type UploadedUser struct {
|
||||||
Kind string
|
Kind string
|
||||||
Email string
|
Email string
|
||||||
Password string
|
Password string
|
||||||
|
Language string `json:"lang,omitempty"`
|
||||||
|
Newsletter bool `json:"wantReceiveUpdate,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func genUsername(user *happydns.User) (toName string) {
|
func genUsername(user *happydns.User) (toName string) {
|
||||||
|
@ -163,7 +165,12 @@ func registerUser(opts *config.Options, p httprouter.Params, body io.Reader) Res
|
||||||
return APIErrorResponse{
|
return APIErrorResponse{
|
||||||
err: err,
|
err: err,
|
||||||
}
|
}
|
||||||
} else if err := storage.MainStore.CreateUser(user); err != nil {
|
} else {
|
||||||
|
user.Settings = *happydns.DefaultUserSettings()
|
||||||
|
user.Settings.Language = uu.Language
|
||||||
|
user.Settings.Newsletter = uu.Newsletter
|
||||||
|
|
||||||
|
if err := storage.MainStore.CreateUser(user); err != nil {
|
||||||
return APIErrorResponse{
|
return APIErrorResponse{
|
||||||
err: err,
|
err: err,
|
||||||
}
|
}
|
||||||
|
@ -177,6 +184,7 @@ func registerUser(opts *config.Options, p httprouter.Params, body io.Reader) Res
|
||||||
response: user,
|
response: user,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func specialUserOperations(opts *config.Options, p httprouter.Params, body io.Reader) Response {
|
func specialUserOperations(opts *config.Options, p httprouter.Params, body io.Reader) Response {
|
||||||
|
|
|
@ -35,6 +35,20 @@ import ()
|
||||||
|
|
||||||
// UserSettings represents the settings for an account.
|
// UserSettings represents the settings for an account.
|
||||||
type UserSettings struct {
|
type UserSettings struct {
|
||||||
|
// Language saves the locale defined by the user.
|
||||||
Language string `json:"language,omitempty"`
|
Language string `json:"language,omitempty"`
|
||||||
|
|
||||||
|
// Newsletter indicates wether the user wants to receive the newsletter or not.
|
||||||
|
Newsletter bool `json:"newsletter,omitempty"`
|
||||||
|
|
||||||
|
// FieldHint stores the way form hints are displayed.
|
||||||
FieldHint int `json:"fieldhint"`
|
FieldHint int `json:"fieldhint"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func DefaultUserSettings() *UserSettings {
|
||||||
|
return &UserSettings{
|
||||||
|
Language: "en",
|
||||||
|
Newsletter: false,
|
||||||
|
FieldHint: 2,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user