]>
git.ipfire.org Git - people/shoehn/ipfire.org.git/blob - webapp/handlers_planet.py
5 from handlers_base
import *
9 from backend
.databases
import Databases
11 class PlanetBaseHandler(BaseHandler
):
14 return Databases().webapp
18 return backend
.Planet()
21 class PlanetMainHandler(PlanetBaseHandler
):
25 offset
= int(self
.get_argument("offset", 0))
26 limit
= int(self
.get_argument("limit", 4))
28 entries
= self
.planet
.get_entries(offset
=offset
, limit
=limit
)
30 self
.render("planet/index.html", entries
=entries
,
31 offset
=offset
+ limit
, limit
=limit
)
34 class PlanetUserHandler(PlanetBaseHandler
):
35 def get(self
, author
):
36 author
= self
.accounts
.search(author
)
38 raise tornado
.web
.HTTPError(404, "User is unknown")
40 offset
= int(self
.get_argument("offset", 0))
41 limit
= int(self
.get_argument("limit", 4))
43 entries
= self
.planet
.get_entries_by_author(author
.uid
,
44 offset
=offset
, limit
=limit
)
46 self
.render("planet/user.html", author
=author
, entries
=entries
,
47 offset
=offset
+ limit
, limit
=limit
, rss_url
="/user/%s/rss" % author
.uid
)
50 class PlanetPostingHandler(PlanetBaseHandler
):
52 entry
= self
.planet
.get_entry_by_slug(slug
)
55 raise tornado
.web
.HTTPError(404)
57 self
.render("planet/posting.html",
58 author
=entry
.author
, entry
=entry
)
61 class PlanetSearchHandler(PlanetBaseHandler
):
63 query
= self
.get_argument("q", "")
66 entries
= self
.planet
.search(query
)
70 self
.render("planet/search.html", entries
=entries
, query
=query
)