diff options
Diffstat (limited to 'server.go')
| -rw-r--r-- | server.go | 18 |
1 files changed, 18 insertions, 0 deletions
@@ -57,3 +57,21 @@ func ExecTemplate(template string, w http.ResponseWriter, flash Flash) error { } return nil } + +func ChangePassword(email, oldPassword, newPassword string) error { + if !ValidateEmail(email) { + return errors.New("This doesn't look like a mail adress.") + } + + vU := VirtualUser{Email: email, Password: oldPassword} + + if !vU.AuthUser() { + return errors.New("User/password does not match.") + } + + if !vU.UpdatePassword(newPassword) { + return errors.New("There was an error.") + } + + return nil +} |
