]>
Commit | Line | Data |
---|---|---|
c7bcb9ca | 1 | #!/usr/bin/python3 |
81675874 | 2 | |
124a8404 MT |
3 | from . import base |
4 | ||
b22bc8e8 | 5 | class 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 | 15 | class 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 |
33 | class NewsHandler(base.BaseHandler): |
34 | def get(self, post): | |
35 | self.redirect("https://blog.ipfire.org/post/%s" % post, permanent=True) | |
36 | ||
37 | ||
38 | class PlanetPostHandler(base.BaseHandler): | |
39 | def get(self, post): | |
40 | self.redirect("https://blog.ipfire.org/post/%s" % post, permanent=True) | |
41 | ||
42 | ||
43 | class PlanetUserHandler(base.BaseHandler): | |
44 | def get(self, user): | |
45 | self.redirect("https://blog.ipfire.org/authors/%s" % user, permanent=True) | |
46 | ||
47 | ||
b22bc8e8 | 48 | class 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) |