Move media to sql
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
import { type Request, type Response } from "express";
|
||||
import UserModel, { values } from '../models/userModel';
|
||||
import { GameModel } from '../models/mediaModel';
|
||||
import MediaModel, { Table } from '../models/mediaModel';
|
||||
|
||||
export default {
|
||||
|
||||
list: function (req: Request, res: Response) {
|
||||
GameModel.find({}, { __v: 0 })
|
||||
MediaModel.find(Table.games)
|
||||
.then(games => {
|
||||
return res.json(games);
|
||||
})
|
||||
@@ -28,7 +28,7 @@ export default {
|
||||
}
|
||||
|
||||
try {
|
||||
const gameFound = await GameModel.findOne({ code: gameCode });
|
||||
const gameFound = await MediaModel.findOne(Table.games, gameCode);
|
||||
if (gameFound) {
|
||||
return res.status(409).json({ message: 'Game already exists' });
|
||||
}
|
||||
@@ -73,14 +73,14 @@ export default {
|
||||
)
|
||||
const coverData = await response.json()
|
||||
|
||||
const game = new GameModel({
|
||||
const game = {
|
||||
code: gameCode,
|
||||
title: gameData[0].name,
|
||||
released: dateStr,
|
||||
webImg: `https://images.igdb.com/igdb/image/upload/t_cover_big/${coverData[0].image_id}.jpg`,
|
||||
});
|
||||
};
|
||||
|
||||
const savedGame = await game.save();
|
||||
const savedGame = await MediaModel.save(Table.games, game.code, game.title, game.released, game.webImg);
|
||||
return res.status(201).json(game);
|
||||
|
||||
} catch (error) {
|
||||
@@ -90,10 +90,10 @@ export default {
|
||||
},
|
||||
|
||||
remove: async function (req: Request, res: Response) {
|
||||
const id = req.body.code;
|
||||
const code = req.body.code;
|
||||
|
||||
try {
|
||||
const movie = await GameModel.findOneAndDelete({ code: id });
|
||||
const movie = await MediaModel.findOneAndDelete(Table.games, code);
|
||||
if (!movie) {
|
||||
return res.status(404).json({ message: 'No such game' });
|
||||
}
|
||||
|
@@ -1,6 +1,6 @@
|
||||
import { type Request, type Response } from "express";
|
||||
import UserModel, { values } from '../models/userModel';
|
||||
import { MovieModel, SeriesModel } from '../models/mediaModel';
|
||||
import MediaModel, { Table } from '../models/mediaModel';
|
||||
|
||||
/**
|
||||
* mediaController.js
|
||||
@@ -13,9 +13,9 @@ export default {
|
||||
* mediaController.list()
|
||||
*/
|
||||
list: function (req: Request, res: Response) {
|
||||
const MediaModel = req.baseUrl.includes('movies') ? MovieModel : SeriesModel;
|
||||
const mediaTable = req.baseUrl.includes('movies') ? Table.movies : Table.series;
|
||||
|
||||
MediaModel.find({}, { __v: 0 })
|
||||
MediaModel.find(mediaTable)
|
||||
.then(media => {
|
||||
return res.json(media);
|
||||
})
|
||||
@@ -40,8 +40,8 @@ export default {
|
||||
}
|
||||
|
||||
try {
|
||||
const MediaModel = req.baseUrl.includes('movies') ? MovieModel : SeriesModel;
|
||||
const mediaFound = await MediaModel.findOne({ code: mediaCode });
|
||||
const mediaTable = req.baseUrl.includes('movies') ? Table.movies : Table.series;
|
||||
const mediaFound = await MediaModel.findOne(mediaTable, mediaCode);
|
||||
if (mediaFound) {
|
||||
return res.status(409).json({ message: 'Media already exists' });
|
||||
}
|
||||
@@ -54,14 +54,14 @@ export default {
|
||||
return res.status(404).json({ message: 'wrong code' });
|
||||
}
|
||||
|
||||
const media = new MediaModel({
|
||||
const media = {
|
||||
code: mediaCode,
|
||||
title: mData.Title,
|
||||
released: mData.Released,
|
||||
webImg: mData.Poster,
|
||||
});
|
||||
};
|
||||
|
||||
const savedMedia = await media.save();
|
||||
const savedMedia = await MediaModel.save(mediaTable, mediaCode, mData.Title, mData.Released, mData.Poster);
|
||||
return res.status(201).json(media);
|
||||
} catch (err) {
|
||||
return res.status(500).json({ message: 'Error when creating media' });
|
||||
@@ -72,12 +72,11 @@ export default {
|
||||
* mediaController.delete()
|
||||
*/
|
||||
remove: async function (req: Request, res: Response) {
|
||||
const id = req.body.code;
|
||||
const code = req.body.code;
|
||||
|
||||
try {
|
||||
|
||||
const MediaModel = req.baseUrl.includes('movies') ? MovieModel : SeriesModel;
|
||||
const media = await MediaModel.findOneAndDelete({ code: id });
|
||||
const mediaTable = req.baseUrl.includes('movies') ? Table.movies : Table.series;
|
||||
const media = await MediaModel.findOneAndDelete(mediaTable, code);
|
||||
if (!media) {
|
||||
return res.status(404).json({ message: 'No such media' });
|
||||
}
|
||||
|
Reference in New Issue
Block a user