Mercurial > public > mercurial-scm > hg
comparison mercurial/hgweb.py @ 1324:77cd8068dbf4
hgweb: pass date tuples around rather than whole changesets for dates
author | mpm@selenic.com |
---|---|
date | Thu, 22 Sep 2005 23:38:04 -0700 |
parents | b47f96a178a3 |
children | 901c645c1943 |
comparison
equal
deleted
inserted
replaced
1323:60200b3fc839 | 1324:77cd8068dbf4 |
---|---|
25 return t + "s" | 25 return t + "s" |
26 def fmt(t, c): | 26 def fmt(t, c): |
27 return "%d %s" % (c, plural(t, c)) | 27 return "%d %s" % (c, plural(t, c)) |
28 | 28 |
29 now = time.time() | 29 now = time.time() |
30 then = x[2][0] | 30 then = x[0] |
31 delta = max(1, int(now - then)) | 31 delta = max(1, int(now - then)) |
32 | 32 |
33 scales = [["second", 1], | 33 scales = [["second", 1], |
34 ["minute", 60], | 34 ["minute", 60], |
35 ["hour", 3600], | 35 ["hour", 3600], |
153 return | 153 return |
154 | 154 |
155 common_filters = { | 155 common_filters = { |
156 "escape": cgi.escape, | 156 "escape": cgi.escape, |
157 "age": age, | 157 "age": age, |
158 "date": lambda x: util.datestr(x[2]), | 158 "date": lambda x: util.datestr(x), |
159 "addbreaks": nl2br, | 159 "addbreaks": nl2br, |
160 "obfuscate": obfuscate, | 160 "obfuscate": obfuscate, |
161 "short": (lambda x: x[:12]), | 161 "short": (lambda x: x[:12]), |
162 "firstline": (lambda x: x.splitlines(1)[0]), | 162 "firstline": (lambda x: x.splitlines(1)[0]), |
163 "permissions": (lambda x: x and "-rwxr-xr-x" or "-rw-r--r--"), | 163 "permissions": (lambda x: x and "-rwxr-xr-x" or "-rw-r--r--"), |
164 "rfc822date": lambda x: util.datestr(x[2], "%a, %d %b %Y %H:%M:%S"), | 164 "rfc822date": lambda x: util.datestr(x, "%a, %d %b %Y %H:%M:%S"), |
165 } | 165 } |
166 | 166 |
167 class hgweb: | 167 class hgweb: |
168 def __init__(self, repo, name=None): | 168 def __init__(self, repo, name=None): |
169 if type(repo) == type(""): | 169 if type(repo) == type(""): |
182 self.repo = hg.repository(self.repo.ui, self.repo.root) | 182 self.repo = hg.repository(self.repo.ui, self.repo.root) |
183 self.maxchanges = int(self.repo.ui.config("web", "maxchanges", 10)) | 183 self.maxchanges = int(self.repo.ui.config("web", "maxchanges", 10)) |
184 self.maxfiles = int(self.repo.ui.config("web", "maxfiles", 10)) | 184 self.maxfiles = int(self.repo.ui.config("web", "maxfiles", 10)) |
185 self.allowpull = self.repo.ui.configbool("web", "allowpull", True) | 185 self.allowpull = self.repo.ui.configbool("web", "allowpull", True) |
186 | 186 |
187 def date(self, cs): | 187 def date(self, t): |
188 return util.datestr(cs[2]) | 188 return util.datestr(t) |
189 | 189 |
190 def listfiles(self, files, mf): | 190 def listfiles(self, files, mf): |
191 for f in files[:self.maxfiles]: | 191 for f in files[:self.maxfiles]: |
192 yield self.t("filenodelink", node=hex(mf[f]), file=f) | 192 yield self.t("filenodelink", node=hex(mf[f]), file=f) |
193 if len(files) > self.maxfiles: | 193 if len(files) > self.maxfiles: |
309 "parent": self.parents("changelogparent", | 309 "parent": self.parents("changelogparent", |
310 cl.parents(n), cl.rev), | 310 cl.parents(n), cl.rev), |
311 "changelogtag": self.showtag("changelogtag",n), | 311 "changelogtag": self.showtag("changelogtag",n), |
312 "manifest": hex(changes[0]), | 312 "manifest": hex(changes[0]), |
313 "desc": changes[4], | 313 "desc": changes[4], |
314 "date": changes, | 314 "date": changes[2], |
315 "files": self.listfilediffs(changes[3], n), | 315 "files": self.listfilediffs(changes[3], n), |
316 "rev": i, | 316 "rev": i, |
317 "node": hn}) | 317 "node": hn}) |
318 parity = 1 - parity | 318 parity = 1 - parity |
319 | 319 |
370 parent=self.parents("changelogparent", | 370 parent=self.parents("changelogparent", |
371 cl.parents(n), cl.rev), | 371 cl.parents(n), cl.rev), |
372 changelogtag=self.showtag("changelogtag",n), | 372 changelogtag=self.showtag("changelogtag",n), |
373 manifest=hex(changes[0]), | 373 manifest=hex(changes[0]), |
374 desc=changes[4], | 374 desc=changes[4], |
375 date=changes, | 375 date=changes[2], |
376 files=self.listfilediffs(changes[3], n), | 376 files=self.listfilediffs(changes[3], n), |
377 rev=i, | 377 rev=i, |
378 node=hn) | 378 node=hn) |
379 | 379 |
380 if count >= self.maxchanges: | 380 if count >= self.maxchanges: |
416 cl.parents(n), cl.rev), | 416 cl.parents(n), cl.rev), |
417 changesettag=self.showtag("changesettag",n), | 417 changesettag=self.showtag("changesettag",n), |
418 manifest=hex(changes[0]), | 418 manifest=hex(changes[0]), |
419 author=changes[1], | 419 author=changes[1], |
420 desc=changes[4], | 420 desc=changes[4], |
421 date=changes, | 421 date=changes[2], |
422 files=files, | 422 files=files, |
423 archives=archivelist()) | 423 archives=archivelist()) |
424 | 424 |
425 def filelog(self, f, filenode): | 425 def filelog(self, f, filenode): |
426 cl = self.repo.changelog | 426 cl = self.repo.changelog |
441 "filenode": hex(n), | 441 "filenode": hex(n), |
442 "filerev": i, | 442 "filerev": i, |
443 "file": f, | 443 "file": f, |
444 "node": hex(cn), | 444 "node": hex(cn), |
445 "author": cs[1], | 445 "author": cs[1], |
446 "date": cs, | 446 "date": cs[2], |
447 "parent": self.parents("filelogparent", | 447 "parent": self.parents("filelogparent", |
448 fl.parents(n), | 448 fl.parents(n), |
449 fl.rev, file=f), | 449 fl.rev, file=f), |
450 "desc": cs[4]}) | 450 "desc": cs[4]}) |
451 parity = 1 - parity | 451 parity = 1 - parity |
478 text=lines(), | 478 text=lines(), |
479 rev=changerev, | 479 rev=changerev, |
480 node=hex(cn), | 480 node=hex(cn), |
481 manifest=hex(mfn), | 481 manifest=hex(mfn), |
482 author=cs[1], | 482 author=cs[1], |
483 date=cs, | 483 date=cs[2], |
484 parent=self.parents("filerevparent", | 484 parent=self.parents("filerevparent", |
485 fl.parents(n), fl.rev, file=f), | 485 fl.parents(n), fl.rev, file=f), |
486 permissions=self.repo.manifest.readflags(mfn)[f]) | 486 permissions=self.repo.manifest.readflags(mfn)[f]) |
487 | 487 |
488 def fileannotate(self, f, node): | 488 def fileannotate(self, f, node): |
530 path=up(f), | 530 path=up(f), |
531 rev=changerev, | 531 rev=changerev, |
532 node=hex(cn), | 532 node=hex(cn), |
533 manifest=hex(mfn), | 533 manifest=hex(mfn), |
534 author=cs[1], | 534 author=cs[1], |
535 date=cs, | 535 date=cs[2], |
536 parent=self.parents("fileannotateparent", | 536 parent=self.parents("fileannotateparent", |
537 fl.parents(n), fl.rev, file=f), | 537 fl.parents(n), fl.rev, file=f), |
538 permissions=self.repo.manifest.readflags(mfn)[f]) | 538 permissions=self.repo.manifest.readflags(mfn)[f]) |
539 | 539 |
540 def manifest(self, mnode, path): | 540 def manifest(self, mnode, path): |