Save current state (unmerged, broken, not working...)
[vchess.git] / app.js
diff --git a/app.js b/app.js
index b44be79..3199af3 100644 (file)
--- a/app.js
+++ b/app.js
@@ -6,8 +6,6 @@ var logger = require('morgan');
 var sassMiddleware = require('node-sass-middleware');
 var favicon = require('serve-favicon');
 
-var router = require('./routes/all');
-
 var app = express();
 
 app.use(favicon(path.join(__dirname, "public", "images", "favicon", "favicon.ico")));
@@ -28,7 +26,7 @@ else
 }
 
 // Allow layout.pug to select the right vue file:
-app.locals.development = app.get('env') === 'development';
+app.locals.development = (app.get('env') === 'development');
 
 // view engine setup
 app.set('views', path.join(__dirname, 'views'));
@@ -45,7 +43,29 @@ app.use(sassMiddleware({
 }));
 app.use(express.static(path.join(__dirname, 'public')));
 
-app.use('/', router);
+// Before showing any page, check + save credentials
+app.use(function(req, res, next) {
+       req.loggedIn = false;
+       if (!req.cookies.token)
+               return next();
+       UserModel.getOne("sessionToken", req.cookies.token, function(err, user) {
+               if (!!user)
+               {
+                       req.loggedIn = true;
+                       res.locals.user = {
+                               _id: user._id,
+                               name: user.name,
+                               email: user.email,
+                               notify: user.notify,
+                       };
+               }
+               next();
+       });
+});
+
+// Routing
+const routes = require(path.join(__dirname, "routes", "all"));
+app.use('/', routes);
 
 // catch 404 and forward to error handler
 app.use(function(req, res, next) {