Skip to content
This repository was archived by the owner on Jun 30, 2024. It is now read-only.

Commit e5ff877

Browse files
committed
Get all answers for async discussion
1 parent 56d989d commit e5ff877

File tree

3 files changed

+22
-6
lines changed

3 files changed

+22
-6
lines changed

controllers/peer.py

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,8 @@ def get_async_explainer():
546546
done = True
547547
else:
548548
tries += 1
549-
mess = _get_user_messages(user, div_id, course_name)
549+
mess, participants = _get_user_messages(user, div_id, course_name)
550+
participants.remove(user)
550551
else:
551552
messages = db(
552553
(db.useinfo.event == "sendmessage")
@@ -562,15 +563,22 @@ def get_async_explainer():
562563
peer_answer = _get_user_answer(div_id, user)
563564
if peer_answer != this_answer:
564565
done = True
566+
565567
else:
566568
tries += 1
567-
mess = _get_user_messages(user, div_id, course_name)
569+
mess, participants = _get_user_messages(user, div_id, course_name)
568570
else:
569571
mess = "Sorry there were no good explanations for you."
570572
user = "nobody"
573+
participants = set()
571574

575+
responses = {}
576+
for p in participants:
577+
responses[p] = _get_user_answer(div_id, p)
572578
logger.debug(f"Get message for {div_id}")
573-
return json.dumps({"mess": mess, "user": user, "answer": peer_answer})
579+
return json.dumps(
580+
{"mess": mess, "user": user, "answer": peer_answer, "responses": responses}
581+
)
574582

575583

576584
def _get_user_answer(div_id, s):
@@ -601,9 +609,11 @@ def _get_user_messages(user, div_id, course_name):
601609
).select(orderby=db.useinfo.id)
602610
user = messages[0].sid
603611
mess = "<ul>"
612+
participants = set()
604613
for row in messages:
605614
mpart = row.act.split(":")[2]
606615
mess += f"<li>{row.sid} said: {mpart}</li>"
616+
participants.add(row.sid)
607617
mess += "</ul>"
608618

609-
return mess
619+
return mess, participants

static/js/peer.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -398,7 +398,13 @@ async function showPeerEnableVote2() {
398398
let spec = await resp.json();
399399
let peerMess = spec.mess;
400400
let peerNameEl = document.getElementById("peerName");
401-
peerNameEl.innerHTML = `User ${spec.user} answered ${answerToString(spec.answer)}`;
401+
// iterate over responses
402+
let res = "";
403+
for (let response in spec.responses) {
404+
res += `User ${response} answered ${answerToString(spec.responses[response])} <br />`;
405+
}
406+
//peerNameEl.innerHTML = `User ${spec.user} answered ${answerToString(spec.answer)}`;
407+
peerNameEl.innerHTML = res;
402408
let peerEl = document.getElementById("peerJust");
403409
peerEl.innerHTML = peerMess;
404410
let nextStep = document.getElementById("nextStep");

views/peer/peer_async.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ <h2>Peer Instruction Question (Async)</h2>
2222
<textarea id="messageText" rows="2" cols="40"> </textarea> <br />
2323
<button type="button" onclick="showPeerEnableVote2()">Submit</button>
2424
<div>
25-
<h4>Another Student's Justification for you to consider</h4>
25+
<h4>A discussion for you to consider</h4>
2626
<p id="peerName"></p>
2727
<p id="peerJust"></p>
2828
<p id="nextStep"></p>

0 commit comments

Comments
 (0)