]> git.ipfire.org Git - ipfire.org.git/blob - src/templates/base.html
Drop Menu module
[ipfire.org.git] / src / templates / base.html
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
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" />
7
8 <meta name="keywords" content="Linux, Firewall, IPFire, Security, IPCop, Open Source, Free, ARM, VPN, Proxy, IDS, IPS" />
9 <meta name="description" content="{{ _("IPFire is a free firewall distribution based on Linux.") }}" />
10
11 <!-- styling stuff -->
12 <link rel="stylesheet" type="text/css" href="{{ static_url("main.css") }}" />
13 <meta name="viewport" content="width=device-width, initial-scale=1.0">
14
15 {% block head %}{% end block %}
16 </head>
17
18 <body id="page-top">
19 <nav class="navbar navbar-dark navbar-expand-lg mb-4">
20 <div class="container">
21 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar"
22 aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
23 <span class="fas fa-bars"></span>
24 </button>
25
26 <a class="navbar-brand mx-auto" href="/">
27 <strong>IPFire</strong> {% block subtitle %}{% end block %}
28 </a>
29
30 <div class="collapse navbar-collapse" id="navbar">
31 {% block menu %}
32 <ul class="navbar-nav ml-auto">
33 <li class="nav-item d-sm-block d-md-block d-lg-none">
34 <a class="nav-link {% if request.path == "/" %}active{% end %}" href="/">{{ _("Home") }}</a>
35 </li>
36
37 <li class="nav-item">
38 <a class="nav-link {% if request.path == "/features" %}active{% end %}" href="/features">{{ _("Features") }}</a>
39 </li>
40
41 <li class="nav-item">
42 <a class="nav-link {% if request.path.startswith("/download") %}active{% end %}" href="/download">{{ _("Download") }}</a>
43 </li>
44
45 <li class="nav-item">
46 <a class="nav-link {% if request.path == "/get-support" %}active{% end %}" href="/get-support">{{ _("Support") }}</a>
47 </li>
48
49 <li class="nav-item">
50 <a class="nav-link {% if request.path == "/get-involved" %}active{% end %}" href="/get-involved">{{ _("Community") }}</a>
51 </li>
52 </ul>
53 {% end block %}
54 </div>
55
56 <a class="btn btn-primary btn-donate ml-2 d-none d-sm-block" href="/donate">
57 <span class="fas fa-heart"></span> {{ _("Donate") }}
58 </a>
59 </div>
60 </nav>
61
62 {% block container %}
63 <div class="container">
64 {% block body %}{% end block %}
65 {% block content %}{% end block %}
66 </div>
67 {% end block %}
68
69 {% block footer %}
70 <footer class="footer">
71 {% if hostname in ("www.ipfire.org", "blog.ipfire.org", "dev.ipfire.org") %}
72 <div class="container pb-3">
73 <div class="row mb-6 justify-content-between">
74 <div class="col-12 col-lg-4 mb-4">
75 <h6>{{ _("Subscribe to our Newsletter") }}</h6>
76
77 <form method="POST" action="https://{{ "dev" if debug else "www" }}.ipfire.org/newsletter/subscribe">
78 {% raw xsrf_form_html() %}
79
80 <label class="sr-only" for="email">{{ _("Email Address") }}</label>
81
82 <input type="email" class="form-control mb-2 mr-sm-2" id="email" name="email"
83 placeholder="{{ _("Your Email Address") }}">
84
85 <button type="submit" class="btn btn-primary btn-block mb-2">{{ _("Subscribe") }}</button>
86 </form>
87 </div>
88
89 <div class="col-12 col-lg-3 mb-4">
90 <h6>{{ _("About") }}</h6>
91
92 <div class="row">
93 <div class="col">
94 <ul class="list-unstyled">
95 <li>
96 <a href="https://www.ipfire.org/features">{{ _("Features") }}</a>
97 </li>
98
99 <li>
100 <a href="https://downloads.ipfire.org">{{ _("Download") }}</a>
101 </li>
102
103 <li>
104 <a href="https://www.ipfire.org/support">{{ _("Support") }}</a>
105 </li>
106 </ul>
107 </div>
108
109 <div class="col">
110 <ul class="list-unstyled">
111 <li>
112 <a href="https://blog.ipfire.org">{{ _("Blog") }}</a>
113 </li>
114
115 <li>
116 <a href="https://wiki.ipfire.org/devel/start">{{ _("Development") }}</a>
117 </li>
118
119 <li>
120 <a href="https://www.ipfire.org/legal">{{ _("Legal") }}</a>
121 </li>
122 </ul>
123 </div>
124 </div>
125 </div>
126
127 <div class="col-12 col-lg-4 text-center mb-4">
128 <a class="btn btn-primary btn-lg my-4" href="//www.ipfire.org/donate">
129 <span class="fas fa-heart"></span> {{ _("Donate") }}
130 </a>
131
132 <div class="btn-toolbar justify-content-center">
133 <a class="btn btn-link" href="https://twitter.com/ipfire">
134 <span class="fab fa-twitter"></span>
135 </a>
136
137 <a class="btn btn-link" href="https://www.facebook.com/IPFire.org">
138 <span class="fab fa-facebook"></span>
139 </a>
140
141 <a class="btn btn-link" href="https://youtube.com/user/ipfireproject">
142 <span class="fab fa-youtube"></span>
143 </a>
144 </div>
145 </div>
146 </div>
147 </div>
148 {% end %}
149
150 <div class="copyright">
151 <div class="container d-flex justify-content-between">
152 &copy; {{ year }} - {{ _("IPFire is free software written by the IPFire Project") }}
153
154 {% if not current_user and hostname in ("blog.ipfire.org") %}
155 <a href="/login">{{ _("Login") }}</a>
156 {% elif current_user %}
157 <span>
158 {{ _("You are currently logged in as %s") % current_user.name }}
159 <a href="/logout">{{ _("Logout") }}</a>
160 </span>
161 {% end %}
162 </div>
163 </div>
164 </footer>
165 {% end block %}
166
167 <script src="{{ static_url("js/jquery-3.3.1.min.js") }}"></script>
168 <script src="{{ static_url("js/popper.min.js") }}"></script>
169 <script src="{{ static_url("js/bootstrap.min.js") }}"></script>
170 {% block javascript %}{% end block %}
171 </body>
172 </html>