Ver código fonte

Merge branch 'main' of https://github.com/theVakhovskeIsTaken/gooneral-wheelchair

Adam 3 meses atrás
pai
commit
c3720c4f7b
1 arquivos alterados com 60 adições e 66 exclusões
  1. 60 66
      backend/server.js

+ 60 - 66
backend/server.js

@@ -131,79 +131,73 @@ function generateFilename(title) {
 // Authentication Routes
 
 // POST /api/auth/login - Login
-app.post("/api/auth/login", async (req, res) => {
-    try {
-        const { username, password } = req.body;
-
-        if (!username || !password) {
-            return res
-                .status(400)
-                .json({ error: "Username and password are required" });
-        }
-
-        const user = await authenticateUser(username, password);
-        if (!user) {
-            return res
-                .status(401)
-                .json({ error: "Invalid username or password" });
-        }
-
-        // Store user in session
-        req.session.user = user;
-        console.log("Login successful - Session ID:", req.sessionID);
-        console.log("Login successful - Stored user:", req.session.user);
-
-        // Manually save the session to ensure it's persisted
-        req.session.save((err) => {
-            if (err) {
-                console.error("Session save error:", err);
-                return res
-                    .status(500)
-                    .json({ error: "Failed to save session" });
-            }
-
-            console.log("Session saved successfully");
-            res.json({
-                success: true,
-                user: {
-                    username: user.username,
-                    role: user.role,
-                },
-            });
-        });
-    } catch (error) {
-        console.error("Login error:", error);
-        res.status(500).json({ error: "Login failed" });
+app.post('/api/auth/login', async (req, res) => {
+  try {
+    const { username, password } = req.body;
+    
+    if (!username || !password) {
+      return res.status(400).json({ error: 'Username and password are required' });
     }
+    
+    const user = await authenticateUser(username, password);
+    if (!user) {
+      return res.status(401).json({ error: 'Invalid username or password' });
+    }
+    
+    // Store user in session
+    req.session.user = user;
+    console.log('Login successful - Session ID:', req.sessionID);
+    console.log('Login successful - Stored user:', req.session.user);
+    
+    // Manually save the session to ensure it's persisted
+    req.session.save((err) => {
+      if (err) {
+        console.error('Session save error:', err);
+        return res.status(500).json({ error: 'Failed to save session' });
+      }
+      
+      console.log('Session saved successfully');
+      res.json({ 
+        success: true, 
+        user: {
+          username: user.username,
+          role: user.role
+        }
+      });
+    });
+  } catch (error) {
+    console.error('Login error:', error);
+    res.status(500).json({ error: 'Login failed' });
+  }
 });
 
 // POST /api/auth/logout - Logout
-app.post("/api/auth/logout", (req, res) => {
-    req.session.destroy((err) => {
-        if (err) {
-            return res.status(500).json({ error: "Logout failed" });
-        }
-        res.clearCookie("gooneral-session"); // Use the same name as configured
-        res.json({ success: true, message: "Logged out successfully" });
-    });
+app.post('/api/auth/logout', (req, res) => {
+  req.session.destroy((err) => {
+    if (err) {
+      return res.status(500).json({ error: 'Logout failed' });
+    }
+    res.clearCookie('gooneral-session'); // Use the same name as configured
+    res.json({ success: true, message: 'Logged out successfully' });
+  });
 });
 
 // GET /api/auth/me - Get current user
-app.get("/api/auth/me", isAuthenticated, (req, res) => {
-    console.log("Auth check - Session ID:", req.sessionID);
-    console.log("Auth check - Session user:", req.session?.user);
-    console.log("Auth check - Is authenticated:", req.isAuthenticated);
-
-    if (req.isAuthenticated) {
-        res.json({
-            user: {
-                username: req.user.username,
-                role: req.user.role,
-            },
-        });
-    } else {
-        res.json({ user: null });
-    }
+app.get('/api/auth/me', isAuthenticated, (req, res) => {
+  console.log('Auth check - Session ID:', req.sessionID);
+  console.log('Auth check - Session user:', req.session?.user);
+  console.log('Auth check - Is authenticated:', req.isAuthenticated);
+  
+  if (req.isAuthenticated) {
+    res.json({ 
+      user: {
+        username: req.user.username,
+        role: req.user.role
+      }
+    });
+  } else {
+    res.json({ user: null });
+  }
 });
 
 // POST /api/auth/change-password - Change password