summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Manuel <nilslice@gmail.com>2016-10-22 03:37:45 -0700
committerSteve Manuel <nilslice@gmail.com>2016-10-22 03:37:45 -0700
commit7651c4ad4103491c142f496075effbfd432cd7a2 (patch)
treea7844614a8ede29ef85ccf4253b505f258591c4b
parentfe16823a16cf32a26098db4e58e925e7179c9b98 (diff)
need to update token in cookie after user changes their email
-rw-r--r--system/admin/handlers.go26
1 files changed, 26 insertions, 0 deletions
diff --git a/system/admin/handlers.go b/system/admin/handlers.go
index 5872436..fd17a5c 100644
--- a/system/admin/handlers.go
+++ b/system/admin/handlers.go
@@ -312,6 +312,32 @@ func configUsersEditHandler(res http.ResponseWriter, req *http.Request) {
return
}
+ // create new token
+ week := time.Now().Add(time.Hour * 24 * 7)
+ claims := map[string]interface{}{
+ "exp": week,
+ "user": updatedUser.Email,
+ }
+ token, err := jwt.New(claims)
+ if err != nil {
+ fmt.Println(err)
+ res.WriteHeader(http.StatusInternalServerError)
+ errView, err := Error500()
+ if err != nil {
+ return
+ }
+
+ res.Write(errView)
+ return
+ }
+
+ // add it to cookie +1 week expiration
+ http.SetCookie(res, &http.Cookie{
+ Name: "_token",
+ Value: token,
+ Expires: week,
+ })
+
http.Redirect(res, req, strings.TrimSuffix(req.URL.String(), "/edit"), http.StatusFound)
default: