Major refactoring of get_session(), get_account(), get_nodemailer(), introduces ...
[ndcode_site.git] / api / account / sign_up / get_draft.json.jst
index db872bd..829cbe3 100644 (file)
@@ -12,11 +12,11 @@ return async env => {
     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') ?
             {
@@ -26,13 +26,10 @@ return async env => {
               contact_me: await sign_up_draft.get_json('contact_me')
             } :
             null
-
-        await transaction.commit()
-        return details
+        )
       }
-      catch (error) {
+      finally {
         transaction.rollback()
-        throw error
       }
     }
   )