@@ -3,7 +3,11 @@ if (process.env.NODE_ENV !== "production") {
33}
44const express = require ( "express" ) ;
55const rateLimit = require ( "express-rate-limit" ) ;
6+ const unless = require ( "express-unless" ) ;
7+
68const expressLayouts = require ( "express-ejs-layouts" ) ;
9+ expressLayouts . unless = unless ;
10+
711const bodyParser = require ( "body-parser" ) ;
812
913// database
@@ -32,23 +36,40 @@ app.use(limiter);
3236// body limit
3337app . use ( express . json ( { limit : "10kb" } ) ) ;
3438
39+ app . set ( "view engine" , "ejs" ) ;
40+ app . set ( "views" , __dirname + "/views" ) ;
41+ app . use ( bodyParser . urlencoded ( { extended : true } ) ) ;
42+ app . use ( express . static ( "public" ) ) ;
43+ app . use (
44+ expressLayouts . unless ( {
45+ path : [ / \/ b u l l - b o a r d * / ] ,
46+ } )
47+ ) ;
48+
3549// background
3650if ( process . env . BACKGROUND == true ) {
3751 const { bullBoardServerAdapter } = require ( "./background" ) ;
38- app . use ( "/bull-board" , bullBoardServerAdapter . getRouter ( ) ) ;
52+ const { ensureLoggedIn } = require ( "connect-ensure-login" ) ;
53+ const passport = require ( "passport" ) ;
54+ const session = require ( "express-session" ) ;
55+ app . use ( session ( { secret : process . env . SESSION_SECRET } ) ) ;
56+ app . use ( passport . initialize ( { } ) ) ;
57+ app . use ( passport . session ( { } ) ) ;
58+ const authRouter = require ( "./routes/auth" ) ;
59+ app . use ( "/login" , authRouter ) ;
60+ app . use (
61+ "/bull-board" ,
62+ ensureLoggedIn ( "/login" ) ,
63+ bullBoardServerAdapter . getRouter ( )
64+ ) ;
3965 console . info ( "BACKGROUND is up." ) ;
4066}
4167
4268// web
4369if ( process . env . WEB == true ) {
44- const webRouter = require ( "./web" ) ;
45- app . set ( "view engine" , "ejs" ) ;
46- app . set ( "views" , __dirname + "/views" ) ;
4770 app . set ( "layout" , "layouts/layout" ) ;
4871 app . set ( "layout extractScripts" , true ) ;
49- app . use ( expressLayouts ) ;
50- app . use ( bodyParser . urlencoded ( { extended : true } ) ) ;
51- app . use ( express . static ( "public" ) ) ;
72+ const webRouter = require ( "./web" ) ;
5273 app . use ( "/" , webRouter ) ;
5374 console . info ( "WEB is up." ) ;
5475}
@@ -69,6 +90,13 @@ if (!process.env.API_DISABLED) {
6990 console . info ( "API is up." ) ;
7091}
7192
93+ // 404 page
94+ app . use ( ( req , res ) => {
95+ res . status ( 404 ) . render ( "errors/404" , {
96+ title : "404 Not Found" ,
97+ } ) ;
98+ } ) ;
99+
72100const port = process . env . PORT || 8080 ;
73101
74102app . listen ( port , ( err ) => {
0 commit comments