Files
oscars-pool/models/User.js
Mathieu Moran 01c478aafe Theme rework: polish dark mode and previews
Refine mobile nav layout, improve dark theme UI polish, and update README previews with light/dark variants.
2026-01-26 01:47:17 -05:00

22 lines
877 B
JavaScript

const mongoose = require("mongoose");
const userSchema = new mongoose.Schema({
name: { type: String, required: true },
email: { type: String, required: true, unique: true },
password: { type: String, required: true },
role: { type: Number, default: 0 },
// If true, user must change password on next login (e.g. after admin reset)
mustChangePassword: { type: Boolean, default: false },
tempPasswordIssuedAt: { type: Date, default: null },
tempPasswordExpiresAt: { type: Date, default: null },
// Optional. When unset, UI follows system preference.
themePreference: { type: String, enum: ["light", "dark"], default: undefined },
watchedMovies: [{
imdb_id: { type: String, required: false },
watchedDate: { type: Date, default: Date.now } // Store the watched date
}]
});
const User = mongoose.model("User", userSchema);
module.exports = User;