CollectLists: regex keyword replaced by search_expression. Instead of filtereing of request.rootpage.getPageList now search.searchPages is called.
1.1 --- a/data/plugin/macro/CollectLists.py Wed Feb 03 17:20:22 2010 +0100
1.2 +++ b/data/plugin/macro/CollectLists.py Wed Feb 03 18:10:22 2010 +0100
1.3 @@ -18,14 +18,14 @@
1.4 By using the keyword transpose the table is shown transposed. Until transpose is not part
1.5 of the databrowser widget itselfs we don't support filter_selection by transpose=True.
1.6
1.7 - <<CollectLists(regex=^Examplepage/(.*))>
1.8 + <<CollectLists(search_expression=title:Examplepage/)>
1.9
1.10 @copyright: 2006 by michael cohen <scudette@users.sourceforge.net> (PageDicts)
1.11 @copyright: 2008-2010 by MoinMoin:ReimarBauer (completly rewritten)
1.12 @license: GNU GPL, see COPYING for details.
1.13 """
1.14 import re
1.15 -from MoinMoin import wikiutil
1.16 +from MoinMoin import wikiutil, search
1.17 from MoinMoin.Page import Page
1.18 from MoinMoin.util.dataset import TupleDataset, Column
1.19 from MoinMoin.wikidicts import Dict
1.20 @@ -39,7 +39,7 @@
1.21 transpose=False,
1.22 filter_column_value=u'',
1.23 parser=u'text_moin_wiki',
1.24 - regex=None,
1.25 + search_expression=None,
1.26 filter_selection=u'NeverExistingDefaultFilter'):
1.27
1.28 """
1.29 @@ -65,10 +65,12 @@
1.30 # Don't filter if syntax was wrong
1.31 filter_column_value = u''
1.32
1.33 - if regex is None:
1.34 - regex = '^%s/(.*)' % pagename
1.35 - filterfn = re.compile(regex).search
1.36 - pages = request.rootpage.getPageList(exists=1, filter=filterfn)
1.37 + if search_expression is None:
1.38 + search_expression = 'title:%s/' % pagename
1.39 +
1.40 + search_result = search.searchPages(request, search_expression)
1.41 + pages = [title.page_name for title in search_result.hits]
1.42 +
1.43 if not pages:
1.44 return _("Page '%(new_pagename)s' does not exist or you don't have enough rights.") % {"new_pagename": pagename}
1.45