Major refactoring of get_session(), get_account(), get_nodemailer(), introduces ...
[ndcode_site.git] / _lib / get_session.jst
1 let XDate = require('xdate')
2
3 return async (env, root) => {
4   let sessions = await root.get('sessions', {})
5   let session = await sessions.get(env.session_key)
6   if (session === undefined) {
7     // this should never happen, but could happen if we take more than a day
8     // to process an incoming request, and database is cleaned in the meantime
9     let expires = new XDate(env.now)
10     expires.addDays(1)
11     session = Transaction.json_to_logjson({expires: expires.getTime()})
12     sessions.set(env.session_key, session)
13   }
14   return session
15 }