mirror of
https://gitlab.com/comunic/comunicapiv2
synced 2025-06-21 09:05:17 +00:00
Can check security answers
This commit is contained in:
@ -3,6 +3,7 @@ import { APIClient } from "../entities/APIClient";
|
||||
import { UserLoginTokens } from "../entities/UserLoginTokens";
|
||||
import { DatabaseHelper } from "./DatabaseHelper";
|
||||
import { UserHelper } from "./UserHelper";
|
||||
import { time } from "../utils/DateUtils";
|
||||
|
||||
/**
|
||||
* Account helper
|
||||
@ -205,4 +206,29 @@ export class AccountHelper {
|
||||
|
||||
return foundUser < 1 || userID == foundUser;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a new token to reset an account password
|
||||
*
|
||||
* @param userID Target user ID
|
||||
* @returns Generated token
|
||||
*/
|
||||
public static async GenerateNewPasswordResetToken(userID: number) : Promise<string> {
|
||||
|
||||
// Generate a token
|
||||
const token = randomStr(255);
|
||||
|
||||
await DatabaseHelper.UpdateRows({
|
||||
table: USER_TABLE,
|
||||
where: {
|
||||
ID: userID
|
||||
},
|
||||
set: {
|
||||
password_reset_token: token,
|
||||
password_reset_token_time_create: time()
|
||||
}
|
||||
});
|
||||
|
||||
return token;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user