Mercurial > hg > rlgwebd
changeset 130:a2e071a95055
Options page: handle not being logged in.
The options page now displays whether or not the user is logged in.
author | John "Elwin" Edwards <elwin@sdf.org> |
---|---|
date | Wed, 29 Aug 2012 07:55:26 -0700 |
parents | 46822bd329da |
children | f8c89e1ed33a |
files | options.html options.js style-rlg.css |
diffstat | 3 files changed, 23 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/options.html Tue Aug 28 17:38:25 2012 -0700 +++ b/options.html Wed Aug 29 07:55:26 2012 -0700 @@ -7,6 +7,7 @@ </head> <body onload="setup()"> <h1>RLG-Web Options</h1> +<div id="ostat">Loading...</div> <div id="switch"> <span class="ibutton">E-mail</span> <span class="ibutton">Password</span>
--- a/options.js Tue Aug 28 17:38:25 2012 -0700 +++ b/options.js Wed Aug 29 07:55:26 2012 -0700 @@ -1,20 +1,33 @@ function setup() { - if (!("lcred" in sessionStorage)) + if (!("lcred" in sessionStorage)) { + setstatus("You are not logged in."); return; + } var url = "/uinfo/email?key=" + sessionStorage.getItem("lcred"); var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (req.readyState != 4 || req.status != 200) return; var reply = JSON.parse(req.responseText); - if (!("email" in reply)) - return; - document.getElementById("input_email").value = reply["email"]; + if (!("email" in reply)) { + setstatus("You are not logged in."); + } + else { + setstatus("You are logged in as " + reply.u + "."); + document.getElementById("input_email").value = reply["email"]; + document.getElementById("switch").style.display = "block"; + } } req.open('GET', url, true); req.send(); } +function setstatus(stattext) { + var statnode = document.createTextNode(stattext); + var statdiv = document.getElementById("ostat"); + statdiv.replaceChild(statnode, statdiv.firstChild); +} + function postemail() { if (!("lcred" in sessionStorage)) return;