src/templates/blog/index.html \
src/templates/blog/post.html \
src/templates/blog/publish.html \
- src/templates/blog/search-results.html \
src/templates/blog/tag.html \
src/templates/blog/year.html
+++ /dev/null
-{% extends "../base.html" %}
-
-{% block title %}{{ _("Search results for '%s'") % q }}{% end block %}
-
-{% block main %}
- <h5>{{ _("Search results for '%s'") % q }}</h5>
-
- {% module BlogPosts(posts) %}
-{% end block %}
(r"/blog/compose", blog.ComposeHandler),
(r"/blog/drafts", blog.DraftsHandler),
(r"/blog/feed.xml", blog.FeedHandler),
- (r"/blog/search", blog.SearchHandler),
(r"/blog/tags/([0-9a-z\-\.]+)", blog.TagHandler),
(r"/blog/years/([0-9]{4})", blog.YearHandler),
(r"/blog/([0-9a-z\-\._]+)", blog.PostHandler),
self.render("blog/drafts.html", drafts=drafts)
-class SearchHandler(base.BaseHandler):
- @base.ratelimit(minutes=5, requests=25)
- def get(self):
- q = self.get_argument("q")
-
- posts = self.backend.blog.search(q, limit=50)
- if not posts:
- raise tornado.web.HTTPError(404, "Nothing found")
-
- self.render("blog/search-results.html", q=q, posts=posts)
-
-
class TagHandler(base.BaseHandler):
def get(self, tag):
posts = self.backend.blog.get_by_tag(tag)