]> git.ipfire.org Git - ipfire.org.git/blame - src/templates/fireinfo/index.html
fireinfo: Fix rendering page when country code is unknown
[ipfire.org.git] / src / templates / fireinfo / index.html
CommitLineData
62eaa617 1{% extends "../base.html" %}
140172cf 2
38d161c7 3{% block title %}{{ _("Fireinfo") }}{% end block %}
140172cf 4
38d161c7
MT
5{% block container %}
6 <section>
7 <div class="container">
8 <div class="row">
9 <div class="col col-lg-8">
10 <h1 class="display-2">{{ _("Fireinfo") }}</h1>
e52b45b6 11
38d161c7
MT
12 <p>
13 <strong>Fireinfo</strong> is a tool that anonymously collects statistical
14 data from IPFire systems
15 </p>
68e397dd
MT
16
17 <a class="btn btn-primary btn-lg my-3" href="/profile/random">
18 {{ _("Show a Random Profile") }}
19 </a>
38d161c7 20 </div>
8337a9ab 21 </div>
38d161c7
MT
22 </div>
23 </section>
8337a9ab 24
11ee2139
MT
25 <section class="inverse">
26 <div class="container">
f088f0c7 27 <div class="row justify-content-center align-items-center">
11ee2139 28 {% if latest_release %}
f088f0c7 29 <div class="col-12 col-md-4 text-center text-md-right">
11ee2139
MT
30 <div>
31 <h1 class="display-1 text-primary mb-0">
32 {{ "%.2f%%" % (latest_release.penetration * 100) }}
33 </h1>
34
f088f0c7
MT
35 <h5>
36 {{ _("of all IPFire systems are on the latest release, released %s") % locale.format_date(latest_release.published, relative=True, shorter=True) }}
37 </h5>
ed2e3c1f
MT
38
39 <a class="btn btn-sm btn-light" href="/releases">
40 {{ _("See All Releases") }}
41 </a>
11ee2139
MT
42 </div>
43 </div>
44 {% end %}
f088f0c7
MT
45
46 <div class="col-12 col-md-3 text-center text-md-left">
47 <img class="img-fluid my-5" src="{{ static_url("img/ipfire-tux.png") }}" alt="IPFire Logo" />
48 </div>
11ee2139
MT
49 </div>
50 </div>
51 </section>
52
84604476 53 <section>
574a88c7
MT
54 <div class="container">
55 <div class="row">
56 <div class="col-12">
57 <h4>{{ _("Locations") }}</h4>
58
59 <dl class="row">
60 {% for country_code, percentage in locations %}
61 {% if percentage >= 0.01 %}
62 <dt class="col-sm-6">
63 <span class="flag-icon flag-icon-{{ country_code.lower() }} small mr-1"></span>
64 {{ format_country_name(country_code) }}
65 </dt>
66
67 <dd class="col-sm-6">
68 {% module ProgressBar(percentage, "success") %}
69 </dd>
70 {% end %}
71 {% end %}
72 </dl>
73 </div>
74 </div>
75
76 <div class="row">
77 <div class="col-12">
78 <small>
8444e795 79 {{ _("IPFire is also running in these countries: %s") % locale.list([(format_country_name(c) or c) for c, p in locations if p < 0.01]) }}
574a88c7
MT
80 </small>
81 </div>
82 </div>
83 </div>
84 </section>
85
86 <section class="inverse">
84604476 87 <div class="container">
5a34028b
MT
88 <div class="row align-items-center">
89 <div class="col-12 col-md-6">
90 <h4>{{ _("CPU Vendors") }}</h4>
91
92 <dl class="row">
93 {% for name, percentage in cpu_vendors %}
94 <dt class="col-sm-3">{{ name }}</dt>
95
96 <dd class="col-sm-9">
97 {% module ProgressBar(percentage, "success") %}
98 </dd>
99 {% end %}
100 </dl>
101
19518d6e
MT
102 <a class="btn btn-sm btn-light mb-3" href="/processors">
103 {{ _("Processor Features") }}
104 </a>
105
5a34028b
MT
106 <h4>{{ _("Architectures") }}</h4>
107
108 <dl class="row">
109 {% for name, percentage in arches %}
110 <dt class="col-sm-3">{{ name }}</dt>
111
112 <dd class="col-sm-9">
113 {% module ProgressBar(percentage, "success") %}
114 </dd>
115 {% end %}
116 </dl>
117 </div>
118
119 <div class="col-12 col-md-6 text-center">
84604476
MT
120 <h1>{{ format_size(memory_avg * 1024, "MB") }}</h1>
121
122 <p class="text-muted">
123 {{ _("Average Amount of Memory") }}
124 </p>
125 </div>
126 </div>
127 </div>
128 </section>
129
574a88c7 130 <section>
c4099434 131 <div class="container">
ad962114
MT
132 <div class="row justify-content-center align-items-center">
133 <div class="col-12 col-md-4 text-center text-md-right">
11ee2139
MT
134 <div>
135 <h1 class="display-1 text-success mb-0">
136 {{ "%.2f%%" % (virtual_ratio * 100) }}
137 </h1>
c4099434 138
11ee2139
MT
139 <h5>{{ _("of all IPFire systems are running in a virtual environment") }}</h5>
140 </div>
c4099434
MT
141 </div>
142
143 <div class="col-12 col-md-6">
54a42938 144 <h4>{{ _("Top Hypervisors") }}</h4>
c4099434
MT
145
146 <dl class="row">
147 {% for name, percentage in hypervisors %}
54a42938 148 {% if percentage >= 0.01 %}
c4099434
MT
149 <dt class="col-sm-3">
150 {% if name == "unknown" %}
151 <span class="text-muted">{{ _("Unknown") }}</span>
152 {% elif name == "VMWare" %}
153 VMware
154 {% else %}
155 {{ name }}
156 {% end %}
157 </dt>
11ee2139 158
c4099434 159 <dd class="col-sm-9">
11ee2139 160 {% module ProgressBar(percentage, "success") %}
c4099434
MT
161 </dd>
162 {% end %}
163 {% end %}
164 </dl>
165 </div>
166 </div>
167 </div>
168 </section>
140172cf 169{% end block %}