Skip to content
Snippets Groups Projects
Commit bbd30225 authored by javdiaort's avatar javdiaort
Browse files

base de datos se actualiza y cada user ve sus cosas

parent 722e0603
No related branches found
No related tags found
No related merge requests found
...@@ -7,6 +7,7 @@ const Task = require('./taskModel'); // Asegúrate de requerir el modelo de Task ...@@ -7,6 +7,7 @@ const Task = require('./taskModel'); // Asegúrate de requerir el modelo de Task
const app = express(); const app = express();
const session = require("express-session"); const session = require("express-session");
const MongoStore = require("connect-mongo"); const MongoStore = require("connect-mongo");
const mongoose = require("mongoose");
app.use(session({ app.use(session({
secret: "tuClaveSecreta", // Cambia esto por una clave segura secret: "tuClaveSecreta", // Cambia esto por una clave segura
...@@ -103,49 +104,46 @@ app.post("/login", async (req, res) => { ...@@ -103,49 +104,46 @@ app.post("/login", async (req, res) => {
// PARTE TODO LIST // PARTE TODO LIST
app.get("/home", async (req, res) => { app.get("/home", async (req, res) => {
if (!req.session.userId) {
return res.redirect("/login");
}
try { try {
// Obtener todas las tareas del usuario // Obtener las tareas del usuario
const tasks = await Task.find({ userId: req.session.userId }); const tasks = await Task.find({ userId: req.session.userId });
// Renderizar la vista "home.ejs" con las tareas del usuario // Mostrar las tareas en la vista
res.render("home", { tasks: tasks }); res.render("home", { tasks });
} catch (error) { } catch (error) {
console.error("Error al obtener tareas:", error); console.error("Error al obtener tareas:", error);
res.status(500).send("Error al obtener tareas"); res.status(500).send("Error al obtener tareas");
} }
}); });
// Agregar tareas
//agregar tareas
app.post("/add", async (req, res) => { app.post("/add", async (req, res) => {
try { if (!req.session.userId) {
// Obtén el usuario de la base de datos usando el userId almacenado en la sesión return res.status(401).send("No autorizado");
const user = await collection.findOne({ _id: req.session.userId }); }
if (!user) {
return res.status(404).send("Usuario no encontrado");
}
// Crear una nueva tarea try {
// Crear y guardar la nueva tarea en MongoDB
const newTask = new Task({ const newTask = new Task({
text: req.body.task, text: req.body.task,
userId: req.session.userId // Asocia la tarea al usuario userId: new mongoose.Types.ObjectId(req.session.userId) // Asegura que sea un ObjectId válido
}); });
// Guardar la nueva tarea en la base de datos
await newTask.save(); await newTask.save();
// Redirigir al usuario a la página de inicio con las tareas actualizadas res.redirect("/home"); // Redirige para actualizar la lista
res.redirect("/home"); //CUIDADO
} catch (error) { } catch (error) {
console.error("Error al agregar tarea:", error); console.error("Error al agregar tarea:", error);
res.status(500).send("Error al agregar tarea"); res.status(500).send("Error al agregar tarea");
} }
}); });
//eliminar tareas //eliminar tareas
app.post("/delete", async (req, res) => { app.post("/delete", async (req, res) => {
if (!req.session.userId) return res.redirect("/"); if (!req.session.userId) return res.redirect("/");
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment