Watchonlinemovies.com 〈2024〉

const User = mongoose.model('User', userSchema);

// Get movies rated by similar users const recommendedMovies = []; similarities.forEach((similarity) => { const similarUser = similarity.user; const movies = similarUser.movieHistory; movies.forEach((movie) => { if (!userHistory.includes(movie)) { recommendedMovies.push(movie); } }); }); watchonlinemovies.com

module.exports = Movie; // recommendation.algorithm.js const User = require('./user.model'); const Movie = require('./movie.model'); const User = mongoose

const movieSchema = new mongoose.Schema({ title: String, genre: String, ratings: [{ type: mongoose.Schema.Types.ObjectId, ref: 'MovieRating' }] }); const User = mongoose.model('User'

const userSchema = new mongoose.Schema({ name: String, email: String, password: String, movieHistory: [{ type: mongoose.Schema.Types.ObjectId, ref: 'Movie' }], ratings: [{ type: mongoose.Schema.Types.ObjectId, ref: 'MovieRating' }] });

const recommendMovies = async (userId) => { const user = await User.findById(userId).populate('movieHistory').populate('ratings'); const userRatings = user.ratings; const userHistory = user.movieHistory;