From: Michael Tremer Date: Wed, 25 Oct 2023 16:44:36 +0000 (+0000) Subject: blog: Add email debug handler X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=56801afbf5ea6d074a0ee3d9e743d45cb26e8c29;p=ipfire.org.git blog: Add email debug handler Signed-off-by: Michael Tremer --- diff --git a/src/web/__init__.py b/src/web/__init__.py index 481c32ff..94dc5069 100644 --- a/src/web/__init__.py +++ b/src/web/__init__.py @@ -136,6 +136,7 @@ class Application(tornado.web.Application): (r"/blog/([0-9a-z\-\._]+)/delete", blog.DeleteHandler), (r"/blog/([0-9a-z\-\._]+)/edit", blog.EditHandler), (r"/blog/([0-9a-z\-\._]+)/publish", blog.PublishHandler), + (r"/blog/([0-9a-z\-\._]+)/debug/email", blog.DebugEmailHandler), # Docs (r"/docs/recent\-changes", docs.RecentChangesHandler), diff --git a/src/web/blog.py b/src/web/blog.py index a2ac1e32..20d2d74d 100644 --- a/src/web/blog.py +++ b/src/web/blog.py @@ -235,6 +235,20 @@ class DeleteHandler(base.BaseHandler): self.redirect("/drafts") +class DebugEmailHandler(base.BaseHandler): + @tornado.web.authenticated + def get(self, slug): + if not self.current_user.is_staff(): + raise tornado.web.HTTPError(403) + + # Fetch the post + post = self.backend.blog.get_by_slug(slug) + if not post: + raise tornado.web.HTTPError(404, "Could not find post %s" % slug) + + self.render("blog/messages/announcement.html", account=self.current_user, post=post) + + class HistoryNavigationModule(ui_modules.UIModule): def render(self): return self.render_string("blog/modules/history-navigation.html",