#49 - Mise à jour d'une fiche

This commit is contained in:
Damien Broqua 2022-08-30 15:17:14 +02:00
parent 6320764743
commit adea857666
12 changed files with 235 additions and 8 deletions

View file

@ -7,7 +7,8 @@ import AlbumsModel from "../models/albums";
import JobsModel from "../models/jobs";
import UsersModel from "../models/users";
import ErrorEvent from "../libs/error";
// import { uploadFromUrl } from "../libs/aws";
import { getAlbumDetails } from "../helpers";
/**
* Classe permettant la gestion des albums d'un utilisateur
@ -182,6 +183,30 @@ class Albums extends Pages {
}
}
/**
* Méthode permettant de mettre à jour un album
*
* @return {Object}
*/
async patchOne() {
const { itemId: _id } = this.req.params;
const { _id: User } = this.req.user;
const album = await AlbumsModel.findOne({
_id,
User,
});
if (!album) {
throw new ErrorEvent(404, "Impossible de trouver cet album");
}
const values = await getAlbumDetails(album.discogsId);
await album.updateOne(values);
return album;
}
/**
* Méthode permettant de supprimer un élément d'une collection
* @return {Boolean}

View file

@ -47,6 +47,16 @@ router
router
.route("/:itemId")
.patch(ensureLoggedIn("/connexion"), async (req, res, next) => {
try {
const albums = new Albums(req);
const data = await albums.patchOne();
sendResponse(req, res, data);
} catch (err) {
next(err);
}
})
.delete(ensureLoggedIn("/connexion"), async (req, res, next) => {
try {
const albums = new Albums(req);