</div>
</section>
- <section id="fireinfo">
- <div class="container">
- <h1 class="text-center">Fire<strong>Info</strong> Statistics</h1>
-
- <div class="row mb-6 mb-md-5 pb-lg-5 mb-lg-6 justify-content-center">
- <div class="col-6 col-md-3 mb-6 text-center">
- <p class="mb-0 mb-sm-3 fireinfo_cat">Latest Release</p>
- <h6 class="pb-5 fireinfo">{{ latest_release.name }}</h6>
- <div class="r_circle circle mt-5">
- <p class="fireinfo_per">{{ "%.0f%%" % (latest_release.penetration * 100) }}</p>
- </div>
- <script>
- $('.r_circle').circleProgress({ value: {{ latest_release.penetration }}, size: 128, thickness: 4, animation: false, startAngle: -Math.PI / 2, fill: { color: ["#1976d2"] } });
- </script>
- </div>
-
- {% if fireinfo_country %}
- <div class="col-6 col-md-3 text-center">
- <p class="mb-0 mb-sm-3 fireinfo_cat truncate">
- {{ _("%.0f%% of all IPFire systems are running in") % (fireinfo_country.percentage * 100) }}
- </p>
- <h6 class="pb-5 fireinfo">{{ fireinfo_country.country.name }}</h6>
- <div class="v_circle circle mt-5">
- <p class="fireinfo_per">{{ "%.0f%%" % (fireinfo_country.percentage * 100) }}</p>
- </div>
- <script>
- $('.v_circle').circleProgress({ value: {{ fireinfo_country.percentage }}, size: 128, thickness: 4, animation: false, startAngle: -Math.PI / 2, fill: { color: ["#ff8f00"] } });
- </script>
- </div>
- {% end %}
- </div>
-
- <div class="row justify-content-center">
- <a class="btn btn-lg btn-primary" href="/stats">More Stats</a>
- </div>
- </div>
- </section>
-
<section id="appliances">
<div class="container">
<h1 class="text-center">{{ _("Professional Appliances & Services") }}</h1>
posts = self.backend.blog.get_newest(limit=5)
return self.render("index.html", posts=posts,
- latest_release=latest_release,
- fireinfo_country=self.fireinfo.get_random_country_penetration())
+ latest_release=latest_release)
class DonateHandler(BaseHandler):