summaryrefslogtreecommitdiff
path: root/server.go
diff options
context:
space:
mode:
Diffstat (limited to 'server.go')
-rw-r--r--server.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/server.go b/server.go
index 6447dc9..9c20797 100644
--- a/server.go
+++ b/server.go
@@ -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
+}