Major refactoring of get_session(), get_account(), get_nodemailer(), introduces ...
[ndcode_site.git] / my_account / sign_up / index.html.jst
index 10be9f6..c7ef86f 100644 (file)
@@ -2,16 +2,17 @@ let XDate = require('xdate')
 
 return async env => {
   let breadcrumbs = await _require('/_lib/breadcrumbs.jst')
+  let get_session = await _require('/_lib/get_session.jst')
   let icon_cross = await env.site.get_min_svg('/_svg/icon_cross.svg')
   let icon_tick = await env.site.get_min_svg('/_svg/icon_tick.svg')
   let navbar = await _require('/_lib/navbar.jst')
-  let get_session = await _require('/_lib/get_session.jst')
 
   // preload draft details if any
-  let transaction = await env.site.database.Transaction(), draft_details
+  let transaction = await env.site.database.Transaction()
+  let draft_details
   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')
     draft_details =
@@ -24,12 +25,9 @@ return async env => {
           contact_me: await sign_up_draft.get_json('contact_me')
         } :
         null
-
-    await transaction.commit()
   }
-  catch (error) {
+  finally {
     transaction.rollback()
-    throw error
   }
   console.log('draft_details', JSON.stringify(draft_details))