| const express = require("express"); |
| |
| const passport = require("passport"); |
| |
| const router = express.Router(); |
| |
| router.get("/", async (req, res) => { |
| res.render("index", {}); |
| }); |
| router.get("/auth", async (req, res) => { |
| let auth; |
| if (req.user?.id) { |
| auth = await req.client.getUserData(req.user.id); |
| |
| console.log(auth.minecraft) |
| console.log(req.query.minecraft) |
| console.log(!auth.minecraft && req.query.minecraft) |
| |
| if (!auth.minecraft && req.query.minecraft) { |
| console.log("hit") |
| auth = await req.client.setMC(req.user.id, req.query.minecraft); |
| |
| } |
| } else auth = null; |
| |
| res.render("auth", { |
| tag: req.user ? req.user.tag : "Auth", |
| auth: auth, |
| bot: req.client, |
| user: req.user || null, |
| }); |
| }); |
| |
| router.get( |
| "/login", |
| passport.authenticate("discord", { |
| failureRedirect: "/", |
| }), |
| async function (req, res) { |
| if (!req.user.id || !req.user.guilds) { |
| // failed auth page |
| res.redirect("/"); |
| } else { |
| res.redirect("/auth"); |
| } |
| } |
| ); |
| |
| router.get("/logout", async function (req, res, next) { |
| req.session.destroy(() => { |
| req.logout(function () {}); |
| res.redirect("/"); |
| }); |
| }); |
| |
| module.exports = router; |