]>
Commit | Line | Data |
---|---|---|
81675874 | 1 | #!/usr/bin/python |
2 | ||
feb02477 | 3 | import tornado.web |
81675874 | 4 | |
a95c2f97 | 5 | from .. import database |
494d80e6 | 6 | |
81675874 | 7 | class UIModule(tornado.web.UIModule): |
7e64f6a3 MT |
8 | @property |
9 | def backend(self): | |
10 | return self.handler.backend | |
11 | ||
5a1018ab | 12 | |
6c6de80a MT |
13 | class IPFireLogoModule(UIModule): |
14 | def render(self, suffix=None): | |
15 | return self.render_string("modules/ipfire-logo.html", suffix=suffix) | |
16 | ||
17 | ||
82dbe5a5 RH |
18 | class OpenGraphModule(UIModule): |
19 | def render(self, title, **kwargs): | |
20 | properties = { | |
21 | "site_name" : "IPFire.org", | |
22 | "title" : title, | |
23 | "type" : "website", | |
24 | "url" : self.request.full_url(), | |
25 | "image" : self.handler.static_url("img/ipfire-tux.png", include_host=True), | |
26 | "logo" : self.handler.static_url("img/ipfire-tux.png", include_host=True), | |
27 | "locale" : self.locale.code, | |
28 | } | kwargs | |
29 | ||
30 | return self.render_string("modules/open-graph.html", properties=properties) | |
31 | ||
32 | ||
1c4522dc MT |
33 | class MarkdownModule(UIModule): |
34 | def render(self, markdown): | |
35 | return self.backend.blog._render_text(markdown) | |
36 | ||
37 | ||
9068dba1 | 38 | class MapModule(UIModule): |
cf503f2b MT |
39 | def render(self, search): |
40 | return self.render_string("modules/map.html", search=search) | |
41 | ||
42 | def css_files(self): | |
43 | return ( | |
44 | "css/leaflet.css", | |
45 | "css/Control.Geocoder.css", | |
46 | ) | |
47 | ||
48 | def javascript_files(self): | |
49 | return ( | |
50 | "js/leaflet.min.js", | |
51 | "js/Control.Geocoder.min.js", | |
52 | "js/maps.js", | |
53 | ) | |
9068dba1 MT |
54 | |
55 | ||
66862195 MT |
56 | class ProgressBarModule(UIModule): |
57 | def render(self, value, colour=None): | |
58 | value *= 100 | |
59 | ||
60 | return self.render_string("modules/progress-bar.html", | |
61 | colour=colour, value=value) |