From: Michael Tremer Date: Mon, 12 Nov 2018 15:34:37 +0000 (+0000) Subject: wiki: Show sidebar X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=091ac36b5de1059c9dafdd4540b71a7282ce64c5;p=ipfire.org.git wiki: Show sidebar Signed-off-by: Michael Tremer --- diff --git a/src/backend/wiki.py b/src/backend/wiki.py index e2a8e45e..42507e97 100644 --- a/src/backend/wiki.py +++ b/src/backend/wiki.py @@ -165,3 +165,16 @@ class Page(misc.Object): def get_latest_revision(self): return self.backend.wiki.get_page(self.page) + + # Sidebar + + @lazy_property + def sidebar(self): + parts = self.page.split("/") + + while parts: + sidebar = self.backend.wiki.get_page(os.path.join(*parts, "sidebar")) + if sidebar: + return sidebar + + parts.pop() diff --git a/src/templates/wiki/page.html b/src/templates/wiki/page.html index 4fe9574e..64760d7f 100644 --- a/src/templates/wiki/page.html +++ b/src/templates/wiki/page.html @@ -2,6 +2,12 @@ {% block title %}{{ page.title }}{% end block %} +{% block sidebar %} + {% if page.sidebar %} + {% raw page.sidebar.html %} + {% end %} +{% end block %} + {% block main %} {% module WikiNavbar(page) %}