summaryrefslogtreecommitdiff
path: root/yaksh/static
diff options
context:
space:
mode:
authormahesh2017-11-23 01:11:59 +0530
committermahesh2017-11-23 01:25:11 +0530
commitae4e2dad126535cda41a7b4a05fdb247f9cdf737 (patch)
tree4f0049a04e1645a0f5fd48e8d275d45a045aba74 /yaksh/static
parent7e2972786599fc23c436e593fcc236defd93c88c (diff)
downloadonline_test-ae4e2dad126535cda41a7b4a05fdb247f9cdf737.tar.gz
online_test-ae4e2dad126535cda41a7b4a05fdb247f9cdf737.tar.bz2
online_test-ae4e2dad126535cda41a7b4a05fdb247f9cdf737.zip
Render error output with django template instead of javascript
Diffstat (limited to 'yaksh/static')
-rw-r--r--yaksh/static/yaksh/css/exam.css2
-rw-r--r--yaksh/static/yaksh/js/requesthandler.js43
2 files changed, 12 insertions, 33 deletions
diff --git a/yaksh/static/yaksh/css/exam.css b/yaksh/static/yaksh/css/exam.css
index ec48a14..7d10629 100644
--- a/yaksh/static/yaksh/css/exam.css
+++ b/yaksh/static/yaksh/css/exam.css
@@ -4,4 +4,4 @@ table td, table th { border: black solid 1px !important;
}
#stdio, #assertion {
table-layout: fixed
-} \ No newline at end of file
+}
diff --git a/yaksh/static/yaksh/js/requesthandler.js b/yaksh/static/yaksh/js/requesthandler.js
index 1c9a290..5d72241 100644
--- a/yaksh/static/yaksh/js/requesthandler.js
+++ b/yaksh/static/yaksh/js/requesthandler.js
@@ -61,9 +61,9 @@ function response_handler(method_type, content_type, data, uid){
}
else{
unlock_screen();
- error_array = res.error;
- generic_error(error_array)
-
+ var error_output = document.getElementById("error_panel");
+ error_output.innerHTML = res.error;
+ focus_on_error();
}
} else {
reset_values();
@@ -71,35 +71,14 @@ function response_handler(method_type, content_type, data, uid){
}
}
-function generic_error(error_array){
- var error_output = document.getElementById("error_panel");
- error_output.innerHTML = ""
- for (var i = 0; i < error_array.length; i++) {
- var panel_danger = document.createElement('div');
- panel_danger.setAttribute('class', "panel panel-danger");
-
- var panel_heading = document.createElement('div');
- panel_heading.setAttribute('class', "panel-heading");
- panel_heading.innerHTML = "Error no. " + (i + 1);
-
- var panel_body = document.createElement('div');
- panel_body.setAttribute('class', "panel-body");
-
- var well = document.createElement('div');
- well.setAttribute('class', "well well-sm");
-
- var pre = document.createElement('pre');
- var code = document.createElement('code');
- console.log(error_array[i])
- code.append(error_array[i]);
- pre.appendChild(code);
- well.appendChild(pre);
- panel_body.appendChild(well);
- panel_danger.appendChild(panel_heading);
- panel_danger.appendChild(panel_body);
- error_output.appendChild(panel_danger);
- }
-}
+function focus_on_error(){
+ var ele = document.getElementById('error_panel')
+ if (ele) {
+ ele.scrollIntoView(true);
+ window.scrollBy(0, -15);
+ }
+ }
+
function ajax_check_code(url, method_type, data_type, data, uid) {
$.ajax({
method: method_type,