Skip to content
Snippets Groups Projects
Commit 6b20bf66 authored by Bastien's avatar Bastien
Browse files

fonctions modif mdp

parent 57aa8dbd
No related branches found
No related tags found
No related merge requests found
...@@ -159,3 +159,14 @@ exports.getUserSeenMovies= async (req, res, next) => { ...@@ -159,3 +159,14 @@ exports.getUserSeenMovies= async (req, res, next) => {
// }); // });
// return updateResult; // return updateResult;
// } // }
exports.changeUserPassword = async (req,res,next) => {
let username = req.session.username;
let newPassword = req.body.newPassword;
try {
await userServices.changeUserPassword(username,newPassword)
res.status(200).json({ message: 'Mot de passe modifié' });
} catch (error) {
res.status(500).json({ error : error.toString()});
}
}
...@@ -90,3 +90,26 @@ exports.getUserSeenMovies = (username) => { ...@@ -90,3 +90,26 @@ exports.getUserSeenMovies = (username) => {
}) })
}; };
/**
* Met à jour le mot de passe d'un utilisateur dans la base de données.
*
* @param {string} username - Le nom d'utilisateur de l'utilisateur dont le mot de passe doit être modifié.
* @param {string} newPasswordHash - Le nouveau mot de passe hashé de l'utilisateur.
* @returns {Promise<Object>} Une promesse qui se résout avec un objet contenant des informations sur l'opération de modification du mot de passe.
* La promesse se rejette avec une erreur si l'opération échoue.
*/
exports.changeUserPassword = (username, newPasswordHash) => {
return new Promise((resolve, reject) => {
db.query('UPDATE Utilisateur set mdp = ? WHERE login=?',
[newPasswordHash, username],
function (error, results, fields) {
if (error) {
return reject(error);
}
else {
return resolve(results);
}
})
})
}
...@@ -82,4 +82,22 @@ exports.getUserSeenMovies = async (username) => { ...@@ -82,4 +82,22 @@ exports.getUserSeenMovies = async (username) => {
catch (error) { catch (error) {
throw new Error(error); throw new Error(error);
} }
}
/**
* Modifie le mot de passe d'un utilisateur dans la base de données.
*
* @param {string} username - Le nom d'utilisateur de l'utilisateur dont le mot de passe doit être modifié.
* @param {string} newPassword - Le nouveau mot de passe de l'utilisateur.
* @returns {Promise<Object>} Une promesse qui se résout avec un objet contenant des informations sur l'opération de modification du mot de passe.
* La promesse se rejette avec une erreur si l'opération échoue.
*/
exports.changeUserPassword = async (username, newPassword) => {
try {
const hash = await bcrypt.hash(newPassword, 10);
return await userDb.changeUserPassword(username,hash)
} catch (error) {
throw new Error(error);
}
} }
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment