reglement problemes

master
Darius BERTRAND 2 years ago
parent e0372627df
commit 5f85798942

@ -3,7 +3,7 @@ import { useSelector, useDispatch } from 'react-redux';
import PLUS from "../../assets/img/plus.png";
import { NavLink } from "react-router-dom";
import axios from "axios";
import { uploadPicture } from '../../actions/user.actions';
import { getUser, uploadPicture } from '../../actions/user.actions';
import { useParams } from 'react-router-dom';
import { UidContext } from '../AppContext';
@ -16,6 +16,9 @@ const ConfigurationDuProfil = ()=>{
const [tmpAffichageImage, setTmpAffichageImage]=useState(PLUS);
const [displayAdd, setDisplayAdd] = useState(false);
const [message, setMessage] = useState('');
const dispatch=useDispatch();
const handleLoadFile=(e)=>{
const file=e.target.files[0];
@ -35,6 +38,21 @@ const ConfigurationDuProfil = ()=>{
console.log(tmpImage);
};
const handleUpdatePseudo=(e)=>{
e.preventDefault();
console.log(userData.pseudo);
axios
.put(`${process.env.REACT_APP_API_URL}api/user/update/`+ userData._id , { pseudo })
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
});
dispatch(getUser);
}
const handleTPM =()=> {
console.log("test");
console.log(tmpImage);
@ -44,6 +62,7 @@ const ConfigurationDuProfil = ()=>{
const handleUpdate = async (e) => {
e.preventDefault();
try {
await axios.patch( `${process.env.REACT_APP_API_URL}api/user/${userData.id}/image`, tmpImage);
setMessage("Image de profil mise à jour avec succès!");
@ -54,26 +73,7 @@ const ConfigurationDuProfil = ()=>{
userPicture(tmpAffichageImage);
console.log(userPicture);
setDisplayAdd(false);
//const pseudoError = document.querySelector(".pseudo.error");
/* const pictureError =document.querySelector(".picture.error");
await axios({
method: "post",
url: `${process.env.REACT_APP_API_URL}api/user/upload`,
data: {
// pseudo,
userPicture,
}
,
})
.then((res) => {
console.log(res);
if (res.data.errors) {
//pseudoError.innerHTML = res.data.errors.pseudo;
pictureError.innerHTML = res.data.errors.picture;
}
})
.catch((err) => console.log(err));*/
};
@ -115,7 +115,7 @@ const ConfigurationDuProfil = ()=>{
</div>
<button type='submit' className='buttonValidationChangements' id='update' value='update' >Valider</button>
<button type='submit' className='buttonValidationChangements' id='update' value='update' onClick={handleUpdatePseudo}>Valider</button>
</div>
</div>
</form>
@ -138,7 +138,6 @@ const ConfigurationDuProfil = ()=>{
</div>
<div className='profile-pic '>
<label className="-label" for="file">
<span className="camera"></span>
<span>Changer</span>
</label>
<input type="file" id="file" name='file' accept=".jpg, .jpeg, .png" onChange={handleLoadFile}/> {/*onChange={handleLoadFile} onChange={(e)=> setTmpImage(e.target.files[0].name)} */}

@ -145,7 +145,7 @@ const Profil = () => {
<div>
<div>
<div className="imageProfil">
<img className="image" src={userData.picture}/>
<img className="image" src={userData.picture.data}/>
</div>
<div className="divPseudo">
<h3 className="pseudo">{userData.pseudo}</h3>

@ -1,6 +1,6 @@
const UserModel = require("../models/user.model");
const ObjectID = require("mongoose").Types.ObjectId;
const bcrypt = require('bcrypt');
//-password pour ne pas donner le password
module.exports.getAllUsers = async (req, res) => {
@ -46,25 +46,39 @@ module.exports.updateUser = async (req, res) => {
return res.status(500).json({ message: err });
}
};
module.exports.compteUpdatePseudo= async (req,res)=>{
try {
console.log("test Change Pseudo");
const updatedUser = await UserModel.findByIdAndUpdate(
{ _id: req.params.id },
{
$set: {
pseudo: req.body.pseudo,
}
},
{ runValidators: true, new: true}
);
res.status(200).json({ message: "User updated successfully", data: updatedUser });
} catch (err) {
return res.status(500).json({ message: err });
}
}
module.exports.compteUpdatePseudo = async (req, res) => {
module.exports.compteUpdateEmail= async (req, res) => {
try {
console.log("test1");
console.log(req.body.email);
console.log(req.body.password);
console.log(req.params.id);
/*if (!UserModel.isValid(req.params.id)) {
return res.status(400).send("ID unknown : " + req.params.id);
}
*/
console.log("test");
console.log("test Change mail");
const salt = await bcrypt.genSalt();
const updatedUser = await UserModel.findByIdAndUpdate(
{ _id: req.params.id },
{
$set: {
email: req.body.email,
password: req.body.password,
password: password = await bcrypt.hash(req.body.password, salt),
}
},
{ runValidators: true, new: true}

@ -25,6 +25,7 @@ router.patch('/notif/:id', userController.getNotif);
router.patch('/:id/image', userController.saveImage);
router.get('/:id/image',userController.getImage);
router.put('/update/:id',userController.compteUpdatePseudo);
router.put('/update/:id',userController.compteUpdatePseudo);
//upload pb avec postman
//router.post("/upload", upload.single('file'), uploadController.uploadProfil);

Loading…
Cancel
Save