summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--testapp/exam/views.py31
-rw-r--r--testapp/static/exam/js/add_question.js4
-rw-r--r--testapp/static/exam/js/add_quiz.js1
-rw-r--r--testapp/static/exam/js/edit_question.js4
-rw-r--r--testapp/templates/exam/question.html9
5 files changed, 28 insertions, 21 deletions
diff --git a/testapp/exam/views.py b/testapp/exam/views.py
index 6c977ee..4b9d438 100644
--- a/testapp/exam/views.py
+++ b/testapp/exam/views.py
@@ -218,10 +218,10 @@ def edit_question(request):
question.points = points[j]
question.test = test[j]
question.options = options[j]
- question.type = type[j]
- edit_tags = tags[j]
question.active = active[j]
question.snippet = snippet[j]
+ question.type = type[j]
+ edit_tags = tags[j]
question.save()
for tag in question.tags.all():
question.tags.remove(tag)
@@ -264,7 +264,7 @@ def add_question(request, question_id=None):
question = Question.objects.get(id=question_id)
for tag in question.tags.all():
question.tags.remove(tag)
- tags = form['tags'].data.split(', ')
+ tags = form['tags'].data.split(',')
for i in range(0, len(tags)-1):
tag = tags[i].strip()
question.tags.add(tag)
@@ -303,7 +303,7 @@ def add_question(request, question_id=None):
def add_quiz(request, quiz_id=None):
"""To add a new quiz in the database.
- Create a new question and store it."""
+ Create a new quiz and store it."""
user = request.user
if not user.is_authenticated() or not is_moderator(user):
@@ -638,7 +638,7 @@ def start(request, questionpaper_id=None):
context_instance=ci)
-def question(request, q_id, questionpaper_id):
+def question(request, q_id, questionpaper_id,success_msg=None):
"""Check the credentials of the user and start the exam."""
user = request.user
@@ -658,21 +658,29 @@ def question(request, q_id, questionpaper_id):
if time_left == 0:
return complete(request, reason='Your time is up!')
quiz_name = paper.question_paper.quiz.description
- context = {'question': q, 'paper': paper, 'user': user,
- 'quiz_name': quiz_name,
- 'time_left': time_left}
+ if success_msg is None:
+ context = {'question': q, 'paper': paper, 'user': user,
+ 'quiz_name': quiz_name,
+ 'time_left': time_left,}
+
+ else:
+ context = {'question': q, 'paper': paper, 'user': user,
+ 'quiz_name': quiz_name,
+ 'time_left': time_left,
+ 'success_msg':success_msg}
+
ci = RequestContext(request)
return my_render_to_response('exam/question.html', context,
context_instance=ci)
-def show_question(request, q_id, questionpaper_id):
+def show_question(request, q_id, questionpaper_id,success_msg=None):
"""Show a question if possible."""
if len(q_id) == 0:
msg = 'Congratulations! You have successfully completed the quiz.'
return complete(request, msg)
else:
- return question(request, q_id, questionpaper_id)
+ return question(request, q_id, questionpaper_id,success_msg)
def check(request, q_id, questionpaper_id=None):
@@ -745,7 +753,8 @@ def check(request, q_id, questionpaper_id=None):
context_instance=ci)
else:
next_q = paper.completed_question(question.id)
- return show_question(request, next_q, questionpaper_id)
+ success_msg = True
+ return show_question(request, next_q, questionpaper_id,success_msg)
def quit(request, answerpaper_id=None):
diff --git a/testapp/static/exam/js/add_question.js b/testapp/static/exam/js/add_question.js
index ab27dc0..a77e392 100644
--- a/testapp/static/exam/js/add_question.js
+++ b/testapp/static/exam/js/add_question.js
@@ -139,9 +139,7 @@ function textareaformat()
$('#id_snippet').bind('blur', function( event ){
document.getElementById("id_snippet").rows=1;
document.getElementById("id_snippet").cols=40;
- $('#id_snippet').val("#To avoid indentation errors use tabs for indentation for Python questions");
- });
-
+ });
$('#id_type').bind('change',function(event){
var value = document.getElementById('id_type').value;
if(value == 'mcq')
diff --git a/testapp/static/exam/js/add_quiz.js b/testapp/static/exam/js/add_quiz.js
index 56b0e95..d5688a8 100644
--- a/testapp/static/exam/js/add_quiz.js
+++ b/testapp/static/exam/js/add_quiz.js
@@ -2,7 +2,6 @@ function test()
{
if (document.getElementById("id_description").value != "")
{
- alert("reached condition");
document.getElementById("submit").innerHTML = "Save";
}
}
diff --git a/testapp/static/exam/js/edit_question.js b/testapp/static/exam/js/edit_question.js
index 023b654..2cf304c 100644
--- a/testapp/static/exam/js/edit_question.js
+++ b/testapp/static/exam/js/edit_question.js
@@ -154,10 +154,6 @@ function textareaformat()
this.rows = 5;
$(snippet_id).val("");
});
- $(snippet_id).bind('blur',function(event){
- this.rows = 1;
- $(snippet_id).val("#To avoid indentation errors use tab for indentation for Python questions");
- });
$(snippet_id).bind('keydown', function (event){
catchTab(snippet_id,event);
});
diff --git a/testapp/templates/exam/question.html b/testapp/templates/exam/question.html
index 1d801b0..1282130 100644
--- a/testapp/templates/exam/question.html
+++ b/testapp/templates/exam/question.html
@@ -78,6 +78,11 @@ function update_time()
<font size=3 face=arial> {{ question.description|safe }} </font>
{% if error_message %}<h5>ERROR:</h5><div class="alert alert-error">{{ error_message }}</div>{% endif %}
+ {% if success_msg %}
+ <script type="text/javascript">
+ alert("Congratulations, that's correct. Let's go to next question");
+ </script>
+ {% endif %}
<p id="status"></p>
<form id="code" action="{{URL_ROOT}}/exam/{{ question.id }}/check/{{ paper.question_paper.id }}/" method="post">
{% csrf_token %}
@@ -87,9 +92,9 @@ function update_time()
{% endfor %}
{% else %}
- <textarea tabindex=1 rows="3" style="width:750px;margin-bottom:15px;height:auto;" readonly=yes name="snippet" id="snippet" wrap="off">{% if last_attempt %}{% else %}{% if question.type == "bash" %} #!/bin/bash{% else %} #To avoid errors use tabs for indentation for Python questions &#13;&#10; {{ question.snippet }}{% endif %}{% endif %}</textarea>
+ <textarea tabindex=1 rows="3" style="width:750px;margin-bottom:15px;height:auto;" readonly=yes name="snippet" id="snippet" wrap="off">{% if last_attempt %}{{question.snippet}}{% else %}{% if question.type == "bash" %} #!/bin/bash{% else %} #To avoid errors use tabs for indentation for Python questions &#13;&#10; {{ question.snippet }}{% endif %}{% endif %}</textarea>
- <textarea tabindex=1 rows="10" style="width:750px;margin-bottom:10px;" name="answer" id="answer" wrap="off" onkeydown="return catchTab(this,event)">{% if last_attempt %}{{last_attempt.strip}}{% else %}{% if question.type == "bash" %}{% else %}{% endif %}{% endif %}</textarea>
+ <textarea tabindex=1 rows="10" style="width:750px;margin-bottom:10px;" name="answer" id="answer" wrap="off" onkeydown="return catchTab(this,event)">{% if last_attempt %}{{last_attempt}}{% else %}{% if question.type == "bash" %}{% else %}{% endif %}{% endif %}</textarea>
<br>
<script type="text/javascript">