diff options
Diffstat (limited to 'testapp/templates/exam/question.html')
-rw-r--r-- | testapp/templates/exam/question.html | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/testapp/templates/exam/question.html b/testapp/templates/exam/question.html new file mode 100644 index 0000000..8b589b6 --- /dev/null +++ b/testapp/templates/exam/question.html @@ -0,0 +1,91 @@ +{% extends "base.html" %} + +{% block title %} Answer question {% endblock %} + +{% block script %} +<script type="text/javascript"> +<!-- +var time_left = {{ time_left }}; + +function submitCode() +{ + document.forms["code"].submit(); + var x = document.getElementById("status"); + x.innerHTML = "<strong>Checking answer ...</strong>"; + x = document.getElementById("check"); + x.disabled = true; + x.value = "Checking Answer ..."; + document.getElementById("skip").disabled = true; +} + +function secs_to_time(secs) +{ + var h = Math.floor(secs/3600); + var h_s = (h > 0) ? h+'h:' : ''; + var m = Math.floor((secs%3600)/60); + var m_s = (m > 0) ? m+'m:' : ''; + var s_s = Math.floor(secs%60) + 's'; + return h_s + m_s + s_s; +} + +function update_time() +{ + time_left -= 1; + if (time_left) { + var elem = document.getElementById("time_left"); + var t_str = secs_to_time(time_left); + elem.innerHTML = "<strong> Time left: " + t_str + "</strong>"; + setTimeout("update_time()", 1000); + } + else { + document.forms["code"].submit(); + } +} +//--> +</script> +{% endblock script %} + +{% block onload %} onload="update_time()" {% endblock %} + +{% block content %} +<h3> {{ question.summary }} </h3> + +<p>{{ question.description|safe }} +<br/> +(Marks: {{ question.points }}) </p> + +{% if error_message %}<p><strong>ERROR:</strong></p><pre>{{ error_message }}</pre>{% endif %} + +<p id="status"></p> + +<form id="code" action="{{URL_ROOT}}/exam/{{ question.id }}/check/" method="post"> +{% csrf_token %} +{% if question.type == "mcq" %} +{% for option in question.options.strip.splitlines %} +<input name="answer" type="radio" value="{{option}}" />{{option}} <br/> +{% endfor %} +{% else %} +<textarea rows="20" cols="100" name="answer">{% if last_attempt %}{{last_attempt.strip}}{% else %}{% if question.type == "bash" %}#!/bin/bash{% else %}# Enter your answer here.{% endif %}{% endif %}</textarea> +{% endif %} +<br/> +{% if question.type == "mcq" %} +<input id="check" type="submit" name="check" value="Submit answer"/> +{% else %} +<input id="check" type="submit" name="check" value="Check Answer" +onclick="submitCode();"/> +{% endif %} +<input id="skip" type="submit" name="skip" value="Skip question" /> +</form> + +<p> {{ user.first_name.title }} {{ user.last_name.title }}, +you have {{ paper.questions_left }} question(s) left in {{ quiz_name }}.</p> + +<p id="time_left"> <strong> Time left: </strong> </p> + +<hr/> +<form id="logout" action="{{URL_ROOT}}/exam/quit/" method="post"> +{% csrf_token %} +<input type="submit" name="quit" value="Quit exam and logout" /> +</form> + +{% endblock content %} |