4 <title>{{ hostname }} - {% block title %}{{ _(
"No title given") }}{% end block %}
</title>
5 <meta http-equiv=
"content-type" content=
"text/html; charset=utf-8" />
6 <meta name=
"author" content=
"IPFire.org - IPFire Development Team" />
8 <meta name=
"keywords" content=
"Linux, Firewall, IPFire, Security, IPCop, Open Source, Free, ARM, VPN, Proxy, IDS, IPS" />
10 <link rel=
"icon" sizes=
"192x192" href=
"{{ static_url("img/apple-touch-icon-
192x192-precomposed.png
") }}">
11 {% for res in (
"72x72",
"76x76",
"120x120",
"144x144",
"152x152",
"180x180") %}
12 <link rel=
"apple-touch-icon-precomposed" sizes=
"{{ res }}" href=
"{{ static_url("img/apple-touch-icon-%s-precomposed.png
" % res )}}">
14 <link rel=
"apple-touch-icon-precomposed" href=
"{{ static_url("img/apple-touch-icon-
60x60-precomposed.png
") }}">
16 <!-- styling stuff -->
17 <link rel=
"stylesheet" type=
"text/css" href=
"{{ static_url("main.css
") }}" />
18 <meta name=
"viewport" content=
"width=device-width, initial-scale=1.0">
20 {% block head %}{% end block %}
23 <body id=
"page-top" class=
"{{ hostname.replace(".
", "-
") }}">
24 <nav class=
"navbar navbar-light navbar-expand-lg">
25 <div class=
"container">
26 <a class=
"navbar-brand" href=
"/">
27 IPFire
<span class=
"text-primary">_
</span>
29 {% if hostname ==
"blog.ipfire.org" %}
31 {% elif hostname ==
"fireinfo.ipfire.org" %}
33 {% elif hostname ==
"location.ipfire.org" %}
35 {% elif hostname ==
"mirrors.ipfire.org" %}
37 {% elif hostname ==
"people.ipfire.org" %}
39 {% elif hostname ==
"wiki.ipfire.org" %}
45 {% if hostname in (
"www.ipfire.org",
"dev.ipfire.org") %}
46 <button class=
"navbar-toggler" type=
"button" data-toggle=
"collapse" data-target=
"#navbar"
47 aria-controls=
"navbar" aria-expanded=
"false" aria-label=
"Toggle navigation">
48 <span class=
"fas fa-bars"></span>
51 <div class=
"collapse navbar-collapse" id=
"navbar">
52 <ul class=
"navbar-nav ml-auto">
53 <li class=
"nav-item d-sm-block d-md-block d-lg-none">
54 <a class=
"nav-link {% if request.path == "/
" %}active{% end %}" href=
"/">{{ _(
"Home") }}
</a>
58 <a class=
"nav-link {% if request.path == "/features
" %}active{% end %}" href=
"/features">{{ _(
"Features") }}
</a>
62 <a class=
"nav-link {% if request.path == "/support
" %}active{% end %}" href=
"/support">{{ _(
"Support") }}
</a>
66 <a class=
"nav-link" href=
"https://blog.ipfire.org/">{{ _(
"Blog") }}
</a>
70 <a class=
"nav-link" href=
"https://community.ipfire.org/">{{ _(
"Community") }}
</a>
74 <a class=
"nav-link {% if request.path.startswith("/download
") %}active{% end %}" href=
"/download">{{ _(
"Download") }}
</a>
78 <a class=
"btn btn-primary mt-2 mt-lg-0 ml-lg-2" href=
"/donate">
82 {% elif hostname ==
"blog.ipfire.org" %}
83 <button class=
"navbar-toggler" type=
"button" data-toggle=
"collapse" data-target=
"#navbar"
84 aria-controls=
"navbar" aria-expanded=
"false" aria-label=
"Toggle navigation">
85 <span class=
"fas fa-bars"></span>
88 <div class=
"collapse navbar-collapse" id=
"navbar">
89 <ul class=
"navbar-nav ml-auto d-lg-none">
91 <a class=
"nav-link {% if request.path == "/
" %}active{% end %}" href=
"/">
98 <a class=
"nav-link {% if request.path == "/drafts
" %}active{% end %}" href=
"/drafts">
104 <li class=
"nav-item">
105 <a class=
"nav-link {% if request.path == "/tags/featured
" %}active{% end %}" href=
"/tags/featured">
110 <li class=
"nav-item">
111 <a class=
"nav-link {% if request.path == "/tags/lightningwirelabs.com
" %}active{% end %} d-flex justify-content-between"
112 href=
"/tags/lightningwirelabs.com">
113 <span>{{ _(
"Lightning Wire Labs") }}
</span>
115 <img class=
"img-fluid" src=
"{{ static_url("img/lightningwirelabs-logo.svg
") }}"
116 alt=
"{{ _("Lightning Wire Labs
") }}">
120 <li class=
"nav-item">
121 <a class=
"nav-link d-flex justify-content-between" href=
"/feed.xml">
122 <span>{{ _(
"RSS Feed") }}
</span> <span class=
"fas fa-rss"></span>
127 <form class=
"form-inline ml-lg-auto my-2 my-lg-0" action=
"/search" method=
"GET">
128 <input class=
"form-control form-control-sm" type=
"search" name=
"q"
129 placeholder=
"{{ _("Search...
") }}" aria-label=
"{{ _("Search
") }}" value=
"{% try %}{{ q }}{% except %}{% end %}">
132 <a class=
"btn btn-primary ml-lg-2" href=
"https://www.ipfire.org/donate">
136 {% elif hostname ==
"fireinfo.ipfire.org" %}
137 <button class=
"navbar-toggler" type=
"button" data-toggle=
"collapse" data-target=
"#navbar"
138 aria-controls=
"navbar" aria-expanded=
"false" aria-label=
"Toggle navigation">
139 <span class=
"fas fa-bars"></span>
142 <div class=
"collapse navbar-collapse" id=
"navbar">
143 <ul class=
"navbar-nav ml-auto">
144 {% if current_user and current_user.is_staff() %}
145 <li class=
"nav-item">
146 <a class=
"nav-link {% if request.path.startswith("/admin
") %}active{% end %}" href=
"/admin">
152 <li class=
"nav-item">
153 <a class=
"nav-link {% if request.path.startswith("/vendors
") %}active{% end %}" href=
"/vendors">
159 {% elif hostname ==
"location.ipfire.org" %}
160 <button class=
"navbar-toggler" type=
"button" data-toggle=
"collapse" data-target=
"#navbar"
161 aria-controls=
"navbar" aria-expanded=
"false" aria-label=
"Toggle navigation">
162 <span class=
"fas fa-bars"></span>
165 <div class=
"collapse navbar-collapse" id=
"navbar">
166 <ul class=
"navbar-nav ml-auto">
167 <li class=
"nav-item">
168 <a class=
"nav-link {% if request.path == "/how-to-use
" %}active{% end %}" href=
"/how-to-use">
169 {{ _(
"How To Use") }}
173 <li class=
"nav-item">
174 <a class=
"nav-link {% if request.path == "/download
" %}active{% end %}" href=
"/download">
180 <a class=
"btn btn-primary ml-lg-2" href=
"https://www.ipfire.org/donate">
184 {% elif hostname ==
"nopaste.ipfire.org" %}
185 <button class=
"navbar-toggler" type=
"button" data-toggle=
"collapse" data-target=
"#navbar"
186 aria-controls=
"navbar" aria-expanded=
"false" aria-label=
"Toggle navigation">
187 <span class=
"fas fa-bars"></span>
190 <div class=
"collapse navbar-collapse" id=
"navbar">
191 <ul class=
"navbar-nav ml-auto">
192 <li class=
"nav-item">
193 <a class=
"nav-link" href=
"/?mode=upload">{{ _(
"Upload File") }}
</a>
197 {% elif hostname ==
"people.ipfire.org" %}
198 {% if current_user %}
199 <button class=
"navbar-toggler" type=
"button" data-toggle=
"collapse" data-target=
"#navbar"
200 aria-controls=
"navbar" aria-expanded=
"false" aria-label=
"Toggle navigation">
201 <span class=
"fas fa-bars"></span>
204 <div class=
"collapse navbar-collapse" id=
"navbar">
205 <ul class=
"navbar-nav ml-auto mr-3">
206 <li class=
"nav-item">
207 <a class=
"nav-link {% if request.path == "/users/%s
" % current_user.uid %}active{% end %}" href=
"/users/{{ current_user.uid }}">
208 {{ _(
"My Profile") }}
212 {% if current_user.is_staff() %}
213 <li class=
"nav-item">
214 <a class=
"nav-link {% if request.path == "/users
" %}active{% end %}" href=
"/users">
219 <li class=
"nav-item">
220 <a class=
"nav-link {% if request.path.startswith("/groups
") %}active{% end %}" href=
"/groups">
225 <li class=
"nav-item">
226 <a class=
"nav-link {% if request.path == "/stats
" %}active{% end %}" href=
"/stats">
232 {% if current_user.has_sip() %}
233 <li class=
"nav-item">
234 <a class=
"nav-link {% if request.path.startswith("/conferences
") %}active{% end %}" href=
"/conferences">
235 {{ _(
"Conferences") }}
241 <form class=
"form-inline my-2 my-lg-0" action=
"/search" method=
"GET">
242 <input class=
"form-control form-control-sm mr-sm-2" type=
"search" name=
"q"
243 placeholder=
"{{ _("Search
") }}" aria-label=
"{{ _("Search
") }}" value=
"{% try %}{{ q }}{% except %}{% end %}">
247 {% elif hostname ==
"wiki.ipfire.org" %}
248 <button class=
"navbar-toggler" type=
"button" data-toggle=
"collapse" data-target=
"#navbar"
249 aria-controls=
"navbar" aria-expanded=
"false" aria-label=
"Toggle navigation">
250 <span class=
"fas fa-bars"></span>
253 <div class=
"collapse navbar-collapse" id=
"navbar">
254 <form class=
"form-inline ml-auto my-2 my-lg-0" action=
"/search" method=
"GET">
255 <input class=
"form-control form-control-sm" type=
"search" name=
"q"
256 placeholder=
"{{ _("Search...
") }}" aria-label=
"{{ _("Search
") }}" value=
"{% try %}{{ q }}{% except %}{% end %}">
259 <a class=
"btn btn-primary ml-lg-2" href=
"https://www.ipfire.org/donate">
268 {% block container %}
269 <div class=
"container">
270 {% block content %}{% end block %}
276 <div class=
"container border-top">
279 <div class=
"col-12 col-lg-5 mb-3">
280 <h5>IPFire
<span class=
"text-primary">_
</span>People
</h5>
283 Join the community and sign up for our newsletter
286 <a class=
"btn btn-outline-primary text-uppercase" href=
"https://people.ipfire.org/">
291 <div class=
"col-12 col-lg-1">
295 <div class=
"col-12 col-lg-2">
298 <a class=
"footer-link" href=
"/features">{{ _(
"Features") }}
</a>
302 <a class=
"footer-link" href=
"https://wiki.ipfire.org">{{ _(
"Wiki") }}
</a>
306 <a class=
"footer-link" href=
"/support">{{ _(
"Support") }}
</a>
310 <a class=
"footer-link" href=
"https://wiki.ipfire.org/devel">{{ _(
"Development") }}
</a>
315 <div class=
"col-12 col-lg-2">
318 <a class=
"footer-link" href=
"/download">{{ _(
"Download") }}
</a>
322 <a class=
"footer-link" href=
"https://blog.ipfire.org">{{ _(
"Blog") }}
</a>
326 <a class=
"footer-link" href=
"https://community.ipfire.org/">{{ _(
"Community") }}
</a>
330 <a class=
"footer-link" href=
"/legal">{{ _(
"Legal") }}
</a>
335 <div class=
"col-12 col-lg-2">
338 <a class=
"footer-link" href=
"https://twitter.com/ipfire">{{ _(
"Twitter") }}
</a>
342 <a class=
"footer-link" href=
"https://www.linkedin.com/company/ipfire/">{{ _(
"LinkedIn") }}
</a>
346 <a class=
"btn btn-primary text-uppercase" href=
"https://www.ipfire.org/donate">
358 <script src=
"{{ static_url("js/jquery-
3.3.1.min.js
") }}"></script>
359 <script src=
"{{ static_url("js/popper.min.js
") }}"></script>
360 <script src=
"{{ static_url("js/bootstrap.min.js
") }}"></script>
361 {% block javascript %}{% end block %}