]> git.ipfire.org Git - ipfire.org.git/blame - src/web/handlers.py
Remove heart icon from Donate buttons
[ipfire.org.git] / src / web / handlers.py
CommitLineData
c7bcb9ca 1#!/usr/bin/python3
81675874 2
124a8404
MT
3from . import base
4
b22bc8e8 5class LangCompatHandler(base.BaseHandler):
940227cb
MT
6 """
7 Redirect links in the old format to current site:
81675874 8
940227cb
MT
9 E.g. /en/index -> /index
10 """
11 def get(self, lang, page):
12 self.redirect("/%s" % page)
81675874 13
feb02477 14
b22bc8e8 15class IndexHandler(base.BaseHandler):
940227cb
MT
16 """
17 This handler displays the welcome page.
18 """
feb02477 19 def get(self):
7771acea
MT
20 # Get the latest release.
21 latest_release = self.releases.get_latest()
60b0917c 22
7d88783f 23 # Get a list of the most recent news items and put them on the page.
c0cb629d 24 posts = self.backend.blog.get_newest(limit=4)
feb02477 25
5491aa64
MT
26 # Cache page for 5 minutes
27 self.set_expires(300)
28
7d88783f 29 return self.render("index.html", posts=posts,
1740f4dc 30 latest_release=latest_release)
60b0917c 31
e64ce07e 32
d76ec66e
MT
33class NewsHandler(base.BaseHandler):
34 def get(self, post):
35 self.redirect("https://blog.ipfire.org/post/%s" % post, permanent=True)
36
37
38class PlanetPostHandler(base.BaseHandler):
39 def get(self, post):
40 self.redirect("https://blog.ipfire.org/post/%s" % post, permanent=True)
41
42
43class PlanetUserHandler(base.BaseHandler):
44 def get(self, user):
45 self.redirect("https://blog.ipfire.org/authors/%s" % user, permanent=True)
46
47
b22bc8e8 48class StaticHandler(base.BaseHandler):
45592df5
MT
49 def initialize(self, template):
50 self._template = template
51
52 def get(self):
5491aa64
MT
53 # Cache page for 60 minutes
54 self.set_expires(3600)
55
45592df5 56 self.render("static/%s" % self._template)