mirror of
https://github.com/evennia/evennia.git
synced 2026-03-27 02:06:32 +01:00
Some further fixes to the ajax client, as well as maybe fixing the i.d.l. bug manifesting from a poor msg input send.
This commit is contained in:
parent
f04c82fa17
commit
410d04456c
3 changed files with 7 additions and 7 deletions
|
|
@ -274,7 +274,7 @@ class PortalSessionHandler(SessionHandler):
|
|||
"""
|
||||
return len(self.get_sessions(include_unloggedin=include_unloggedin))
|
||||
|
||||
def session_from_csessid(self, csessid):
|
||||
def sessions_from_csessid(self, csessid):
|
||||
"""
|
||||
Given a session id, retrieve the session (this is primarily
|
||||
intended to be called by web clients)
|
||||
|
|
|
|||
|
|
@ -96,9 +96,9 @@ class WebClient(resource.Resource):
|
|||
self.lineSend(csessid, ["ajax_keepalive", [], {}])
|
||||
# remove timed-out sessions
|
||||
for csessid in to_remove:
|
||||
sess = self.sessionhandler.sessions_from_csessid(csessid)
|
||||
if sess:
|
||||
sess[0].disconnect()
|
||||
sessions = self.sessionhandler.sessions_from_csessid(csessid)
|
||||
for sess in sessions:
|
||||
sess.disconnect()
|
||||
self.last_alive.pop(csessid, None)
|
||||
if not self.last_alive:
|
||||
# no more ajax clients. Stop the keepalive
|
||||
|
|
@ -198,7 +198,7 @@ class WebClient(resource.Resource):
|
|||
csessid = request.args.get('csessid')[0]
|
||||
|
||||
self.last_alive[csessid] = (time(), False)
|
||||
sess = self.sessionhandler.session_from_csessid(csessid)
|
||||
sess = self.sessionhandler.sessions_from_csessid(csessid)
|
||||
if sess:
|
||||
sess = sess[0]
|
||||
cmdarray = json.loads(request.args.get('data')[0])
|
||||
|
|
@ -239,7 +239,7 @@ class WebClient(resource.Resource):
|
|||
"""
|
||||
csessid = request.args.get('csessid')[0]
|
||||
try:
|
||||
sess = self.sessionhandler.session_from_csessid(csessid)[0]
|
||||
sess = self.sessionhandler.sessions_from_csessid(csessid)[0]
|
||||
sess.sessionhandler.disconnect(sess)
|
||||
except IndexError:
|
||||
self.client_disconnect(csessid)
|
||||
|
|
|
|||
|
|
@ -375,7 +375,7 @@ An "emitter" object must have a function
|
|||
else {
|
||||
// We'd expect to see a keepalive message rather than
|
||||
// a timeout. Ping the server to see if it's still there.
|
||||
msg("idle", "input");
|
||||
msg(["text", ["idle"], {}], "input");
|
||||
}
|
||||
|
||||
if (stop_polling) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue