2026-05-17 21:05:19 +02:00

43 lines
856 B
JavaScript

const express = require('express');
const passport = require('passport');
const router = express.Router();
// Discord OAuth starten
router.get('/discord',
passport.authenticate('discord')
);
// Discord OAuth Callback
router.get('/discord/callback',
passport.authenticate('discord', {
failureRedirect: '/?error=login_failed',
}),
(req, res) => {
res.redirect('/');
}
);
// Abmelden
router.post('/logout', (req, res) => {
req.logout(() => {
res.json({ ok: true });
});
});
// Aktuellen User zurückgeben (für Frontend)
router.get('/me', (req, res) => {
if (!req.isAuthenticated()) {
return res.json({ user: null });
}
res.json({
user: {
id: req.user.id,
username: req.user.username,
avatar: req.user.avatar,
isAdmin: req.user.isAdmin,
}
});
});
module.exports = router;