blob: 8e6f31a1fe33158674acdfbeb2ae2347f906fe65 [file] [log] [blame]
Mitja Nikolaus6a679132018-08-30 14:35:29 +02001"""Django template tags for crashreport statistics."""
2
Dirk Vogt62ff7f22017-05-04 16:07:21 +02003from django import template
4from django.template import loader
5
6register = template.Library()
7
Dirk Vogt62ff7f22017-05-04 16:07:21 +02008
9@register.simple_tag
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020010def device_overview(
11 title="General Information", uuid="e1c0cc95-ab8d-461a-a768-cb8d9d7adb04"
12):
Mitja Nikolaus6a679132018-08-30 14:35:29 +020013 """Render general device information."""
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020014 t = template.loader.get_template(
15 "crashreport_stats/tags/device_overview.html"
16 )
17 return t.render(
18 {"uuid": uuid, "title": title, "element_name": "device_overview"}
19 )
Dirk Vogt1accb672017-05-10 14:07:42 +020020
21
22@register.simple_tag
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020023def device_crashreport_table(
24 title="Crashreports", uuid="e1c0cc95-ab8d-461a-a768-cb8d9d7adb04"
25):
Mitja Nikolaus6a679132018-08-30 14:35:29 +020026 """Render device crashreport table."""
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020027 t = template.loader.get_template(
28 "crashreport_stats/tags/device_crashreport_table.html"
29 )
30 return t.render(
31 {
32 "uuid": uuid,
33 "title": title,
34 "element_name": "device_crashreport_table",
35 }
36 )
37
Dirk Vogt1accb672017-05-10 14:07:42 +020038
39@register.simple_tag
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020040def device_update_history(
41 title="Update History", uuid="e1c0cc95-ab8d-461a-a768-cb8d9d7adb04"
42):
Mitja Nikolaus6a679132018-08-30 14:35:29 +020043 """Render device update history."""
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020044 t = template.loader.get_template(
45 "crashreport_stats/tags/device_update_history.html"
46 )
47 return t.render(
48 {
49 "uuid": uuid,
50 "title": title,
51 "element_name": "device_update_statistic",
52 }
53 )
54
Dirk Vogt1accb672017-05-10 14:07:42 +020055
56@register.simple_tag
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020057def device_report_history(
58 title="Report History", uuid="e1c0cc95-ab8d-461a-a768-cb8d9d7adb04"
59):
Mitja Nikolaus6a679132018-08-30 14:35:29 +020060 """Render device report history."""
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020061 t = template.loader.get_template(
62 "crashreport_stats/tags/device_report_history.html"
63 )
64 return t.render(
65 {"uuid": uuid, "title": title, "element_name": "device_report_history"}
66 )
67
Dirk Vogt1accb672017-05-10 14:07:42 +020068
69@register.simple_tag
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020070def versions_table(title="FP2 OS Versions", is_official_release="1"):
Mitja Nikolaus6a679132018-08-30 14:35:29 +020071 """Render versions table."""
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020072 t = template.loader.get_template(
73 "crashreport_stats/tags/versions_table.html"
74 )
75 return t.render(
76 {
77 "title": title,
78 "is_official_release": is_official_release,
79 "element_name": "versions_overview_table",
80 }
81 )
82
83
84@register.simple_tag
85def versions_pie_chart(
86 title="FP2 Version Distribution", is_official_release="1"
87):
Mitja Nikolaus6a679132018-08-30 14:35:29 +020088 """Render versions pie chart."""
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +020089 t = template.loader.get_template(
90 "crashreport_stats/tags/versions_pie_chart.html"
91 )
92 return t.render(
93 {
94 "title": title,
95 "is_official_release": is_official_release,
96 "element_name": "versions_overview_pie_chart",
97 }
98 )
99
100
101@register.simple_tag
102def versions_area_chart(
103 title="FP2 Version Distribution", is_official_release="1"
104):
Mitja Nikolaus6a679132018-08-30 14:35:29 +0200105 """Render versions area chart."""
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +0200106 t = template.loader.get_template(
107 "crashreport_stats/tags/versions_area_chart.html"
108 )
109 return t.render(
110 {
111 "title": title,
112 "is_official_release": is_official_release,
113 "element_name": "versions_overview_area_chart",
114 }
115 )
116
117
118@register.simple_tag
119def versions_bar_chart(title="Version Stability", is_official_release="1"):
Mitja Nikolaus6a679132018-08-30 14:35:29 +0200120 """Render versions bar chart."""
Mitja Nikolauscb50f2c2018-08-24 13:54:48 +0200121 t = template.loader.get_template(
122 "crashreport_stats/tags/versions_bar_chart.html"
123 )
124 return t.render(
125 {
126 "title": title,
127 "is_official_release": is_official_release,
128 "element_name": "versions_overview_bar_chart",
129 }
130 )