From 4ef2c6e693fe8b4b60b84eb375a48562914d3ef8 Mon Sep 17 00:00:00 2001
From: Gustavo Soviersovski <gustavo.as1997@hotmail.com>
Date: Tue, 26 Sep 2017 10:59:23 -0300
Subject: [PATCH] Expiring resetToken and passwordChange request working

---
 src/libs/models/resetToken.js | 3 ++-
 src/libs/models/user.js       | 4 ++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/libs/models/resetToken.js b/src/libs/models/resetToken.js
index abed97ca..db5842f3 100644
--- a/src/libs/models/resetToken.js
+++ b/src/libs/models/resetToken.js
@@ -23,7 +23,8 @@ let ResetToken = new Schema({
     createdAt: {
         type: Date,
         required: true,
-        default: Date.now
+        default: Date.now,
+        expires: 86400 //Seconds in a Day
     }
 });
 
diff --git a/src/libs/models/user.js b/src/libs/models/user.js
index 95b58073..7857bec4 100644
--- a/src/libs/models/user.js
+++ b/src/libs/models/user.js
@@ -74,11 +74,11 @@ var UserSchema = new Schema({
 });
 
 UserSchema.methods.encryptPassword = function(password) {
-    return crypto.pbkdf2Sync(password, this.salt, 10000, 512, 'sha512');
+    return crypto.pbkdf2Sync(password+'', this.salt, 10000, 512, 'sha512');
 };
 
 UserSchema.virtual('password').set(function(password) {
-    this._plainPassword = password;
+    this._plainPassword = password+'';
     this.salt = crypto.randomBytes(128).toString('hex');
     this.hashedPassword = this.encryptPassword(password).toString('hex');
 }).get(function() {
-- 
GitLab