@@ -21,7 +21,11 @@ app.use(require('cors')(_config("cors")));
2121
2222app . use ( require ( "express-mvc-platform/lib/i18n" ) ) ;
2323
24- app . use ( require ( "morgan" ) ( "dev" ) )
24+ /* Logging in development only */
25+
26+ if ( _config ( "app.env" ) != "production" ) {
27+ app . use ( require ( "morgan" ) ( "dev" ) ) ;
28+ }
2529
2630/* Loading express validator */
2731
@@ -33,6 +37,13 @@ app.use(require("body-parser").urlencoded(_config("body")));
3337
3438app . use ( require ( "body-parser" ) . json ( ) ) ;
3539
40+ /* Defining the request.isAPI boolean flag */
41+
42+ app . use ( function ( req , res , next ) {
43+ req . isAPI = req . url . startsWith ( "/" + _config ( "app.api_prefix" ) ) ;
44+ next ( ) ;
45+ } ) ;
46+
3647/* Loading the response cookie parser */
3748
3849app . use ( require ( "cookie-parser" ) ( ) ) ;
@@ -41,13 +52,33 @@ app.use(require("cookie-parser")());
4152
4253app . use ( require ( "express-session" ) ( _config ( "session" ) ) ) ;
4354
55+ // Passport authentication
56+
57+ require ( "./passport" ) ;
58+
59+ /* Serving api routes */
60+
61+ app . use ( "/" + _config ( "app.api_prefix" ) , require ( "./routes/api" ) ) ;
62+
63+ /* API 404 error handler */
64+
65+ app . use ( "/" + _config ( "app.api_prefix" ) , function ( req , res ) {
66+ return res . notFound ( ) ;
67+ } ) ;
68+
69+ /* API 500 error handler */
70+
71+ app . use ( "/" + _config ( "app.api_prefix" ) , function ( error , req , res , next ) {
72+ return res . serverError ( error . message ) ;
73+ } ) ;
74+
4475/* Redirect back reponse method res.back() */
4576
4677app . use ( require ( 'express-back' ) ( ) ) ;
4778
4879/* Enable cross site request forgery */
4980
50- // app.use(require('csurf')(_config("csrf")));
81+ app . use ( require ( 'csurf' ) ( _config ( "csrf" ) ) ) ;
5182
5283/* Enable session flash messages */
5384
@@ -56,7 +87,9 @@ app.use(require("express-flash")());
5687/* Passing the request object to views */
5788
5889app . use ( function ( req , res , next ) {
90+
5991 var origRender = res . render ;
92+
6093 res . render = function ( view , locals , callback ) {
6194 if ( 'function' == typeof locals ) {
6295 callback = locals ;
@@ -69,18 +102,9 @@ app.use(function (req, res, next) {
69102 origRender . call ( res , view , locals , callback ) ;
70103 } ;
71104
72- req . isAPI = req . url . startsWith ( "/" + _config ( "app.api_prefix" ) ) ;
73105 next ( ) ;
74106} ) ;
75107
76- // Passport authentication
77-
78- require ( "./passport" ) ;
79-
80- /* Serving api routes */
81-
82- app . use ( "/" + _config ( "app.api_prefix" ) , require ( "./routes/api" ) ) ;
83-
84108/* Serving web routes */
85109
86110app . use ( "/" , require ( "./routes/web" ) ) ;
0 commit comments