1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
{% extends "base.html" %}
{% load i18n %}
{% load range %}
{% block extra_head %}
{{form.media}}
<script language="javascript" type="text/javascript" src="{{STATIC_URL}}js/jqplot/jquery.jqplot.min.js"></script>
<script language="javascript" type="text/javascript" src="{{STATIC_URL}}js/jqplot/plugins/jqplot.canvasTextRenderer.min.js"></script>
<script language="javascript" type="text/javascript" src="{{STATIC_URL}}js/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js"></script>
<script language="javascript" type="text/javascript" src="{{STATIC_URL}}js/jqplot/plugins/jqplot.highlighter.min.js"></script>
<script language="javascript" type="text/javascript" src="{{STATIC_URL}}js/jqplot/plugins/jqplot.pieRenderer.min.js"></script>
<link rel="stylesheet" href="{{STATIC_URL}}js/jqplot/jquery.jqplot.min.css" />
{% endblock %}
{% block content %}
<div class='dashboard'>
{% for lbl, dashboard in items %}
<script language="javascript" type="text/javascript">
$(document).ready(function(){
var values{{forloop.counter0}} = [];
{% for idx, lbl, values in dashboard.values %} {% for value in values %}
{% ifequal forloop.parentloop.counter0 0 %}values{{forloop.parentloop.parentloop.counter0}}.push([{{value}}, 0]);
{% else %}values{{forloop.parentloop.parentloop.counter0}}[{{forloop.counter0}}][1] = {{value}};{% endifequal %}{% endfor%}{% endfor%}
var plot{{forloop.counter0}} = $.jqplot('chart{{forloop.counter0}}',
[values{{forloop.counter0}}], {
series:[{showMarker:false}],
axes:{
xaxis:{
label:'{% trans "Year" %}'
},
yaxis:{
label:'{% trans "Number"%}',
min:0
}
},
highlighter: {
show: true,
sizeAdjust: 7.5
}
});
});
</script>
<h3>{{lbl}}</h3>
<div>
<h4>{% trans "Numbers" %}</h4>
<p><strong>{% trans "Total:" %}</strong> {{dashboard.total_number}}</p>
<div class='table'>
<div id="chart{{forloop.counter0}}" style="height:400px; width:700px;"></div>
{% comment %}
<table>
{% for idx, lbl, values in dashboard.values %}
<tr class='idx {% if forloop.counter0|divisibleby:"2" %}even{%else%}odd{%endif%}'>
<th>{{lbl}}</th>
{% for value in values %}<td>{{value}}</td>{% endfor%}
</tr>
{% endfor%}
</table>{% endcomment %}
</div>
{% if dashboard.years %}
<h4>{% trans "By years" %}</h4>
<ul>
<li><strong>{% trans "Average:" %}</strong> {{dashboard.average}}</li>
<li><strong>{% trans "Variance:" %}</strong> {{dashboard.variance}}</li>
<li><strong>{% trans "Standard deviation:" %}</strong> {{dashboard.standard_deviation}}</li>
<li><strong>{% trans "Median:" %}</strong> {{dashboard.median}}</li>
<li><strong>{% trans "Mode:" %}</strong> {{dashboard.mode}}</li>
</ul>
{% endif %}
{% if dashboard.operation_average %}
<h4>{% trans "By operations" %}</h4>
<ul>
<li><strong>{% trans "Average:" %}</strong> {{dashboard.operation_average}}</li>
<li><strong>{% trans "Variance:" %}</strong> {{dashboard.operation_variance}}</li>
<li><strong>{% trans "Standard deviation:" %}</strong> {{dashboard.operation_standard_deviation}}</li>
<li><strong>{% trans "Median:" %}</strong> {{dashboard.operation_median}}</li>
<li><strong>{% trans "Mode:" %}</strong> {{dashboard.operation_mode}}</li>
</ul>
{% endif %}
<h4>{% trans "Created last" %}</h4>
<div class='table'>
<table>
<tr><th>{{lbl}}</th><th>{% trans "Created" %}</th><th></th></tr>
{% for item in dashboard.lasts %}<tr>
<td class='ref'>{{item}}</td>
<td>{{item.history_date}}</td>
<td>{% if item.get_show_url %}<a href="#" onclick='load_window("{{item.get_show_url}}")'>{%trans "Show"%}</a>{%endif%}</td>
</tr>{% endfor %}
</table>
</div>
<h4>{% trans "Recent changes" %}</h4>
<div class='table'>
<table>
<tr><th>{{lbl}}</th><th>{% trans "Modified" %}</th><th></th></tr>
{% for item in dashboard.recents %}<tr>
<td class='ref'>{{item}}</td>
<td>{{item.history_date}}</td>
<td>{% if item.get_show_url %}<a href="#" onclick='load_window("{{item.get_show_url}}")'>{%trans "Show"%}</a>{%endif%}</td>
</tr>{% endfor %}
</table>
</div>
</div>
{% endfor%}
<h3>{% trans "Users" %}</h3>
<div>
<script language="javascript" type="text/javascript">
$(document).ready(function(){
var values_users = [];
{% for user_type in ishtar_users.types %}
values_users.push(['{{user_type.person__person_types__label}}', {{user_type.number}}]); {% endfor%}
var plot_users = jQuery.jqplot ('user_chart', [values_users],
{
seriesDefaults: {
renderer: jQuery.jqplot.PieRenderer,
rendererOptions: {
showDataLabels: true
}
},
legend: { show:true, location: 's' }
}
);
});
</script>
<div id="user_chart" style="height:400px; width:700px;"></div>
<div class='table'>
<table>
<tr><th>{% trans "User type" %}</th><th>{% trans "Number" %}</th></tr>
{% for user_type in ishtar_users.types %}
<tr>
<td class='string'>{{user_type.person__person_types__label}}{#TODO: Display all#}</td>
<td>{{user_type.number}}</td>
</tr>
{% endfor%}
</table>
</div>
</div>
{% endblock %}
|