Podpora za srije modele in controllereje skupaj
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
var UserModel = require('../models/userModel');
|
||||
var GameModel = require('../models/gameModel');
|
||||
var { GameModel } = require('../models/mediaModel');
|
||||
|
||||
|
||||
module.exports = {
|
||||
@@ -35,7 +35,7 @@ module.exports = {
|
||||
return res.status(409).json({ message: 'Game already exists' });
|
||||
}
|
||||
|
||||
const uri = "https://id.twitch.tv/oauth2/token?client_id=" +userFound.client_id+ "&client_secret=" + userFound.client_secret+ "&grant_type=client_credentials";
|
||||
const uri = "https://id.twitch.tv/oauth2/token?client_id=" + userFound.client_id + "&client_secret=" + userFound.client_secret + "&grant_type=client_credentials";
|
||||
var response = await fetch(uri, { method: 'POST' });
|
||||
var mData = await response.json();
|
||||
|
||||
@@ -59,7 +59,7 @@ module.exports = {
|
||||
if (gameData.length == 0) {
|
||||
return res.status(404).json({ message: 'wrong code' });
|
||||
}
|
||||
|
||||
|
||||
var date = new Date(gameData[0].first_release_date * 1000);
|
||||
const options = { day: 'numeric', month: 'short', year: 'numeric' }
|
||||
var dateStr = date.toLocaleDateString(undefined, options);
|
||||
@@ -74,7 +74,7 @@ module.exports = {
|
||||
}
|
||||
)
|
||||
const coverData = await response.json()
|
||||
|
||||
|
||||
const game = new GameModel({
|
||||
code: gameCode,
|
||||
title: gameData[0].name,
|
||||
|
@@ -1,34 +1,36 @@
|
||||
var MovieModel = require('../models/movieModel');
|
||||
var UserModel = require('../models/userModel');
|
||||
var { MovieModel, SeriesModel } = require('../models/mediaModel');
|
||||
|
||||
/**
|
||||
* movieController.js
|
||||
* mediaController.js
|
||||
*
|
||||
* @description :: Server-side logic for managing movies.
|
||||
* @description :: Server-side logic for managing movies and series.
|
||||
*/
|
||||
module.exports = {
|
||||
|
||||
/**
|
||||
* movieController.list()
|
||||
* mediaController.list()
|
||||
*/
|
||||
list: function (req, res) {
|
||||
MovieModel.find({}, { _id: 0, __v: 0 })
|
||||
.then(movies => {
|
||||
return res.json(movies);
|
||||
const MediaModel = req.baseUrl.includes('movies') ? MovieModel : SeriesModel;
|
||||
|
||||
MediaModel.find({}, { _id: 0, __v: 0 })
|
||||
.then(media => {
|
||||
return res.json(media);
|
||||
})
|
||||
.catch(err => {
|
||||
return res.status(500).json({
|
||||
message: 'Error when getting movies.',
|
||||
message: 'Error when getting media.',
|
||||
error: err
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* movieController.create()
|
||||
* mediaController.create()
|
||||
*/
|
||||
create: async function (req, res) {
|
||||
const movieCode = req.body.code;
|
||||
const mediaCode = req.body.code;
|
||||
const passp = req.body.pass;
|
||||
try {
|
||||
|
||||
@@ -37,12 +39,13 @@ module.exports = {
|
||||
return res.status(404).json({ message: 'Wrong password' });
|
||||
}
|
||||
|
||||
const movieFound = await MovieModel.findOne({ code: movieCode });
|
||||
if (movieFound) {
|
||||
return res.status(409).json({ message: 'Movie already exists' });
|
||||
const MediaModel = req.baseUrl.includes('movies') ? MovieModel : SeriesModel;
|
||||
const mediaFound = await MediaModel.findOne({ code: mediaCode });
|
||||
if (mediaFound) {
|
||||
return res.status(409).json({ message: 'Media already exists' });
|
||||
}
|
||||
|
||||
const uri = `http://www.omdbapi.com/?i=${movieCode}&apikey=${userFound.key}`;
|
||||
const uri = `http://www.omdbapi.com/?i=${mediaCode}&apikey=${userFound.key}`;
|
||||
const mJson = await fetch(uri);
|
||||
const mData = await mJson.json();
|
||||
|
||||
@@ -50,22 +53,22 @@ module.exports = {
|
||||
return res.status(404).json({ message: 'wrong code' });
|
||||
}
|
||||
|
||||
const movie = new MovieModel({
|
||||
code: movieCode,
|
||||
const media = new MediaModel({
|
||||
code: mediaCode,
|
||||
title: mData.Title,
|
||||
released: mData.Released,
|
||||
webImg: mData.Poster,
|
||||
});
|
||||
|
||||
const savedMovie = await movie.save();
|
||||
return res.status(201).json(movie);
|
||||
const savedMedia = await media.save();
|
||||
return res.status(201).json(media);
|
||||
} catch (err) {
|
||||
return res.status(500).json({ message: 'Error when creating movie' });
|
||||
return res.status(500).json({ message: 'Error when creating media' });
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* movieController.delete()
|
||||
* mediaController.delete()
|
||||
*/
|
||||
remove: async function (req, res) {
|
||||
var id = req.body.code;
|
||||
@@ -77,15 +80,16 @@ module.exports = {
|
||||
return res.status(404).json({ message: 'Wrong password' });
|
||||
}
|
||||
|
||||
const movie = await MovieModel.findOneAndDelete({ code: id });
|
||||
if (!movie) {
|
||||
return res.status(404).json({ message: 'No such movie' });
|
||||
const MediaModel = req.baseUrl.includes('movies') ? MovieModel : SeriesModel;
|
||||
const media = await MediaModel.findOneAndDelete({ code: id });
|
||||
if (!media) {
|
||||
return res.status(404).json({ message: 'No such media' });
|
||||
}
|
||||
|
||||
return res.status(204).json();
|
||||
}
|
||||
catch (err) {
|
||||
return res.status(500).json({ message: 'Error when deleting the movie.' });
|
||||
return res.status(500).json({ message: 'Error when deleting the media.' });
|
||||
}
|
||||
},
|
||||
};
|
Reference in New Issue
Block a user