Move credentials into the drivers.
The session id, or whether the session is currently active on the server, are better handled in the drivers than in termemu.js.
This commit is contained in:
parent
ceed48eee5
commit
553f07360c
3 changed files with 29 additions and 28 deletions
40
rlgterm.js
40
rlgterm.js
|
|
@ -71,6 +71,8 @@ var games = {
|
|||
/* Login name and key */
|
||||
var lname = null;
|
||||
var lcred = null;
|
||||
/* The session id assigned by the server. */
|
||||
var sessid = null;
|
||||
|
||||
function writeData(hexstr) {
|
||||
var codenum;
|
||||
|
|
@ -211,10 +213,10 @@ function processMsg(msg) {
|
|||
}
|
||||
|
||||
function getData() {
|
||||
if (termemu.sessid == null)
|
||||
if (sessid == null)
|
||||
return;
|
||||
var datareq = new XMLHttpRequest();
|
||||
var msg = JSON.stringify({"id": termemu.sessid, "t": "n"});
|
||||
var msg = JSON.stringify({"id": sessid, "t": "n"});
|
||||
datareq.onreadystatechange = function () {
|
||||
if (datareq.readyState == 4 && datareq.status == 200) {
|
||||
var wasdata = processMsg(datareq.responseText);
|
||||
|
|
@ -243,7 +245,7 @@ function postResponseHandler() {
|
|||
|
||||
function sendback(str) {
|
||||
/* For responding to terminal queries. */
|
||||
var msgDict = {"id": termemu.sessid, "t": "d", "n": nsend++, "d": str};
|
||||
var msgDict = {"id": sessid, "t": "d", "n": nsend++, "d": str};
|
||||
var datareq = new XMLHttpRequest();
|
||||
datareq.onreadystatechange = postResponseHandler;
|
||||
datareq.open('POST', '/feed', true);
|
||||
|
|
@ -252,7 +254,7 @@ function sendback(str) {
|
|||
}
|
||||
|
||||
function sendkey(ev) {
|
||||
if (termemu.sessid == null)
|
||||
if (sessid == null)
|
||||
return;
|
||||
var keynum = ev.keyCode;
|
||||
var code;
|
||||
|
|
@ -290,10 +292,10 @@ function sendkey(ev) {
|
|||
return;
|
||||
}
|
||||
// Isn't this check redundant?
|
||||
if (termemu.sessid != null)
|
||||
if (sessid != null)
|
||||
ev.preventDefault();
|
||||
var datareq = new XMLHttpRequest();
|
||||
var msgDict = {"id": termemu.sessid, "t": "d", "n": nsend++, "d": code};
|
||||
var msgDict = {"id": sessid, "t": "d", "n": nsend++, "d": code};
|
||||
datareq.onreadystatechange = postResponseHandler;
|
||||
datareq.open('POST', '/feed', true);
|
||||
datareq.send(JSON.stringify(msgDict));
|
||||
|
|
@ -305,7 +307,7 @@ var charshifts = { '-': "5f", '=': "2b", '[': "7b", ']': "7d", '\\': "7c",
|
|||
}
|
||||
|
||||
function vkey(c) {
|
||||
if (termemu.sessid == null)
|
||||
if (sessid == null)
|
||||
return;
|
||||
var keystr;
|
||||
if (c.match(/^[a-z]$/)) {
|
||||
|
|
@ -343,7 +345,7 @@ function vkey(c) {
|
|||
else
|
||||
return;
|
||||
var datareq = new XMLHttpRequest();
|
||||
var msgDict = {"id": termemu.sessid, "t": "d", "n": nsend++, "d": keystr};
|
||||
var msgDict = {"id": sessid, "t": "d", "n": nsend++, "d": keystr};
|
||||
datareq.onreadystatechange = postResponseHandler;
|
||||
datareq.open('POST', '/feed', true);
|
||||
datareq.send(JSON.stringify(msgDict));
|
||||
|
|
@ -380,7 +382,7 @@ function togglectrl() {
|
|||
|
||||
function formlogin(ev) {
|
||||
ev.preventDefault();
|
||||
if (termemu.sessid != null)
|
||||
if (sessid != null)
|
||||
return;
|
||||
var loginmsg = {};
|
||||
loginmsg["name"] = document.getElementById("input_name").value;
|
||||
|
|
@ -410,7 +412,7 @@ function formlogin(ev) {
|
|||
}
|
||||
|
||||
function getcurrent() {
|
||||
if (termemu.sessid)
|
||||
if (sessid)
|
||||
return;
|
||||
var req = new XMLHttpRequest();
|
||||
req.onreadystatechange = function () {
|
||||
|
|
@ -454,7 +456,7 @@ function getcurrent() {
|
|||
}
|
||||
|
||||
function getchoices() {
|
||||
if (termemu.sessid != null || !lcred)
|
||||
if (sessid != null || !lcred)
|
||||
return;
|
||||
var req = new XMLHttpRequest();
|
||||
req.onreadystatechange = function () {
|
||||
|
|
@ -521,7 +523,7 @@ function makeStarter(gname) {
|
|||
}
|
||||
|
||||
function startgame(game) {
|
||||
if (termemu.sessid != null || !lcred)
|
||||
if (sessid != null || !lcred)
|
||||
return;
|
||||
var smsg = {};
|
||||
smsg["key"] = lcred;
|
||||
|
|
@ -535,10 +537,10 @@ function startgame(game) {
|
|||
var reply = JSON.parse(req.responseText);
|
||||
if (reply.t == 's') {
|
||||
/* Success */
|
||||
termemu.sessid = reply.id;
|
||||
sessid = reply.id;
|
||||
termemu.resize(reply.h, reply.w);
|
||||
setTitle("Playing as " + lname);
|
||||
debug(1, "Playing with id " + termemu.sessid);
|
||||
debug(1, "Playing with id " + sessid);
|
||||
setmode("play");
|
||||
getData();
|
||||
}
|
||||
|
|
@ -556,7 +558,7 @@ function startgame(game) {
|
|||
|
||||
function formreg(ev) {
|
||||
ev.preventDefault();
|
||||
if (termemu.sessid != null)
|
||||
if (sessid != null)
|
||||
return;
|
||||
var regmsg = {};
|
||||
regmsg["name"] = document.getElementById("regin_name").value;
|
||||
|
|
@ -589,10 +591,10 @@ function formreg(ev) {
|
|||
}
|
||||
|
||||
function gameover() {
|
||||
if (termemu.sessid == null)
|
||||
if (sessid == null)
|
||||
return;
|
||||
/* TODO IFACE2 If the end was unexpected, tell player the game was saved. */
|
||||
termemu.sessid = null;
|
||||
sessid = null;
|
||||
ajaxstate.clear();
|
||||
setTitle("Game over.");
|
||||
nsend = 0;
|
||||
|
|
@ -609,7 +611,7 @@ function logout() {
|
|||
}
|
||||
|
||||
function stop() {
|
||||
if (!termemu.sessid)
|
||||
if (!sessid)
|
||||
return;
|
||||
var req = new XMLHttpRequest();
|
||||
req.onreadystatechange = function () {
|
||||
|
|
@ -619,7 +621,7 @@ function stop() {
|
|||
}
|
||||
};
|
||||
req.open('POST', '/feed', true);
|
||||
req.send(JSON.stringify({"id": termemu.sessid, "t": "q"}));
|
||||
req.send(JSON.stringify({"id": sessid, "t": "q"}));
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue