mercurial/hgweb/hgweb_mod.py
changeset 6249 cf1fa60fdaf4
parent 6217 fe8dbbe9520d
child 6368 2c370f08c486
equal deleted inserted replaced
6248:b4fca699c33d 6249:cf1fa60fdaf4
   362         branch = ctx.branch()
   362         branch = ctx.branch()
   363         # If this is an empty repo, ctx.node() == nullid,
   363         # If this is an empty repo, ctx.node() == nullid,
   364         # ctx.branch() == 'default', but branchtags() is
   364         # ctx.branch() == 'default', but branchtags() is
   365         # an empty dict. Using dict.get avoids a traceback.
   365         # an empty dict. Using dict.get avoids a traceback.
   366         if self.repo.branchtags().get(branch) == ctx.node():
   366         if self.repo.branchtags().get(branch) == ctx.node():
       
   367             branches.append({"name": branch})
       
   368         return branches
       
   369 
       
   370     def nodeinbranch(self, ctx):
       
   371         branches = []
       
   372         branch = ctx.branch()
       
   373         if branch != 'default' and self.repo.branchtags().get(branch) != ctx.node():
       
   374             branches.append({"name": branch})
       
   375         return branches
       
   376 
       
   377     def nodebranchnodefault(self, ctx):
       
   378         branches = []
       
   379         branch = ctx.branch()
       
   380         if branch != 'default':
   367             branches.append({"name": branch})
   381             branches.append({"name": branch})
   368         return branches
   382         return branches
   369 
   383 
   370     def showtag(self, tmpl, t1, node=nullid, **args):
   384     def showtag(self, tmpl, t1, node=nullid, **args):
   371         for t in self.repo.nodetags(node):
   385         for t in self.repo.nodetags(node):
   456                              "date": ctx.date(),
   470                              "date": ctx.date(),
   457                              "files": self.listfilediffs(tmpl, ctx.files(), n),
   471                              "files": self.listfilediffs(tmpl, ctx.files(), n),
   458                              "rev": i,
   472                              "rev": i,
   459                              "node": hex(n),
   473                              "node": hex(n),
   460                              "tags": self.nodetagsdict(n),
   474                              "tags": self.nodetagsdict(n),
       
   475                              "inbranch": self.nodeinbranch(ctx),
   461                              "branches": self.nodebranchdict(ctx)})
   476                              "branches": self.nodebranchdict(ctx)})
   462 
   477 
   463             if limit > 0:
   478             if limit > 0:
   464                 l = l[:limit]
   479                 l = l[:limit]
   465 
   480 
   527                            date=ctx.date(),
   542                            date=ctx.date(),
   528                            files=self.listfilediffs(tmpl, ctx.files(), n),
   543                            files=self.listfilediffs(tmpl, ctx.files(), n),
   529                            rev=ctx.rev(),
   544                            rev=ctx.rev(),
   530                            node=hex(n),
   545                            node=hex(n),
   531                            tags=self.nodetagsdict(n),
   546                            tags=self.nodetagsdict(n),
       
   547                            inbranch=self.nodeinbranch(ctx),
   532                            branches=self.nodebranchdict(ctx))
   548                            branches=self.nodebranchdict(ctx))
   533 
   549 
   534                 if count >= self.maxchanges:
   550                 if count >= self.maxchanges:
   535                     break
   551                     break
   536 
   552 
   570                     desc=ctx.description(),
   586                     desc=ctx.description(),
   571                     date=ctx.date(),
   587                     date=ctx.date(),
   572                     files=files,
   588                     files=files,
   573                     archives=self.archivelist(hex(n)),
   589                     archives=self.archivelist(hex(n)),
   574                     tags=self.nodetagsdict(n),
   590                     tags=self.nodetagsdict(n),
       
   591                     branch=self.nodebranchnodefault(ctx),
       
   592                     inbranch=self.nodeinbranch(ctx),
   575                     branches=self.nodebranchdict(ctx))
   593                     branches=self.nodebranchdict(ctx))
   576 
   594 
   577     def filelog(self, tmpl, fctx):
   595     def filelog(self, tmpl, fctx):
   578         f = fctx.path()
   596         f = fctx.path()
   579         fl = fctx.filelog()
   597         fl = fctx.filelog()
   640                     rev=fctx.rev(),
   658                     rev=fctx.rev(),
   641                     node=hex(fctx.node()),
   659                     node=hex(fctx.node()),
   642                     author=fctx.user(),
   660                     author=fctx.user(),
   643                     date=fctx.date(),
   661                     date=fctx.date(),
   644                     desc=fctx.description(),
   662                     desc=fctx.description(),
       
   663                     branch=self.nodebranchnodefault(fctx),
   645                     parent=self.siblings(fctx.parents()),
   664                     parent=self.siblings(fctx.parents()),
   646                     child=self.siblings(fctx.children()),
   665                     child=self.siblings(fctx.children()),
   647                     rename=self.renamelink(fl, n),
   666                     rename=self.renamelink(fl, n),
   648                     permissions=fctx.manifest().flags(f))
   667                     permissions=fctx.manifest().flags(f))
   649 
   668 
   687                     node=hex(fctx.node()),
   706                     node=hex(fctx.node()),
   688                     author=fctx.user(),
   707                     author=fctx.user(),
   689                     date=fctx.date(),
   708                     date=fctx.date(),
   690                     desc=fctx.description(),
   709                     desc=fctx.description(),
   691                     rename=self.renamelink(fl, n),
   710                     rename=self.renamelink(fl, n),
       
   711                     branch=self.nodebranchnodefault(fctx),
   692                     parent=self.siblings(fctx.parents()),
   712                     parent=self.siblings(fctx.parents()),
   693                     child=self.siblings(fctx.children()),
   713                     child=self.siblings(fctx.children()),
   694                     permissions=fctx.manifest().flags(f))
   714                     permissions=fctx.manifest().flags(f))
   695 
   715 
   696     def manifest(self, tmpl, ctx, path):
   716     def manifest(self, tmpl, ctx, path):
   755                     upparity=parity.next(),
   775                     upparity=parity.next(),
   756                     fentries=filelist,
   776                     fentries=filelist,
   757                     dentries=dirlist,
   777                     dentries=dirlist,
   758                     archives=self.archivelist(hex(node)),
   778                     archives=self.archivelist(hex(node)),
   759                     tags=self.nodetagsdict(node),
   779                     tags=self.nodetagsdict(node),
       
   780                     inbranch=self.nodeinbranch(ctx),
   760                     branches=self.nodebranchdict(ctx))
   781                     branches=self.nodebranchdict(ctx))
   761 
   782 
   762     def tags(self, tmpl):
   783     def tags(self, tmpl):
   763         i = self.repo.tagslist()
   784         i = self.repo.tagslist()
   764         i.reverse()
   785         i.reverse()
   835                     desc=ctx.description(),
   856                     desc=ctx.description(),
   836                     date=ctx.date(),
   857                     date=ctx.date(),
   837                     rev=i,
   858                     rev=i,
   838                     node=hn,
   859                     node=hn,
   839                     tags=self.nodetagsdict(n),
   860                     tags=self.nodetagsdict(n),
       
   861                     inbranch=self.nodeinbranch(ctx),
   840                     branches=self.nodebranchdict(ctx)))
   862                     branches=self.nodebranchdict(ctx)))
   841 
   863 
   842             yield l
   864             yield l
   843 
   865 
   844         cl = self.repo.changelog
   866         cl = self.repo.changelog
   867 
   889 
   868         return tmpl("filediff",
   890         return tmpl("filediff",
   869                     file=path,
   891                     file=path,
   870                     node=hex(n),
   892                     node=hex(n),
   871                     rev=fctx.rev(),
   893                     rev=fctx.rev(),
       
   894                     branch=self.nodebranchnodefault(fctx),
   872                     parent=self.siblings(parents),
   895                     parent=self.siblings(parents),
   873                     child=self.siblings(fctx.children()),
   896                     child=self.siblings(fctx.children()),
   874                     diff=diff)
   897                     diff=diff)
   875 
   898 
   876     archive_specs = {
   899     archive_specs = {