Structure upgrade: delete session.signed_in_as key instead of setting to null
authorNick Downing <nick@ndcode.org>
Mon, 24 Jan 2022 01:03:04 +0000 (12:03 +1100)
committerNick Downing <nick@ndcode.org>
Mon, 24 Jan 2022 01:03:04 +0000 (12:03 +1100)
_lib/get_account.jst
_lib/navbar.jst
api/account/sign_out.json.jst
my_account/index.html.jst

index d810b70..e80b85e 100644 (file)
@@ -1,6 +1,6 @@
 return async (root, session) => {
-  let signed_in_as = await session.get('signed_in_as', null)
-  if (signed_in_as === null)
+  let signed_in_as = await session.get_json('signed_in_as')
+  if (signed_in_as === undefined)
     return undefined
   let accounts = await root.get('accounts', {})
   return await accounts.get(signed_in_as, {})
index 4636c52..6420b2f 100644 (file)
@@ -20,7 +20,7 @@ return async (env, head, body, scripts) => {
     let root = await transaction.get({})
 
     let session = await get_session(env, root)
-    signed_in_as = await session.get_json('signed_in_as', null)
+    signed_in_as = await session.get_json('signed_in_as')
 
     let globals = await root.get('globals', {})
     site_title = await globals.get_json('site_title')
@@ -65,23 +65,23 @@ return async (env, head, body, scripts) => {
             div.'col-sm-4' {
               div.'mb-1'.text-right {
                 span#signed-in-status {
-                  if (signed_in_as !== null)
+                  if (signed_in_as !== undefined)
                     'Signed in.' //`Signed in as ${signed_in_as}.`
                   else
                     'Browsing as guest.'
                 }
                 ' '
-                if (signed_in_as !== null)
+                if (signed_in_as !== undefined)
                   a#sign-in(href="#" style="display: none;") {'Sign in'}
                 else
                   a#sign-in(href="#") {'Sign in'}
                 ' '
-                if (signed_in_as !== null)
+                if (signed_in_as !== undefined)
                   a#sign-up(href="/my_account/sign_up/index.html" style="display: none;") {'Sign up'}
                 else
                   a#sign-up(href="/my_account/sign_up/index.html") {'Sign up'}
                 ' '
-                if (signed_in_as !== null)
+                if (signed_in_as !== undefined)
                   a#sign-out(href="#") {'Sign out'}
                 else
                   a#sign-out(href="#" style="display: none;") {'Sign out'}
index a7cd216..70287a3 100644 (file)
@@ -12,8 +12,7 @@ return async env => {
       try {
         let root = await transaction.get({})
         let session = await get_session(env, root)
-
-        session.set('signed_in_as', null)
+        session.delete('signed_in_as')
         await transaction.commit()
       }
       catch (error) {
index 403ba6f..fe11c4b 100644 (file)
@@ -11,12 +11,13 @@ return async env => {
 
   // see whether signed in, if so preload details, and draft details if any
   let transaction = await env.site.database.Transaction()
-  let signed_in_as, details, draft_details
+  let signed_in_as
+  let details, draft_details
   try {
     let root = await transaction.get({})
 
     let session = await get_session(env, root)
-    signed_in_as = await session.get_json('signed_in_as', null)
+    signed_in_as = await session.get_json('signed_in_as')
 
     let account = await get_account(root, session)
     if (account !== undefined) {
@@ -56,7 +57,7 @@ return async env => {
     async _out => {
       await breadcrumbs(env, _out)
 
-      if (signed_in_as !== null) {
+      if (signed_in_as !== undefined) {
         // signed in
         p {'Your given names are visible to other users if you comment on our blog. Your email and family name remain private. If your name is one word or does not fit given names/family name pattern, then please enter given names only.'}
 
@@ -205,7 +206,7 @@ return async env => {
         }
       }
 
-      if (signed_in_as !== null) {
+      if (signed_in_as !== undefined) {
         //script(src="/js/api_call.js") {}
 
         script {