|
a |
|
b/OSSEval/analysis/templates/analysis/analysis_report.html |
|
|
1 |
{% extends "base.html" %}
|
|
|
2 |
{% load staticfiles %}
|
|
|
3 |
{% block content %}
|
|
|
4 |
{% include "analysis/analysis_tabs.html" %}
|
|
|
5 |
|
|
|
6 |
<div id="run">
|
|
|
7 |
<!-- TODO: create custom template tag to make it work for a generic number of page levels
|
|
|
8 |
https://docs.djangoproject.com/en/dev/howto/custom-template-tags/#inclusion-tags -->
|
|
|
9 |
<ul>
|
|
|
10 |
{% for p in methodology_version.page_set.all %}
|
|
|
11 |
<li><a href="#page{{ p.id }}">{{ p.name }}</a></li>
|
|
|
12 |
{% endfor %}
|
|
|
13 |
</ul>
|
|
|
14 |
{% for p in methodology_version.page_set.all %}
|
|
|
15 |
<div id="page{{ p.id }}">
|
|
|
16 |
<ul>
|
|
|
17 |
{% for p1 in p.page_set.all %}
|
|
|
18 |
<li><a href="#page{{ p1.id }}">{{ p1.name }}</a></li>
|
|
|
19 |
{% endfor %}
|
|
|
20 |
</ul>
|
|
|
21 |
{% for p1 in p.page_set.all %}
|
|
|
22 |
<div id="page{{ p1.id }}"><form>
|
|
|
23 |
{% for q in p1.question_set.all %}
|
|
|
24 |
<label>{{ q.text }}:</label> <span id="msgq{{ q.id }}"></span><br>
|
|
|
25 |
{% for c in q.choice_set.all %}
|
|
|
26 |
<label><input type="radio" class="radioquestion" name="radioquestion{{ q.id }}" question_id="{{ q.id }}" id="question{{ q.id }}_{{ c.order }}" value="{{ c.order }}" /> {{ c.text }}</label><br>
|
|
|
27 |
{% endfor %}
|
|
|
28 |
<label>Notes": </label><input class="questionnotes" id="notes{{ q.id }}" question_id="{{ q.id }}" type="text" size="80" id="questionnotes{{ q.id }}" value=" " /><br>
|
|
|
29 |
<div id="MetadataInfo{{ q.id }}"><img src="{% static "images/wait1.gif" %}"/></div><hr>
|
|
|
30 |
{% endfor %}
|
|
|
31 |
</form></div>
|
|
|
32 |
{% endfor %}
|
|
|
33 |
</div>
|
|
|
34 |
<script type="text/javascript">
|
|
|
35 |
$('div#page{{ p.id }}').tabs();
|
|
|
36 |
</script>
|
|
|
37 |
{% endfor %}
|
|
|
38 |
<script type="text/javascript">
|
|
|
39 |
//f cannot be moved to osseval.js as we have csrf_token
|
|
|
40 |
var save_answer_success = function(data, textStatus, jqXHR) { $('span#msgq'+data.question_id).show('slow');$('span#msgq'+data.question_id).html('Saved').css("color","green").delay(3000).fadeOut(); }
|
|
|
41 |
var save_answer_error = function(data, textStatus, jqXHR) { $('span#msgq'+data.question_id).show('slow');$('span#msgq'+data.question_id).html('Error: ' + data.response).css("color","green").delay(6000).fadeOut(); }
|
|
|
42 |
var f=function() {
|
|
|
43 |
$.ajax({
|
|
|
44 |
async: true, type: 'POST',
|
|
|
45 |
url: 'save_answer',
|
|
|
46 |
dataType: 'json',
|
|
|
47 |
success: save_answer_success,
|
|
|
48 |
error: save_answer_error,
|
|
|
49 |
data: {csrfmiddlewaretoken: '{{ csrf_token }}', question_id : $(this).attr('question_id'), id_selected_instance: id_selected_instance, value: $(this).val(), notes: $('input#notes'+$(this).attr('question_id')).val() }
|
|
|
50 |
});
|
|
|
51 |
}
|
|
|
52 |
$('input.radioquestion').bind('click', f);
|
|
|
53 |
var timeout;
|
|
|
54 |
$('input.questionnotes').bind('input', function () {
|
|
|
55 |
clearTimeout(timeout);
|
|
|
56 |
var self = this;
|
|
|
57 |
timeout = setTimeout(function () {
|
|
|
58 |
question_id = $(self).attr('question_id');
|
|
|
59 |
$.ajax({
|
|
|
60 |
async: true, type: 'POST',
|
|
|
61 |
url: 'save_answer',
|
|
|
62 |
dataType: 'json',
|
|
|
63 |
success: save_answer_success,
|
|
|
64 |
error: save_answer_error,
|
|
|
65 |
data: {csrfmiddlewaretoken: '{{ csrf_token }}', question_id: question_id, id_selected_instance: id_selected_instance, value: $('input:radio[name=radioquestion'+question_id+']:checked').val(), notes: $(self).val() }
|
|
|
66 |
});
|
|
|
67 |
}, 1500);
|
|
|
68 |
});
|
|
|
69 |
</script>
|
|
|
70 |
</div>
|
|
|
71 |
<script type="text/javascript">
|
|
|
72 |
$('div#run').tabs();
|
|
|
73 |
updateAnswers(id_selected_instance);
|
|
|
74 |
updateMetadata(id_selected_instance);
|
|
|
75 |
</script>
|
|
|
76 |
{% endblock %}
|
|
|
77 |
{% block left_menu %}
|
|
|
78 |
{% include "analysis/analysis_left_menu.html" %}
|
|
|
79 |
<script type="text/javascript">$("#analysis_questions").addClass("active");</script>
|
|
|
80 |
{% endblock %} |