@@ -45,8 +45,7 @@ export class UserController extends AdaptableController {
4545 // TODO: Better error here.
4646 throw undefined ;
4747 }
48- let database = this . config . database . WithoutValidation ( ) ;
49- return database . update ( '_User' , {
48+ return this . config . database . update ( '_User' , {
5049 username : username ,
5150 _email_verify_token : token
5251 } , { emailVerified : true } ) . then ( document => {
@@ -58,8 +57,7 @@ export class UserController extends AdaptableController {
5857 }
5958
6059 checkResetTokenValidity ( username , token ) {
61- let database = this . config . database . WithoutValidation ( ) ;
62- return database . find ( '_User' , {
60+ return this . config . database . find ( '_User' , {
6361 username : username ,
6462 _perishable_token : token
6563 } , { limit : 1 } ) . then ( results => {
@@ -114,9 +112,7 @@ export class UserController extends AdaptableController {
114112 }
115113
116114 setPasswordResetToken ( email ) {
117- let token = randomString ( 25 ) ;
118- let database = this . config . database . WithoutValidation ( ) ;
119- return database . update ( '_User' , { email : email } , { _perishable_token : token } ) ;
115+ return this . config . database . update ( '_User' , { email } , { _perishable_token : randomString ( 25 ) } , { } , true )
120116 }
121117
122118 sendPasswordResetEmail ( email ) {
@@ -126,8 +122,8 @@ export class UserController extends AdaptableController {
126122 return ;
127123 }
128124
129- return this . setPasswordResetToken ( email ) . then ( ( user ) => {
130-
125+ return this . setPasswordResetToken ( email )
126+ . then ( user => {
131127 const token = encodeURIComponent ( user . _perishable_token ) ;
132128 const username = encodeURIComponent ( user . username ) ;
133129 let link = `${ this . config . requestResetPasswordURL } ?token=${ token } &username=${ username } `
@@ -149,14 +145,12 @@ export class UserController extends AdaptableController {
149145 }
150146
151147 updatePassword ( username , token , password , config ) {
152- return this . checkResetTokenValidity ( username , token ) . then ( ( user ) => {
153- return updateUserPassword ( user . objectId , password , this . config ) ;
154- } ) . then ( ( ) => {
155- // clear reset password token
156- return this . config . database . WithoutValidation ( ) . update ( '_User' , { username } , {
157- _perishable_token : { __op : 'Delete' }
158- } ) ;
159- } ) ;
148+ return this . checkResetTokenValidity ( username , token )
149+ . then ( user => updateUserPassword ( user . objectId , password , this . config ) )
150+ // clear reset password token
151+ . then ( ( ) => this . config . database . update ( '_User' , { username } , {
152+ _perishable_token : { __op : 'Delete' }
153+ } ) ) ;
160154 }
161155
162156 defaultVerificationEmail ( { link, user, appName, } ) {
0 commit comments