import logger from "../libs/logger";
import { Request, Response } from 'express';
import { FormError, fieldError } from "../types/custom";
import { Controller } from "../types/controller";

const pageController: Controller = (req: Request, res: Response) => {

    const page = req.params.page;

    if (page == undefined || page == null) {
        throw new Error('Page parameter is missing')
    }
    
    logger.info(`Client connected. SessionId is ${req.session.id} and page is ${page}`)
    logger.info(`Errors are ${req.session.formErrors}`)

    if (!req.query.hasError) {
        req.session.formErrors = [] as FormError[];
        req.session.error = {} as fieldError
    }

    return res.render(`${page}.njk`);
}

export default pageController;