{% block title %}Fireinfo{% end block %}
{% block body %}
- {% if lang == "de" %}
- <p class="lead ac">
- <strong>Fireinfo</strong> ist ein Tool, welches anonym Informationen
- über die in IPFire-Systemen verbaute Hardware sammelt.
- </p>
- <p class="lead ac">
- Diese Daten sollen den Entwicklern helfen zu erkennen, welche
- Hardware am häufigsten eingesetzt wird und sind auch hilfreich
- um Hardware-Probleme ausfindig zu machen.
- </p>
- {% else %}
- <p class="lead ac">
- <strong>Fireinfo</strong> is a tool that anonymously collects statistical
- data from IPFire systems.
- </p>
- <p class="lead ac">
- These data should help the developers to learn
- which hardware is used most often to run an IPFire system, but is also
- handy when it comes to debugging hardware problems.
- </p>
- {% end %}
-
- <hr>
-
- <div class="row">
- <div class="col-lg-8 col-md-8 col-lg-offset-2 well ac">
- {% if lang == "de" %}
- <p>
- Bitte geben Sie die Profil-ID von ihrem System ein, welche
- Sie auf der Fireinfo-Seite des Webinterfaces finden können:
- </p>
- {% else %}
- <p>
- Please enter the profile ID of your system, which can be found
- on the fireinfo page on the web interface, to see your profile:
- </p>
- {% end %}
-
- <hr>
-
- <form class="form-inline" method="POST" action="" role="form">
- <div class="form-group">
- <label class="sr-only" for="profileId">{{ _("Profile ID") }}</label>
- <input type="text" class="form-control" name="profile_id" id="profileId"
- value="" placeholder="{{ _("Profile ID") }}">
- <button type="submit" class="btn btn-default">{{ _("Show") }}</button>
- </div>
- {% raw xsrf_form_html() %}
- </form>
-
- <br>
-
- <a href="/profile/random" class="text-muted">{{ _("Random profile") }}</a>
+<div class="container">
+ <section class="features-content col-12">
+ <h2 class="display-2 text-center mb-0">{{ _("Fireinfo") }}</h2>
+ {% if lang == "de" %}
+ <p class="lead text-center">
+ <strong>Fireinfo</strong> ist ein Tool, welches anonym Informationen
+ über die in IPFire-Systemen verbaute Hardware sammelt.
+ </p>
+ <p>
+ Diese Daten sollen den Entwicklern helfen zu erkennen, welche
+ Hardware am häufigsten eingesetzt wird und sind auch hilfreich
+ um Hardware-Probleme ausfindig zu machen.
+ </p>
+ {% else %}
+ <p class="lead text-center">
+ <strong>Fireinfo</strong> is a tool that anonymously collects statistical
+ data from IPFire systems.
+ </p>
+ <p>
+ These data should help the developers to learn
+ which hardware is used most often to run an IPFire system, but is also
+ handy when it comes to debugging hardware problems.
+ </p>
+ {% end %}
+
+ <div class="row mt-6">
+ <div class="col">
+ {% if lang == "de" %}
+ <p>
+ Bitte geben Sie die Profil-ID von ihrem System ein, welche
+ Sie auf der Fireinfo-Seite des Webinterfaces finden können:
+ </p>
+ {% else %}
+ <p>
+ Please enter the profile ID of your system, which can be found
+ on the fireinfo page on the web interface, to see your profile:
+ </p>
+ {% end %}
+ </div>
+ <div class="col">
+ <form class="form-inline" method="POST" action="" role="form">
+ <div class="form-group">
+ <label class="sr-only" for="profileId">{{ _("Profile ID") }}</label>
+ <input type="text" class="form-control" name="profile_id" id="profileId"
+ value="" placeholder="{{ _("Profile ID") }}">
+ <button type="submit" class="btn btn-default">{{ _("Show") }}</button>
+ </div>
+ {% raw xsrf_form_html() %}
+ </form>
+
+ <p><a href="/profile/random" class="text-muted">{{ _("Random profile") }}</a></p>
+ </div>
</div>
- </div>
+ </section>
+</div>
{% end block %}
{% block title %}{{ _("Profile") }} {{ profile.public_id }}{% end block %}
{% block body %}
- <div class="page-header">
- <h2>{{ _("Profile") }} <small>{{ profile.public_id }}</small></h2>
- </div>
-
- <div class="ac">
- <h3>{{ profile.release }}</h3>
-
- {% for zone in profile.network %}
- {% if zone == "red" %}
- <span class="label label-danger">{{ _("RED") }}</span>
- {% elif zone == "green" %}
- <span class="label label-success">{{ _("GREEN") }}</span>
- {% elif zone == "orange" %}
- <span class="label label-warning">{{ _("ORANGE") }}</span>
- {% elif zone == "blue" %}
- <span class="label label-info">{{ _("BLUE") }}</span>
- {% end %}
- {% end %}
- </div>
+<div class="container">
+ <section class="features-content col-12">
+ <h2 class="display-2">{{ _("Profile") }} <small>{{ profile.public_id }}</small></h2>
- <hr>
-
- {% if profile.appliance_id %}
- <div class="alert alert-success">
- {% if profile.appliance_id.startswith("fountainnetworks-") %}
- <span class="pull-right">
- {{ _("Get yours at") }}
- <a href="http://www.fountainnetworks.com/" class="alert-link">
- fountainnetworks.com
- </a>
- </span>
- {% elif profile.appliance_id.startswith("lightningwirelabs-") %}
- <span class="pull-right">
- {{ _("Get yours at") }}
- <a href="http://www.lightningwirelabs.com/products/ipfire/appliances" class="alert-link">
- lightningwirelabs.com
- </a>
- </span>
- {% end %}
-
- <strong>{{ profile.appliance }}</strong>
- </div>
- {% end %}
-
- <div class="well well-sm">
<div class="row">
- <div class="col-md-7">
- <h4>
- <a href="/statistics/processors">{{ _("Processor") }}</a>
- </h4>
+ <div class="col">
+ <h3>{{ profile.release }}</h3>
+
<p>
- <strong>{{ profile.processor }}</strong>
+ {% for zone in profile.network %}
+ {% if zone == "red" %}
+ <span class="label label-danger">{{ _("RED") }}</span>
+ {% elif zone == "green" %}
+ <span class="label label-success">{{ _("GREEN") }}</span>
+ {% elif zone == "orange" %}
+ <span class="label label-warning">{{ _("ORANGE") }}</span>
+ {% elif zone == "blue" %}
+ <span class="label label-info">{{ _("BLUE") }}</span>
+ {% end %}
+ {% end %}
</p>
-
+ </div>
+
+ <div class="col">
+ {% if profile.appliance_id %}
+ <div class="alert alert-success">
+ <p>
+ {% if profile.appliance_id.startswith("fountainnetworks-") %}
+ <span class="pull-right">
+ {{ _("Get yours at") }}
+ <a href="//www.fountainnetworks.com/" class="alert-link">
+ fountainnetworks.com
+ </a>
+ </span>
+ {% elif profile.appliance_id.startswith("lightningwirelabs-") %}
+ <span class="pull-right">
+ {{ _("Get yours at") }}
+ <a href="//www.lightningwirelabs.com/products/ipfire/appliances" class="alert-link">
+ lightningwirelabs.com
+ </a>
+ </span>
+ {% end %}
+
+ <strong>{{ profile.appliance }}</strong>
+ </p>
+ </div>
+ {% end %}
+ </div>
+ </div>
+
+ <div class="row">
+ <div class="col">
+ <h4><a href="/statistics/processors">{{ _("Processor") }}</a></h4>
+ <p><strong>{{ profile.processor }}</strong></p>
{% if profile.processor.count >= 2 %}
<p>
{% if profile.processor.count == 2 %}
{% else %}
{{ _("%s core processor") % profile.processor.count }}
{% end %}
-
+
{% if profile.processor.uses_ht() %}
{% if profile.processor.vendor == "Intel" %}
{{ _("using Intel Hyper-Threading Technology") }}
{% end %}
</p>
{% end %}
-
+
<ul class="list-inline">
<li>
- {{ _("Supported features") }}:
+ <strong>{{ _("Supported features") }}:</strong>
</li>
{% for cap, available in profile.processor.capabilities %}
<li>
{% end %}
</ul>
</div>
-
- <div class="col-md-5">
+
+ <div class="col">
<dl class="dl-horizontal">
{% if profile.virtual %}
<dt>
<dt>{{ _("Vendor") }}</dt>
<dd>{{ profile.system_vendor }}</dd>
{% end %}
-
+
{% if profile.system_model %}
<dt>{{ _("Model") }}</dt>
<dd>{{ profile.system_model }}</dd>
{% end %}
{% end %}
-
+
{% if profile.memory %}
<dt>
<a href="/statistics/memory">{{ _("Memory") }}</a>
</span>
</dd>
{% end %}
-
+
{% if profile.storage %}
<dt>{{ _("System Storage") }}</dt>
<dd>{{ format_size(profile.storage) }}</dd>
{% end %}
-
+
{% if profile.kernel %}
<dt>{{ _("Kernel") }}</dt>
<dd>{{ profile.kernel }}</dd>
{% end %}
-
+
{% if profile.location %}
<dt>
<a href="/statistics/geo-locations">{{ _("Location") }}</a>
{{ profile.location_string }}
</dd>
{% end %}
-
+
{% if profile.language %}
<dt>
<a href="/statistics/languages">{{ _("Language") }}</a>
</dl>
</div>
</div>
- </div>
-
- {% if profile.devices %}
- {% module FireinfoDeviceAndGroupsTable([d for d in profile.devices if d.is_showable()]) %}
- <hr>
- {% end %}
-
- <h3>{{ _("Signature images") }}</h3>
- <ul class="list-unstyled">
- {% for i in range(1) %}
- <li>
- <!-- XXX need some bbcode here -->
- <a href="http://i-use.ipfire.org/profile/{{ profile.public_id }}/{{ i }}.png">
- <img src="http://i-use.ipfire.org/profile/{{ profile.public_id }}/{{ i }}.png"
- alt="{{ _("Signature image") }}" />
- </a>
- </li>
- {% end %}
- </ul>
-
- <div class="pull-right">
- <p>
- {{ _("Last update") }}: {{ locale.format_date(profile.time_updated) }}
- </p>
- </div>
+
+ <div class="row">
+ <div class="col">
+ {% if profile.devices %}
+ {% module FireinfoDeviceAndGroupsTable([d for d in profile.devices if d.is_showable()]) %}
+ <hr>
+ {% end %}
+ </div>
+ </div>
+
+ <div class="row">
+ <div class="col">
+ <h3>{{ _("Signature images") }}</h3>
+ <ul class="list-unstyled">
+ {% for i in range(1) %}
+ <li>
+ <!-- XXX need some bbcode here -->
+ <a href="//i-use.ipfire.org/profile/{{ profile.public_id }}/{{ i }}.png">
+ <img src="//i-use.ipfire.org/profile/{{ profile.public_id }}/{{ i }}.png"
+ alt="{{ _("Signature image") }}" />
+ </a>
+ </li>
+ {% end %}
+ </ul>
+ </div>
+ <div class="col">
+ <p>{{ _("Last update") }}: {{ locale.format_date(profile.time_updated) }}</p>
+ </div>
+ </div>
+ </section>
+</div>
{% end block %}