@@ -3,12 +3,45 @@ var express = require('express');
33var path = require ( 'path' ) ;
44var cookieParser = require ( 'cookie-parser' ) ;
55var logger = require ( 'morgan' ) ;
6+ var session = require ( 'express-session' ) ;
7+ var flash = require ( 'connect-flash' ) ;
68
79var indexRouter = require ( './routes/index' ) ;
810var usersRouter = require ( './routes/users' ) ;
911
1012var app = express ( ) ;
1113
14+ // <SessionSnippet>
15+ // Session middleware
16+ // NOTE: Uses default in-memory session store, which is not
17+ // suitable for production
18+ app . use ( session ( {
19+ secret : 'your_secret_value_here' ,
20+ resave : false ,
21+ saveUninitialized : false ,
22+ unset : 'destroy'
23+ } ) ) ;
24+
25+ // Flash middleware
26+ app . use ( flash ( ) ) ;
27+
28+ // Set up local vars for template layout
29+ app . use ( function ( req , res , next ) {
30+ // Read any flashed errors and save
31+ // in the response locals
32+ res . locals . error = req . flash ( 'error_msg' ) ;
33+
34+ // Check for simple error string and
35+ // convert to layout's expected format
36+ var errs = req . flash ( 'error' ) ;
37+ for ( var i in errs ) {
38+ res . locals . error . push ( { message : 'An error occurred' , debug : errs [ i ] } ) ;
39+ }
40+
41+ next ( ) ;
42+ } ) ;
43+ // </SessionSnippet>
44+
1245// view engine setup
1346app . set ( 'views' , path . join ( __dirname , 'views' ) ) ;
1447app . set ( 'view engine' , 'hbs' ) ;
0 commit comments