]> git.ipfire.org Git - ipfire.org.git/blame - src/templates/base.html
fireinfo: Fix formatting languages
[ipfire.org.git] / src / templates / base.html
CommitLineData
60024cc8
MT
1<!DOCTYPE html>
2<html lang="en">
81675874 3 <head>
60024cc8
MT
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" />
940227cb 7
60024cc8 8 <meta name="keywords" content="Linux, Firewall, IPFire, Security, IPCop, Open Source, Free, ARM, VPN, Proxy, IDS, IPS" />
940227cb
MT
9 <meta name="description" content="{{ _("IPFire is a free firewall distribution based on Linux.") }}" />
10
60024cc8 11 <!-- styling stuff -->
07064256 12 <link rel="stylesheet" type="text/css" href="{{ static_url("main.css") }}" />
9f868512 13 <meta name="viewport" content="width=device-width, initial-scale=1.0">
940227cb 14
a1bf2f6c 15 {% block head %}{% end block %}
81675874 16 </head>
60024cc8 17
ed163b4b 18 <body id="page-top">
c56cbe8c 19 <nav class="navbar navbar-dark navbar-expand-lg mb-4">
6cee9198 20 <div class="container">
e1a5d3fa 21 <a class="navbar-brand" href="/">
31947225
MT
22 <strong>IPFire</strong>
23
24 {% if hostname == "blog.ipfire.org" %}
25 {{ _("Blog") }}
62eaa617
MT
26 {% elif hostname == "fireinfo.ipfire.org" %}
27 {{ _("Fireinfo") }}
cc9cbcf2
MT
28 {% elif hostname == "mirrors.ipfire.org" %}
29 {{ _("Mirrors") }}
31947225
MT
30 {% elif hostname == "people.ipfire.org" %}
31 {{ _("People") }}
32 {% end %}
6cee9198
MT
33 </a>
34
d5a50891 35 {% block menu %}
31947225
MT
36 {% if hostname in ("www.ipfire.org", "dev.ipfire.org") %}
37 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"
38 aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
39 <span class="fas fa-bars"></span>
40 </button>
d5a50891 41
31947225
MT
42 <div class="collapse navbar-collapse" id="navbar">
43 <ul class="navbar-nav ml-auto">
44 <li class="nav-item d-sm-block d-md-block d-lg-none">
45 <a class="nav-link {% if request.path == "/" %}active{% end %}" href="/">{{ _("Home") }}</a>
46 </li>
66da67fe 47
31947225
MT
48 <li class="nav-item">
49 <a class="nav-link {% if request.path == "/features" %}active{% end %}" href="/features">{{ _("Features") }}</a>
50 </li>
66da67fe 51
31947225
MT
52 <li class="nav-item">
53 <a class="nav-link {% if request.path.startswith("/download") %}active{% end %}" href="/download">{{ _("Download") }}</a>
54 </li>
66da67fe 55
31947225
MT
56 <li class="nav-item">
57 <a class="nav-link {% if request.path == "/support" %}active{% end %}" href="/support">{{ _("Support") }}</a>
58 </li>
59 </ul>
2bd6830c 60
f4e7b91a 61 <a class="btn btn-primary mt-2 mt-lg-0 ml-lg-2" href="/donate">
31947225
MT
62 <span class="fas fa-heart"></span> {{ _("Donate") }}
63 </a>
64 </div>
65 {% elif hostname == "blog.ipfire.org" %}
66 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"
67 aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
68 <span class="fas fa-bars"></span>
69 </button>
70
71 <div class="collapse navbar-collapse" id="navbar">
063f60e7
MT
72 <ul class="navbar-nav ml-auto d-lg-none">
73 <li class="nav-item">
74 <a class="nav-link {% if request.path == "/" %}active{% end %}" href="/">
75 {{ _("Newest") }}
76 </a>
77 </li>
78
79 {% if current_user %}
80 <li class="nav-item">
81 <a class="nav-link {% if request.path == "/drafts" %}active{% end %}" href="/drafts">
82 {{ _("My Drafts") }}
83 </a>
84 </li>
85 {% end %}
86
87 <li class="nav-item">
88 <a class="nav-link {% if request.path == "/tags/featured" %}active{% end %}" href="/tags/featured">
89 {{ _("Featured") }}
90 </a>
91 </li>
92
93 <li class="nav-item">
94 <a class="nav-link {% if request.path == "/tags/lightningwirelabs.com" %}active{% end %} d-flex justify-content-between"
95 href="/tags/lightningwirelabs.com">
96 <span>{{ _("Lightning Wire Labs") }}</span>
97
98 <img class="img-fluid" src="{{ static_url("img/lightningwirelabs-logo.svg") }}"
99 alt="{{ _("Lightning Wire Labs") }}">
100 </a>
101 </li>
102
103 <li class="nav-item">
104 <a class="nav-link d-flex justify-content-between" href="/feed.xml">
105 <span>{{ _("RSS Feed") }}</span> <span class="fas fa-rss"></span>
106 </a>
107 </li>
108 </ul>
109
f4e7b91a
MT
110 <form class="form-inline ml-lg-auto my-2 my-lg-0" action="/search" method="GET">
111 <input class="form-control form-control-sm" type="search" name="q"
31947225
MT
112 placeholder="{{ _("Search...") }}" aria-label="{{ _("Search") }}" value="{% try %}{{ q }}{% except %}{% end %}">
113 </form>
114
f4e7b91a 115 <a class="btn btn-primary ml-lg-2" href="/donate">
31947225
MT
116 <span class="fas fa-heart"></span> {{ _("Donate") }}
117 </a>
118 </div>
62eaa617
MT
119 {% elif hostname == "fireinfo.ipfire.org" %}
120 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"
121 aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
122 <span class="fas fa-bars"></span>
123 </button>
124
125 <div class="collapse navbar-collapse" id="navbar">
126 <ul class="navbar-nav ml-auto">
127 <li class="nav-item">
8ab37e0b 128 <a class="nav-link {% if request.path.startswith("/vendors") %}active{% end %}" href="/vendors">
62eaa617
MT
129 {{ _("Vendors") }}
130 </a>
131 </li>
62eaa617
MT
132 </ul>
133 </div>
31947225
MT
134 {% elif hostname == "nopaste.ipfire.org" %}
135 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"
136 aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
137 <span class="fas fa-bars"></span>
138 </button>
49c82edc 139
31947225
MT
140 <div class="collapse navbar-collapse" id="navbar">
141 <ul class="navbar-nav ml-auto">
142 <li class="nav-item">
5c29f60b 143 <a class="nav-link" href="/?mode=upload">{{ _("Upload File") }}</a>
31947225
MT
144 </li>
145 </ul>
146 </div>
147 {% elif hostname == "people.ipfire.org" %}
148 {% if current_user %}
149 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"
150 aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
151 <span class="fas fa-bars"></span>
152 </button>
153
154 <div class="collapse navbar-collapse" id="navbar">
155 <ul class="navbar-nav ml-auto mr-3">
156 <li class="nav-item">
157 <a class="nav-link {% if request.path == "/users/%s" % current_user.uid %}active{% end %}" href="/users/{{ current_user.uid }}">
158 {{ _("My Profile") }}
159 </a>
160 </li>
161
162 <li class="nav-item">
163 <a class="nav-link {% if request.path.startswith("/users/%s/calls" % current_user.uid) %}active{% end %}" href="/users/{{ current_user.uid }}/calls">
164 {{ _("My Calls") }}
165
166 {% if current_user.sip_channels %}
167 <span class="badge badge-primary ml-2">{{ len(current_user.sip_channels) }}</span>
168 {% end %}
169 </a>
170 </li>
171
172 <li class="nav-item">
173 <a class="nav-link {% if request.path == "/users" %}active{% end %}" href="/users">
174 {{ _("Users") }}
175 </a>
176 </li>
177
178 <li class="nav-item">
179 <a class="nav-link {% if request.path.startswith("/conferences") %}active{% end %}" href="/conferences">
180 {{ _("Conferences") }}
181 </a>
182 </li>
183 </ul>
184
185 <form class="form-inline my-2 my-lg-0" action="/search" method="GET">
186 <input class="form-control form-control-sm mr-sm-2" type="search" name="q"
187 placeholder="{{ _("Search") }}" aria-label="{{ _("Search") }}" value="{% try %}{{ q }}{% except %}{% end %}">
188 </form>
189 </div>
190 {% end %}
191 {% end %}
d5a50891 192 {% end block %}
4b4334da 193 </div>
6cee9198 194 </nav>
60024cc8
MT
195
196 {% block container %}
60b0917c
MT
197 <div class="container">
198 {% block body %}{% end block %}
12e5de7e 199 {% block content %}{% end block %}
9b5ac075
MT
200 </div>
201 {% end block %}
60024cc8 202
9b5ac075 203 {% block footer %}
c819ecf2 204 <footer>
0509f6fd
MT
205 <div class="footer">
206 {% if hostname in ("www.ipfire.org", "blog.ipfire.org", "dev.ipfire.org") %}
207 <div class="footer-info">
208 <div class="container pb-3">
209 <div class="row mb-6 justify-content-between">
210 <div class="col-12 col-lg-4 mb-4">
211 <h6>{{ _("Subscribe to our Newsletter") }}</h6>
60b0917c 212
0509f6fd
MT
213 <form method="POST" action="https://{{ "dev.ipfire.org" if hostname == "dev.ipfire.org" else "www.ipfire.org" }}/newsletter/subscribe">
214 {% raw xsrf_form_html() %}
60b0917c 215
0509f6fd 216 <label class="sr-only" for="email">{{ _("Email Address") }}</label>
60b0917c 217
0509f6fd
MT
218 <input type="email" class="form-control mb-2 mr-sm-2" id="email" name="email"
219 placeholder="{{ _("Your Email Address") }}">
47d47c2e 220
0509f6fd
MT
221 <button type="submit" class="btn btn-primary btn-block mb-2">{{ _("Subscribe") }}</button>
222 </form>
223 </div>
c819ecf2 224
b27d7cc5 225 <div class="col-12 col-lg-3 mb-4 small">
0509f6fd
MT
226 <h6>{{ _("About") }}</h6>
227
228 <div class="row">
229 <div class="col">
230 <ul class="list-unstyled">
231 <li>
232 <a href="https://www.ipfire.org/features">{{ _("Features") }}</a>
233 </li>
234
235 <li>
236 <a href="https://downloads.ipfire.org">{{ _("Download") }}</a>
237 </li>
238
239 <li>
240 <a href="https://www.ipfire.org/support">{{ _("Support") }}</a>
241 </li>
242 </ul>
243 </div>
244
245 <div class="col">
246 <ul class="list-unstyled">
247 <li>
248 <a href="https://blog.ipfire.org">{{ _("Blog") }}</a>
249 </li>
250
251 <li>
252 <a href="https://wiki.ipfire.org/devel/start">{{ _("Development") }}</a>
253 </li>
254
255 <li>
256 <a href="https://www.ipfire.org/legal">{{ _("Legal") }}</a>
257 </li>
258 </ul>
259 </div>
c819ecf2 260 </div>
2597b512 261 </div>
60b0917c 262
0509f6fd 263 <div class="col-12 col-lg-4 text-center mb-4">
5f968bab 264 <a class="btn btn-primary btn-lg px-4 my-4" href="//www.ipfire.org/donate">
0509f6fd 265 <span class="fas fa-heart"></span> {{ _("Donate") }}
c819ecf2 266 </a>
76d53285 267
0509f6fd
MT
268 <div class="btn-toolbar justify-content-center">
269 <a class="btn btn-link" href="https://twitter.com/ipfire">
270 <span class="fab fa-twitter"></span>
271 </a>
c819ecf2 272
0509f6fd
MT
273 <a class="btn btn-link" href="https://www.facebook.com/IPFire.org">
274 <span class="fab fa-facebook"></span>
275 </a>
276
277 <a class="btn btn-link" href="https://youtube.com/user/ipfireproject">
278 <span class="fab fa-youtube"></span>
279 </a>
280 </div>
c819ecf2 281 </div>
76d53285 282 </div>
60b0917c
MT
283 </div>
284 </div>
0509f6fd
MT
285 {% end %}
286
287 <div class="copyright">
288 <div class="container d-flex justify-content-between">
c9fb3c5b 289 &copy; {{ year }} - IPFire - {{ _("The Open Source Firewall") }}
0509f6fd 290
a41085fb 291 {% if not current_user and hostname in ("blog.ipfire.org", "nopaste.ipfire.org") %}
0509f6fd
MT
292 <a href="/login">{{ _("Login") }}</a>
293 {% elif current_user %}
294 <span>
295 {{ _("You are currently logged in as %s") % current_user.name }}
296 <a href="/logout">{{ _("Logout") }}</a>
297 </span>
298 {% end %}
299 </div>
20df8773 300 </div>
9b5ac075
MT
301 </div>
302 </footer>
60024cc8 303 {% end block %}
45f1004c 304
f9b71176
MT
305 <script src="{{ static_url("js/jquery-3.3.1.min.js") }}"></script>
306 <script src="{{ static_url("js/popper.min.js") }}"></script>
307 <script src="{{ static_url("js/bootstrap.min.js") }}"></script>
9f043320 308 {% block javascript %}{% end block %}
81675874 309 </body>
310</html>