diff options
Diffstat (limited to 'app/server')
| -rw-r--r-- | app/server/site.js | 29 | ||||
| -rw-r--r-- | app/server/util/auth.js | 11 |
2 files changed, 35 insertions, 5 deletions
diff --git a/app/server/site.js b/app/server/site.js index d07c07b..717e42b 100644 --- a/app/server/site.js +++ b/app/server/site.js @@ -2,7 +2,11 @@ const express = require('express') const http = require('http') const path = require('path') const multer = require('multer')() +const sessionstore = require('sessionstore') +const session = require('express-session') const bodyParser = require('body-parser') +const cookieParser = require('cookie-parser') +const MongoStore = require('connect-mongo')(session); const compression = require('compression') // const multer = require('multer') // const upload = multer({ dest: 'uploads/' }) @@ -19,6 +23,31 @@ app.use(bodyParser.urlencoded({ extended: false, limit: '100mb', })) app.use(express.query()) app.use(express.static(path.join(__dirname, '../../public'))) app.use(compression()) +app.use(cookieParser()) +var sessionSettings = { + secret: 'argonauts', + proxy: true, + key: 'cortex.sid', + cookie: { + secure: process.env.NODE_ENV === 'production', + domain: '.' + process.env.HOST_NAME, + maxAge: 43200000000, + }, + resave: true, + saveUninitialized: false, +} +if (!process.env.SESSIONS_IN_MEMORY) { + sessionSettings.store = new MongoStore({ + url: 'mongodb://127.0.0.1:28108/cortexSessionDb' + // type: 'mongodb', + // host: 'localhost', + // port: 27017, + // dbName: 'buckySessionDb', + // collectionName: 'sessions', + // timeout: 10000, + }) +} +app.use(session(sessionSettings)) auth.route(app, serve_index) export const io = require('socket.io').listen(server) diff --git a/app/server/util/auth.js b/app/server/util/auth.js index b2faf2a..0d7dbd8 100644 --- a/app/server/util/auth.js +++ b/app/server/util/auth.js @@ -92,7 +92,7 @@ export function login(req, res) { return res.json({ status: "OK", user: sanitizeUser(req.user), - returnTo: returnTo || "/index", + returnTo: returnTo || "/", }) } res.json({ @@ -105,9 +105,9 @@ export function serializeUser(user, done) { } export function deserializeUser(id, done) { - db.getUser(id).then(function(user){ - done(! user, user) - }) + userModel.show(id).then(user => { + done(!user, user) + }).catch(done) } export function makePassword(password) { @@ -143,7 +143,7 @@ export function verifyLocalUser(username, password, done) { console.log(user) // if (err) { return done(err) } if (! user) { return done("no user") } - if (! user || ! validPassword(user, password)) { + if (! user || !validPassword(user, password)) { return done(null, false, { error: { message: 'Bad username/password.' } }) } return done(null, user) @@ -151,6 +151,7 @@ export function verifyLocalUser(username, password, done) { } export function checkin(req, res) { + console.log(req.user) res.json({ user: sanitizeUser(req.user) }) } |
