From mboxrd@z Thu Jan 1 00:00:00 1970 From: john at keeping.me.uk (John Keeping) Date: Thu, 5 Mar 2015 18:34:20 +0000 Subject: Support for submodules in tree view? In-Reply-To: <20150305183101.14312.67532@s-8d3a28b1.on.site.uni-stuttgart.de> References: <9AD8B655B5126D4FAE1397203CDDBF2D1274B5@XCH-PHX-205.sw.nos.boeing.com> <20150305182553.GF1369@serenity.lan> <20150305183101.14312.67532@s-8d3a28b1.on.site.uni-stuttgart.de> Message-ID: <20150305183420.GG1369@serenity.lan> On Thu, Mar 05, 2015 at 07:31:01PM +0100, Lukas Fleischer wrote: > On Thu, 05 Mar 2015 at 19:25:53, John Keeping wrote: > > On Thu, Mar 05, 2015 at 06:19:31PM +0000, Dunnigan, Terrence J wrote: > > > We are using cgit 0.10.1. Some of our repos have submodules, and when > > > I look at a tree view I see the name of the submodule with its current > > > hash, e.g. > > > > > > m--------- Utilities @ 350bc94 > > > > > > The submodule names are all hyperlinks, but the actual link is just a > > > "#". So clicking on it doesn't do anything. > > > > > > Is this the correct behavior? Or something on my system improperly > > > configured to support submodules? > > > > You probably need to set the "module-link" configuration variable in > > your cgitrc file. > > > > Since it's possible for submodules to link to a different server, there > > isn't really much CGit can do in the general case. Note that there's > > also "repo.module-link." in case your submodule paths don't match > > up to their URLs, although I'm quite surprised we don't support a filter > > to map submodule URLs to links - something to go on the TODO list > > perhaps... > > What do you think about hiding the "#" link, though? I don't think it is > a good idea to pretend there is a link when there isn't... Good idea. My one concern would be that it hinders discovery of the module-link feature, but I think that is outweighed by the fact that it is perfectly reasonable for someone to only want to link some of the submodules in their system to a web interface. > -- >8 -- > diff --git a/ui-shared.c b/ui-shared.c > index ff03cb2..0eeab6f 100644 > --- a/ui-shared.c > +++ b/ui-shared.c > @@ -555,25 +555,27 @@ void cgit_submodule_link(const char *class, char *path, const char *rev) > item = lookup_path(list, path); > } > } > - html(" - if (class) > - htmlf("class='%s' ", class); > - html("href='"); > - if (item) { > - html_attrf(item->util, rev); > - } else if (ctx.repo->module_link) { > - dir = strrchr(path, '/'); > - if (dir) > - dir++; > - else > - dir = path; > - html_attrf(ctx.repo->module_link, dir, rev); > + if (item || ctx.repo->module_link) { > + html(" + if (class) > + htmlf("class='%s' ", class); > + html("href='"); > + if (item) { > + html_attrf(item->util, rev); > + } else { > + dir = strrchr(path, '/'); > + if (dir) > + dir++; > + else > + dir = path; > + html_attrf(ctx.repo->module_link, dir, rev); > + } > + html("'>"); > + html_txt(path); > + html(""); > } else { > - html("#"); > + html_txt(path); > } > - html("'>"); > - html_txt(path); > - html(""); > html_txtf(" @ %.7s", rev); > if (item && tail) > path[len - 1] = tail; > _______________________________________________ > CGit mailing list > CGit at lists.zx2c4.com > http://lists.zx2c4.com/mailman/listinfo/cgit