Mercurial > public > src > moin > extensions
changeset 565:03bb9b27aca8
macro LinkTo introduced for a list of pages who links to the current page
author | Reimar Bauer <rb.proj AT googlemail DOT com> |
---|---|
date | Sun, 31 Jul 2011 11:04:54 +0200 |
parents | 6aefd777e2dd |
children | ca006bf7dae8 |
files | data/plugin/macro/LinkTo.py |
diffstat | 1 files changed, 32 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/data/plugin/macro/LinkTo.py Sun Jul 31 11:04:54 2011 +0200 @@ -0,0 +1,32 @@ +# -*- coding: iso-8859-1 -*- +""" + MoinMoin - LinkTo + + print a list of pages who links to the current page + + @copyright: 2001 Juergen Hermann <jh@web.de>, + 2011 MoinMoin:ReimarBauer + + @license: GNU GPL, see COPYING for details. +""" +Dependencies = ["namespace"] + +def macro_LinkTo(macro, reverse=False): + request = macro.request + formatter = request.formatter + pages = request.rootpage.getPageDict() + pagelist = pages.keys() + pageobjs = [] + for name in pagelist: + if request.page.page_name in pages[name].getPageLinks(request): + pageobjs.append(pages[name]) + + links = [''.join([formatter.listitem(1), + formatter.url(1, href=page.url(request, escape=0)), + page.page_name, + formatter.url(0)]) for page in pageobjs] + links.sort() + if reverse: + links.reverse() + return ''.join(links) +