comparison mercurial/hgweb/webcommands.py @ 19765:521c373ff134

hgweb: pass variable with current search mode name to the search template
author Alexander Plavin <alexander@plav.in>
date Fri, 06 Sep 2013 13:30:56 +0400
parents 93b8544c4482
children 186f54d40fdd
comparison
equal deleted inserted replaced
19763:ea35caf324bb 19765:521c373ff134
149 def revsetsearch(revs): 149 def revsetsearch(revs):
150 for r in revs: 150 for r in revs:
151 yield web.repo[r] 151 yield web.repo[r]
152 152
153 searchfuncs = { 153 searchfuncs = {
154 MODE_REVISION: revsearch, 154 MODE_REVISION: (revsearch, _('exact revision search')),
155 MODE_KEYWORD: keywordsearch, 155 MODE_KEYWORD: (keywordsearch, _('literal keyword search')),
156 MODE_REVSET: revsetsearch, 156 MODE_REVSET: (revsetsearch, _('revset expression search')),
157 } 157 }
158 158
159 def getsearchmode(query): 159 def getsearchmode(query):
160 try: 160 try:
161 ctx = web.repo[query] 161 ctx = web.repo[query]
197 return MODE_KEYWORD, query 197 return MODE_KEYWORD, query
198 198
199 def changelist(**map): 199 def changelist(**map):
200 count = 0 200 count = 0
201 201
202 for ctx in searchfunc(funcarg): 202 for ctx in searchfunc[0](funcarg):
203 count += 1 203 count += 1
204 n = ctx.node() 204 n = ctx.node()
205 showtags = webutil.showtag(web.repo, tmpl, 'changelogtag', n) 205 showtags = webutil.showtag(web.repo, tmpl, 'changelogtag', n)
206 files = webutil.listfilediffs(tmpl, ctx.files(), n, web.maxfiles) 206 files = webutil.listfilediffs(tmpl, ctx.files(), n, web.maxfiles)
207 207
245 tip = web.repo['tip'] 245 tip = web.repo['tip']
246 parity = paritygen(web.stripecount) 246 parity = paritygen(web.stripecount)
247 247
248 return tmpl('search', query=query, node=tip.hex(), 248 return tmpl('search', query=query, node=tip.hex(),
249 entries=changelist, archives=web.archivelist("tip"), 249 entries=changelist, archives=web.archivelist("tip"),
250 morevars=morevars, lessvars=lessvars) 250 morevars=morevars, lessvars=lessvars,
251 modedesc=searchfunc[1])
251 252
252 def changelog(web, req, tmpl, shortlog=False): 253 def changelog(web, req, tmpl, shortlog=False):
253 254
254 query = '' 255 query = ''
255 if 'node' in req.form: 256 if 'node' in req.form: