riderle commited on
Commit
e571747
·
verified ·
1 Parent(s): 2bee08e

Update chat_application/templates/room.html

Browse files
chat_application/templates/room.html CHANGED
@@ -30,7 +30,7 @@
30
  <h2 id="room-code-display">Topic: <span class="topic-title">{{ topic_info.title }}</span></h2>
31
  </div>
32
  <div class="topic-header-buttons">
33
- <button id="feedback-btn">Provide Feedback</button>
34
  <button id="end-exp-btn">End Chat Session</button>
35
  <button id="abort-exp-btn">Abort Experiment</button>
36
  </div>
@@ -73,7 +73,7 @@
73
  <h3>Feedback</h3>
74
  <form id="feedback-form">
75
  <div class="feedback-col">
76
- <label for="enter-feedback">Enter Feedback</label>
77
  <textarea id="enter-feedback" name="feedback"></textarea>
78
  </div>
79
  <br>
@@ -84,6 +84,23 @@
84
  </form>
85
  </div>
86
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
87
  </div>
88
  <div id="chat-room-widget">
89
  <div id="msgs-container">
@@ -272,6 +289,8 @@
272
  //handler for feedback modal popup
273
  let feedbackModal = document.getElementById("feedback-modal");
274
  let form = document.getElementById("feedback-form");
 
 
275
  document.getElementById("feedback-btn").onclick = function () {
276
  feedbackModal.style.display = "block";
277
  };
@@ -279,6 +298,16 @@
279
  feedbackModal.style.display = "none";
280
  };
281
 
 
 
 
 
 
 
 
 
 
 
282
  //override form function to instead emit save feedback event
283
  form.addEventListener("submit", function (e) {
284
  e.preventDefault();
@@ -287,8 +316,13 @@
287
  const feedback = data.get("feedback")?.trim();
288
 
289
  if (!feedback) return;
290
- socketio.emit("feedback_given", { feedback });
291
-
 
 
 
 
 
292
  form.reset();
293
  document.getElementById("feedback-modal").style.display = "none";
294
  });
 
30
  <h2 id="room-code-display">Topic: <span class="topic-title">{{ topic_info.title }}</span></h2>
31
  </div>
32
  <div class="topic-header-buttons">
33
+ <button id="feedback-btn">Share Feedback and Report Bugs</button>
34
  <button id="end-exp-btn">End Chat Session</button>
35
  <button id="abort-exp-btn">Abort Experiment</button>
36
  </div>
 
73
  <h3>Feedback</h3>
74
  <form id="feedback-form">
75
  <div class="feedback-col">
76
+ <label for="enter-feedback">Tell us if you noticed something confusing, unexpected, or not working.</label>
77
  <textarea id="enter-feedback" name="feedback"></textarea>
78
  </div>
79
  <br>
 
84
  </form>
85
  </div>
86
  </div>
87
+
88
+ <div id="feedback-status-confirm" class="modal">
89
+ <div class="modal-content">
90
+ <p>Feedback submitted.</p>
91
+ <div class="modal-buttons">
92
+ <button class="modal-btn" id="cancelFeedbackStatusBtn">Ok</button>
93
+ </div>
94
+ </div>
95
+ </div>
96
+ <div id="feedback-status-fail" class="modal">
97
+ <div class="modal-content">
98
+ <p>Feedback failed to submit.</p>
99
+ <div class="modal-buttons">
100
+ <button class="modal-btn" id="cancelFeedbackStatusBtn2">Ok</button>
101
+ </div>
102
+ </div>
103
+ </div>
104
  </div>
105
  <div id="chat-room-widget">
106
  <div id="msgs-container">
 
289
  //handler for feedback modal popup
290
  let feedbackModal = document.getElementById("feedback-modal");
291
  let form = document.getElementById("feedback-form");
292
+ let feedbackConfirm = document.getElementById("feedback-status-confirm");
293
+ let feedbackFail = document.getElementById("feedback-status-fail");
294
  document.getElementById("feedback-btn").onclick = function () {
295
  feedbackModal.style.display = "block";
296
  };
 
298
  feedbackModal.style.display = "none";
299
  };
300
 
301
+ document.getElementById("cancelFeedbackStatusBtn").onclick = function () {
302
+ feedbackConfirm.style.display = "none";
303
+ feedbackFail.style.display = "none";
304
+ };
305
+
306
+ document.getElementById("cancelFeedbackStatusBtn2").onclick = function () {
307
+ feedbackConfirm.style.display = "none";
308
+ feedbackFail.style.display = "none";
309
+ };
310
+
311
  //override form function to instead emit save feedback event
312
  form.addEventListener("submit", function (e) {
313
  e.preventDefault();
 
316
  const feedback = data.get("feedback")?.trim();
317
 
318
  if (!feedback) return;
319
+
320
+ socketio.emit("feedback_given", { feedback }, (response) => {
321
+ if (response?.status === "True" || response?.status === true) {
322
+ feedbackConfirm.style.display = "block";
323
+ }
324
+ });
325
+
326
  form.reset();
327
  document.getElementById("feedback-modal").style.display = "none";
328
  });