import type { RequestHandler } from "express";

const BOARD_PREFIX = "/board";

export const requireAuth: RequestHandler = (req, res, next) => {
  if (req.session.user) {
    next();
    return;
  }
  const nextUrl = req.originalUrl || `${BOARD_PREFIX}/`;
  if (req.accepts("html")) {
    res.redirect(`${BOARD_PREFIX}/login?next=${encodeURIComponent(nextUrl)}`);
    return;
  }
  res.status(401).json({ error: "Unauthorized" });
};
