# HG changeset patch # User mgood # Date 1151989702 0 # Node ID 9b5255d72e33b24b12f20631433a39972c627f56 # Parent 06c642ba2b08fd69351993241f0084fc6565c11a convert Trac search page to Markup diff --git a/examples/trac/templates/search.html b/examples/trac/templates/search.html new file mode 100644 --- /dev/null +++ b/examples/trac/templates/search.html @@ -0,0 +1,91 @@ + + + + + Search<span py:if="search.q" py:strip=""> Results</span> + + + + + + + + + diff --git a/examples/trac/trac/Search.py b/examples/trac/trac/Search.py --- a/examples/trac/trac/Search.py +++ b/examples/trac/trac/Search.py @@ -156,14 +156,15 @@ filters = [f[0] for f in available_filters if len(f) < 3 or len(f) > 2 and f[2]] - req.hdf['search.filters'] = [ - { 'name': filter[0], - 'label': filter[1], - 'active': filter[0] in filters - } for filter in available_filters] + data = { + 'filters': [ + { 'name': filter[0], + 'label': filter[1], + 'active': filter[0] in filters + } for filter in available_filters + ] + } - req.hdf['title'] = 'Search' - query = req.args.get('q') if query: page = int(req.args.get('page', '1')) @@ -172,7 +173,7 @@ if link_elt is not None: quickjump_href = link_elt.attr['href'] if noquickjump: - req.hdf['search.quickjump'] = { + data['quickjump'] = { 'href': quickjump_href, 'name': html.EM(link_elt.children), 'description': link_elt.attr.get('title', '') @@ -196,12 +197,11 @@ n_pages = (n-1) / page_size + 1 results = results[(page-1) * page_size: page * page_size] - req.hdf['title'] = 'Search Results' - req.hdf['search.q'] = req.args.get('q') - req.hdf['search.page'] = page - req.hdf['search.n_hits'] = n - req.hdf['search.n_pages'] = n_pages - req.hdf['search.page_size'] = page_size + data['q'] = req.args.get('q') + data['page'] = page + data['n_hits'] = n + data['n_pages'] = n_pages + data['page_size'] = page_size if page < n_pages: next_href = req.href.search(zip(filters, ['on'] * len(filters)), q=req.args.get('q'), page=page + 1) @@ -210,9 +210,10 @@ prev_href = req.href.search(zip(filters, ['on'] * len(filters)), q=req.args.get('q'), page=page - 1) add_link(req, 'prev', prev_href, 'Previous Page') - req.hdf['search.page_href'] = req.href.search(zip(filters, ['on'] * len(filters)), - q=req.args.get('q')) - req.hdf['search.result'] = [ + data['page_href'] = req.href.search(zip(filters, + ['on'] * len(filters)), + q=req.args.get('q')) + data['result'] = [ { 'href': result[0], 'title': result[1], 'date': format_datetime(result[2]), @@ -221,7 +222,7 @@ } for result in results] add_stylesheet(req, 'common/css/search.css') - return 'search.cs', None + return 'search.html', {'search': data}, None def quickjump(self, req, kwd): # Source quickjump