Skip to content
Snippets Groups Projects

You can now like

2 files
+ 84
12
Compare changes
  • Side-by-side
  • Inline

Files

+ 33
5
@@ -9,6 +9,18 @@ router.get("/", function (req, res) {
});
});
router.get("/isliked/:movieId/:userId", async function (req, res) {
const userId = await req.params["userId"];
console.log(userId);
const movieId = await req.params["movieId"];
const user = await UserModel.findById(userId);
const movieOid = await MovieModel.findOne({ id: movieId });
const likedMovies = user.liked_movies;
const myIndex = likedMovies.indexOf(movieOid._id) + 1;
console.log(Boolean(myIndex));
res.send(Boolean(myIndex));
});
router.post("/new", function (req, res) {
const newUser = new UserModel({
email: req.body.email,
@@ -39,11 +51,22 @@ router.put("/like", async function (req, res) {
const movieId = await req.body.movieId;
const movieOid = await MovieModel.findOne({ id: movieId });
const user = await UserModel.findById(userId);
const likedMovies = user.liked_movies.concat([movieOid._id]);
await UserModel.findByIdAndUpdate(userId, {
liked_movies: likedMovies,
});
res.send("Done");
const likedMovies = user.liked_movies;
const myIndex = likedMovies.indexOf(movieOid._id);
if (myIndex == -1) {
likedMovies.splice(myIndex, 1);
await UserModel.findByIdAndUpdate(userId, {
liked_movies: likedMovies.concat([movieOid._id]),
});
console.log(movieOid.title);
console.log(movieOid._id);
res.send("Done");
} else {
console.log(movieOid.title);
console.log(movieOid._id);
console.log("This movie is already liked");
res.send("This movie is already liked");
}
} catch (error) {
console.log(error);
res.send("Internal problem");
@@ -64,8 +87,13 @@ router.put("/unlike", async function (req, res) {
liked_movies: likedMovies,
});
res.send("Done");
console.log(movieOid.title);
console.log(movieOid._id);
} else {
res.send("This movie wasn't liked");
console.log(movieOid.title);
console.log(movieOid._id);
console.log("This movie wasn't liked");
}
} catch (error) {
console.log(error);
Loading