async () => {
let transaction = await env.site.database.Transaction()
try {
- // initialize env.session_key, set cookie in env.response
- let session = await get_session(env, transaction)
+ let root = await transaction.get({})
+ let session = await get_session(env, root)
let sign_up_draft = await session.get('sign_up_draft')
- let details =
+ return (
sign_up_draft !== undefined &&
XDate.now() < await sign_up_draft.get_json('expires') ?
{
contact_me: await sign_up_draft.get_json('contact_me')
} :
null
-
- await transaction.commit()
- return details
+ )
}
- catch (error) {
+ finally {
transaction.rollback()
- throw error
}
}
)