Show More
@@ -130,6 +130,7 b' class hgweb:' | |||
|
130 | 130 | "addbreaks": nl2br, |
|
131 | 131 | "obfuscate": obfuscate, |
|
132 | 132 | "firstline": (lambda x: x.splitlines(1)[0]), |
|
133 | "permissions": (lambda x: x and "-rwxr-xr-x" or "-rw-r--r--") | |
|
133 | 134 | } |
|
134 | 135 | |
|
135 | 136 | def refresh(self): |
@@ -376,6 +377,7 b' class hgweb:' | |||
|
376 | 377 | p1, p2 = fl.parents(n) |
|
377 | 378 | t = float(cs[2].split(' ')[0]) |
|
378 | 379 | mfn = cs[0] |
|
380 | self.repo.manifest.read(mfn) | |
|
379 | 381 | |
|
380 | 382 | def lines(): |
|
381 | 383 | for l, t in enumerate(text.splitlines(1)): |
@@ -400,6 +402,7 b' class hgweb:' | |||
|
400 | 402 | parent2 = self.parent("filerevparent", |
|
401 | 403 | hex(p2), fl.rev(p2), file=f), |
|
402 | 404 | p1 = hex(p1), p2 = hex(p2), |
|
405 | permissions = self.repo.manifest.readflags(mfn)[f], | |
|
403 | 406 | p1rev = fl.rev(p1), p2rev = fl.rev(p2)) |
|
404 | 407 | |
|
405 | 408 | def fileannotate(self, f, node): |
@@ -415,6 +418,7 b' class hgweb:' | |||
|
415 | 418 | p1, p2 = fl.parents(n) |
|
416 | 419 | t = float(cs[2].split(' ')[0]) |
|
417 | 420 | mfn = cs[0] |
|
421 | self.repo.manifest.read(mfn) | |
|
418 | 422 | |
|
419 | 423 | def annotate(): |
|
420 | 424 | parity = 1 |
@@ -465,12 +469,14 b' class hgweb:' | |||
|
465 | 469 | parent2 = self.parent("fileannotateparent", |
|
466 | 470 | hex(p2), fl.rev(p2), file=f), |
|
467 | 471 | p1 = hex(p1), p2 = hex(p2), |
|
472 | permissions = self.repo.manifest.readflags(mfn)[f], | |
|
468 | 473 | p1rev = fl.rev(p1), p2rev = fl.rev(p2)) |
|
469 | 474 | |
|
470 | 475 | def manifest(self, mnode, path): |
|
471 | 476 | mf = self.repo.manifest.read(bin(mnode)) |
|
472 | 477 | rev = self.repo.manifest.rev(bin(mnode)) |
|
473 | 478 | node = self.repo.changelog.node(rev) |
|
479 | mff=self.repo.manifest.readflags(bin(mnode)) | |
|
474 | 480 | |
|
475 | 481 | files = {} |
|
476 | 482 | |
@@ -500,7 +506,8 b' class hgweb:' | |||
|
500 | 506 | manifest = mnode, |
|
501 | 507 | filenode = hex(fnode), |
|
502 | 508 | parity = parity, |
|
503 |
basename = f |
|
|
509 | basename = f, | |
|
510 | permissions = mff[full]) | |
|
504 | 511 | else: |
|
505 | 512 | yield self.t("manifestdirentry", |
|
506 | 513 | parity = parity, |
@@ -29,6 +29,9 b'' | |||
|
29 | 29 | <tr> |
|
30 | 30 | <td class="metatag">date:</td> |
|
31 | 31 | <td>#date|date# (#date|age# ago)</td></tr> |
|
32 | <tr> | |
|
33 | <td class="metatag">permissions:</td> | |
|
34 | <td>#permissions|permissions#</td></tr> | |
|
32 | 35 | </table> |
|
33 | 36 | |
|
34 | 37 | <br/> |
@@ -30,6 +30,9 b'' | |||
|
30 | 30 | <tr> |
|
31 | 31 | <td class="metatag">date:</td> |
|
32 | 32 | <td>#date|date# (#date|age# ago)</td></tr> |
|
33 | <tr> | |
|
34 | <td class="metatag">permissions:</td> | |
|
35 | <td>#permissions|permissions#</td></tr> | |
|
33 | 36 | </table> |
|
34 | 37 | |
|
35 | 38 | <pre> |
@@ -11,7 +11,10 b'' | |||
|
11 | 11 | |
|
12 | 12 | <h2>manifest: #path#</h2> |
|
13 | 13 | |
|
14 | <div class="parity1"><a href="?cmd=manifest;manifest=#manifest#;path=#up#">[up]</a><br /></div> | |
|
14 | <table cellpadding="0" cellspacing="0"> | |
|
15 | <tr class="parity1"> | |
|
16 | <td><tt>drwxr-xr-x</tt> | |
|
17 | <td><a href="?cmd=manifest;manifest=#manifest#;path=#up#">[up]</a> | |
|
15 | 18 | #entries# |
|
16 | ||
|
19 | </table> | |
|
17 | 20 | #footer# |
@@ -8,8 +8,8 b' fileellipses = "..."' | |||
|
8 | 8 | changelogentry = changelogentry.tmpl |
|
9 | 9 | changeset = changeset.tmpl |
|
10 | 10 | manifest = manifest.tmpl |
|
11 |
manifestdirentry = "< |
|
|
12 |
manifestfileentry = "< |
|
|
11 | manifestdirentry = "<tr class="parity#parity#"><td><tt>drwxr-xr-x</tt> <td><a href="?cmd=manifest;manifest=#manifest#;path=#path#">#basename#/</a>" | |
|
12 | manifestfileentry = "<tr class="parity#parity#"><td><tt>#permissions|permissions#</tt> <td><a href="?cmd=file;filenode=#filenode#;file=#file#">#basename#</a>" | |
|
13 | 13 | filerevision = filerevision.tmpl |
|
14 | 14 | fileannotate = fileannotate.tmpl |
|
15 | 15 | filediff = filediff.tmpl |
General Comments 0
You need to be logged in to leave comments.
Login now