From: Michael Tremer Date: Mon, 12 Nov 2018 23:46:03 +0000 (+0000) Subject: wiki: Make make_breadcrumbs() return a list X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3168788e3a0d27717d40ec91b1ea54cac8afcfe1;p=ipfire.org.git wiki: Make make_breadcrumbs() return a list Signed-off-by: Michael Tremer --- diff --git a/src/backend/wiki.py b/src/backend/wiki.py index d3fe2d9a..f43434f4 100644 --- a/src/backend/wiki.py +++ b/src/backend/wiki.py @@ -57,19 +57,15 @@ class Wiki(misc.Object): # Just creates a blank last version of the page self.create_page(page, author=author, content=None, **kwargs) - @staticmethod - def _split_url(url): + def make_breadcrumbs(self, url): + # Split and strip all empty elements (double slashes) parts = list(e for e in url.split("/") if e) - num_parts = len(parts) - for i in range(1, num_parts): - yield "/".join(parts[:i]) - - def make_breadcrumbs(self, url): - for part in self._split_url(url): - title = self.get_page_title(part, os.path.basename(part)) + ret = [] + for part in ("/".join(parts[:i] for i in range(1, len(parts))): + ret.append(("/%s" % part, self.get_page_title(part, os.path.basename(part)))) - yield ("/%s" % part, title) + return ret class Page(misc.Object):