src/web/blog.py \
src/web/boot.py \
src/web/donate.py \
- src/web/download.py \
+ src/web/downloads.py \
src/web/fireinfo.py \
src/web/handlers.py \
src/web/iuse.py \
templates_donate_messagesdir = $(templates_donatedir)/messages
-templates_download_DATA = \
- src/templates/download/mirrors.html \
- src/templates/download/release.html \
- src/templates/download/thank-you.html
+templates_downloads_DATA = \
+ src/templates/downloads/mirrors.html \
+ src/templates/downloads/release.html \
+ src/templates/downloads/thank-you.html
-templates_downloaddir = $(templatesdir)/download
+templates_downloadsdir = $(templatesdir)/downloads
templates_fireinfo_DATA = \
src/templates/fireinfo/admin.html \
{% end %}
{% if post.release %}
- <a class="btn btn-primary" href="/download/{{ post.release.slug }}">
+ <a class="btn btn-primary" href="/downloads/{{ post.release.slug }}">
{{ _("Download") }}
</a>
{% end %}
{% end %}
{% if post.release %}
- <a class="button is-dark is-fullwidth" href="/download/{{ post.release.slug }}">
+ <a class="button is-dark is-fullwidth" href="/downloads/{{ post.release.slug }}">
<span class="icon-text">
<span class="icon">
<i class="fas fa-download"></i>
<div class="columns">
<div class="column is-1"></div>
<div class="column is-10">
- <a class="button is-primary is-fullwidth is-medium" href="/download/mirrors">
+ <a class="button is-primary is-fullwidth is-medium" href="/downloads/mirrors">
{{ _("Browse Mirrors") }}
</a>
</div>
$("a.download-splash").click(function(e) {
e.preventDefault();
- window.location = "/download/thank-you?file=" + this.href;
+ window.location = "/downloads/thank-you?file=" + this.href;
});
</script>
{% end %}
{% if latest_release.blog %}
- <a class="link-dark fw-bold" href="/download/{{ latest_release.slug }}">
+ <a class="link-dark fw-bold" href="/downloads/{{ latest_release.slug }}">
{{ _("Get It Now") }}
</a>
{% end %}
from . import blog
from . import boot
from . import donate
-from . import download
+from . import downloads
from . import fireinfo
from . import iuse
from . import location
(r"/blog/([0-9a-z\-\._]+)/edit", blog.EditHandler),
(r"/blog/([0-9a-z\-\._]+)/publish", blog.PublishHandler),
- # Download sites
- (r"/downloads", tornado.web.RedirectHandler, { "url" : "/download" }),
- (r"/download", download.IndexHandler),
- (r"/download/mirrors", download.MirrorsHandler),
- (r"/download/thank-you", download.ThankYouHandler),
- (r"/download/([0-9a-z\-\.]+)", download.ReleaseHandler),
+ # Downloads
+ (r"/downloads", downloads.IndexHandler),
+ (r"/downloads/mirrors", downloads.MirrorsHandler),
+ (r"/downloads/thank-you", downloads.ThankYouHandler),
+ (r"/downloads/([0-9a-z\-\.]+)", downloads.ReleaseHandler),
+
+ # Download legacy redirection
+ (r"/download", tornado.web.RedirectHandler, { "url" : "/downloads" }),
+ (r"/download/([0-9a-z\-\.]+)", tornado.web.RedirectHandler, { "url" : "/downloads/{0}" }),
# Donate
(r"/donate", donate.DonateHandler),
self.add_handlers(r"downloads\.([a-z]+\.dev\.)?ipfire\.org", [
(r"/", tornado.web.RedirectHandler, { "url" : "https://www.ipfire.org/download" }),
(r"/release/(.*)", tornado.web.RedirectHandler, { "url" : "https://www.ipfire.org/download/{0}" }),
- (r"/(.*)", download.FileHandler),
+ (r"/(.*)", downloads.FileHandler),
])
# mirrors.ipfire.org
self.set_expires(60)
# Redirect to latest release page
- self.redirect("/download/%s" % release.slug)
+ self.redirect("/downloads/%s" % release.slug)
class MirrorsHandler(base.BaseHandler):
if not mirrors:
raise tornado.web.HTTPError(404)
- self.render("download/mirrors.html", mirrors=mirrors)
+ self.render("downloads/mirrors.html", mirrors=mirrors)
class ReleaseHandler(base.BaseHandler):
# Cache this response for ten minutes
self.set_expires(600)
- self.render("download/release.html", release=release)
+ self.render("downloads/release.html", release=release)
class ThankYouHandler(base.BaseHandler):
def get(self):
- self.render("download/thank-you.html")
+ self.render("downloads/thank-you.html")
class FileHandler(base.BaseHandler):