194 self.repo = hg.repository(self.repo.ui, self.repo.root) |
194 self.repo = hg.repository(self.repo.ui, self.repo.root) |
195 self.maxchanges = int(self.repo.ui.config("web", "maxchanges", 10)) |
195 self.maxchanges = int(self.repo.ui.config("web", "maxchanges", 10)) |
196 self.maxfiles = int(self.repo.ui.config("web", "maxfiles", 10)) |
196 self.maxfiles = int(self.repo.ui.config("web", "maxfiles", 10)) |
197 self.allowpull = self.repo.ui.configbool("web", "allowpull", True) |
197 self.allowpull = self.repo.ui.configbool("web", "allowpull", True) |
198 |
198 |
|
199 def archivelist(self, nodeid): |
|
200 for i in self.archives: |
|
201 if self.repo.ui.configbool("web", "allow" + i, False): |
|
202 yield {"type" : i, "node" : nodeid} |
|
203 |
199 def listfiles(self, files, mf): |
204 def listfiles(self, files, mf): |
200 for f in files[:self.maxfiles]: |
205 for f in files[:self.maxfiles]: |
201 yield self.t("filenodelink", node=hex(mf[f]), file=f) |
206 yield self.t("filenodelink", node=hex(mf[f]), file=f) |
202 if len(files) > self.maxfiles: |
207 if len(files) > self.maxfiles: |
203 yield self.t("fileellipses") |
208 yield self.t("fileellipses") |
412 filenode=hex(mf.get(f, nullid)), file=f)) |
417 filenode=hex(mf.get(f, nullid)), file=f)) |
413 |
418 |
414 def diff(**map): |
419 def diff(**map): |
415 yield self.diff(p1, n, None) |
420 yield self.diff(p1, n, None) |
416 |
421 |
417 def archivelist(): |
|
418 for i in self.archives: |
|
419 if self.repo.ui.configbool("web", "allow" + i, False): |
|
420 yield {"type" : i, "node" : nodeid} |
|
421 |
|
422 yield self.t('changeset', |
422 yield self.t('changeset', |
423 diff=diff, |
423 diff=diff, |
424 rev=cl.rev(n), |
424 rev=cl.rev(n), |
425 node=nodeid, |
425 node=nodeid, |
426 parent=self.parents(n, cl.parents(n), cl.rev), |
426 parent=self.parents(n, cl.parents(n), cl.rev), |
428 manifest=hex(changes[0]), |
428 manifest=hex(changes[0]), |
429 author=changes[1], |
429 author=changes[1], |
430 desc=changes[4], |
430 desc=changes[4], |
431 date=changes[2], |
431 date=changes[2], |
432 files=files, |
432 files=files, |
433 archives=archivelist()) |
433 archives=self.archivelist(nodeid)) |
434 |
434 |
435 def filelog(self, f, filenode): |
435 def filelog(self, f, filenode): |
436 cl = self.repo.changelog |
436 cl = self.repo.changelog |
437 fl = self.repo.file(f) |
437 fl = self.repo.file(f) |
438 filenode = hex(fl.lookup(filenode)) |
438 filenode = hex(fl.lookup(filenode)) |