ajout login verif si login et password correspondent a un compte

pull/6/head
Hugo PRADIER 11 months ago committed by clfreville2
parent 5c03632ff4
commit 2ced946d16

@ -49,9 +49,9 @@ export function getDB<T>(
db: sqlite3.Database,
query: string,
params: any[],
): Promise<T[]> {
): Promise<T> {
return new Promise((resolve, reject) => {
db.get(query, params, (err, row: any) => {
db.get(query, params, (err, row: T) => {
if (err) {
reject(err);
} else {
@ -138,6 +138,27 @@ export async function insertUser(
}
}
/* Vérifier si un utilisateur existe dans la table registered_user */
export async function verifyUser(
db: sqlite3.Database,
login: string
): Promise<User | null> {
const verifyUserQuery = `SELECT login, password FROM registered_user WHERE login = ?`;
const res = await getDB<User>(db, verifyUserQuery, [login]);
if (!res) {
return null;
} else {
return res;
}
}
export type User = {
login: string;
password: string;
};
/* Modifier le login d'un utilisateur dans la table registered_user */
export function updateUserLogin(
db: sqlite3.Database,

@ -187,6 +187,29 @@ fastify.post(
}
);
/* Route pour vérifier si un utilisateur existe */
fastify.post(
"/users/login",
{
schema: {
body: Type.Object({
login: Type.String(),
password: Type.String(),
}),
},
},
async (request, reply) => {
const { login, password } = request.body;
const user = await db.verifyUser(database, login);
if (user === null || user.password !== password) {
reply.send({ success: false });
} else {
reply.send({ success: true });
}
}
);
/* Route pour mettre à jour le login d'un utilisateur */
fastify.put(
"/users/:id/login",

Loading…
Cancel
Save