Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
f1d98376d4
2
main.py
2
main.py
@ -86,7 +86,7 @@ async def _(request: aiohttp.web.Request):
|
|||||||
async def handler(request: aiohttp.web.Request):
|
async def handler(request: aiohttp.web.Request):
|
||||||
model = request.app['model']
|
model = request.app['model']
|
||||||
|
|
||||||
return aiohttp.web.json_response(model.sessions)
|
return aiohttp.web.json_response(model.model)
|
||||||
|
|
||||||
|
|
||||||
@routes.get('/')
|
@routes.get('/')
|
||||||
|
9
model.py
9
model.py
@ -50,6 +50,11 @@ class Model(object):
|
|||||||
async def test_yeet(self, clientid):
|
async def test_yeet(self, clientid):
|
||||||
raise Exception('yeet')
|
raise Exception('yeet')
|
||||||
|
|
||||||
|
@ApiMethod
|
||||||
|
async def change_username(self, clientid, username) -> str:
|
||||||
|
self.model["clients"][clientid]["username"] = username
|
||||||
|
await self.send_state(clientid)
|
||||||
|
|
||||||
@ApiMethod
|
@ApiMethod
|
||||||
async def create_session(self, clientid) -> str:
|
async def create_session(self, clientid) -> str:
|
||||||
sessionname = generate_random_id()
|
sessionname = generate_random_id()
|
||||||
@ -77,7 +82,7 @@ class Model(object):
|
|||||||
if "session" in self.model["clients"][clientid]:
|
if "session" in self.model["clients"][clientid]:
|
||||||
session = self.model["clients"][clientid]["session"]
|
session = self.model["clients"][clientid]["session"]
|
||||||
allsessions = [ name for name in self.model["sessions"] ]
|
allsessions = [ name for name in self.model["sessions"] ]
|
||||||
username = self.model["clients"][clientid]["name"] if "name" in self.model["clients"][clientid] else "Joe"
|
username = self.model["clients"][clientid]["username"] if "username" in self.model["clients"][clientid] else "Joe"
|
||||||
data = {"currentsession": session, "allsessions": allsessions, "username": username}
|
data = {"currentsession": session, "allsessions": allsessions, "username": username}
|
||||||
for socket in self.sockets[clientid]:
|
for socket in self.sockets[clientid]:
|
||||||
await socket.send_json(data)
|
await socket.send_json(data)
|
||||||
@ -99,7 +104,7 @@ class Model(object):
|
|||||||
|
|
||||||
def create_client(self, name="Joe") -> str:
|
def create_client(self, name="Joe") -> str:
|
||||||
clientname = generate_random_id()
|
clientname = generate_random_id()
|
||||||
newclient = {"id": clientname, "name": name}
|
newclient = {"id": clientname, "username": name}
|
||||||
self.model["clients"][clientname] = newclient
|
self.model["clients"][clientname] = newclient
|
||||||
return clientname
|
return clientname
|
||||||
|
|
||||||
|
12
ui.html
12
ui.html
@ -14,6 +14,9 @@
|
|||||||
<br>
|
<br>
|
||||||
<button id="btn_create_session">Create session</button>
|
<button id="btn_create_session">Create session</button>
|
||||||
<br><br><br>
|
<br><br><br>
|
||||||
|
<input id="set_username" type="text" placeholder="New username" />
|
||||||
|
<button id="btn_set_username">Set Username</button>
|
||||||
|
<br><br><br>
|
||||||
<input id="join_session_id" type="text" placeholder="Enter session id" />
|
<input id="join_session_id" type="text" placeholder="Enter session id" />
|
||||||
<button id="btn_join_session">Join session</button>
|
<button id="btn_join_session">Join session</button>
|
||||||
|
|
||||||
@ -36,6 +39,15 @@
|
|||||||
body: JSON.stringify(data),
|
body: JSON.stringify(data),
|
||||||
})
|
})
|
||||||
};
|
};
|
||||||
|
document.getElementById("btn_set_username").onclick = async function (e) {
|
||||||
|
let text = document.getElementById("set_username").value;
|
||||||
|
let data = {"username": text};
|
||||||
|
|
||||||
|
await fetch('api/change_username', {
|
||||||
|
method: 'POST',
|
||||||
|
body: JSON.stringify(data),
|
||||||
|
})
|
||||||
|
};
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user