about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2021-03-16 23:02:17 -0800
committerEric Wong <e@80x24.org>2021-03-17 19:03:14 +0000
commit081918279573b209c27a91e443c37df597bcd43f (patch)
tree5eb589854d7739665721bf60141d820f68f8cbfa
parenta5968dc059f655a9ac62f1b8bf0bed2b90080b02 (diff)
downloadpublic-inbox-081918279573b209c27a91e443c37df597bcd43f.tar.gz
By adding "+code" next to "mirror" at the top next to the search
box.  Instead of showing "/path/to/$FOO", showing "$FOO.git"
makes it more obvious we're talking about a git repo, here,
instead of some random directory.
-rw-r--r--lib/PublicInbox/Git.pm2
-rw-r--r--lib/PublicInbox/WwwStream.pm23
2 files changed, 15 insertions, 10 deletions
diff --git a/lib/PublicInbox/Git.pm b/lib/PublicInbox/Git.pm
index f680eb2f..2ae5eff9 100644
--- a/lib/PublicInbox/Git.pm
+++ b/lib/PublicInbox/Git.pm
@@ -427,7 +427,7 @@ sub local_nick ($) {
         my $ret = '???';
         # don't show full FS path, basename should be OK:
         if ($self->{git_dir} =~ m!/([^/]+)(?:/\.git)?\z!) {
-                $ret = "/path/to/$1";
+                $ret = "$1.git";
         }
         wantarray ? ($ret) : $ret;
 }
diff --git a/lib/PublicInbox/WwwStream.pm b/lib/PublicInbox/WwwStream.pm
index be9e762e..4db8dc55 100644
--- a/lib/PublicInbox/WwwStream.pm
+++ b/lib/PublicInbox/WwwStream.pm
@@ -51,9 +51,10 @@ sub html_top ($) {
         } elsif ($ctx->{qp}->{t}) {
                 $top = qq(<a\nhref="./">$top</a>);
         }
+        my $code = $ibx->{coderepo} ? qq( / <a\nhref=#code>code</a>) : '';
         my $links = qq(<a\nhref="$help">help</a> / ).
                         qq(<a\nhref="$color">color</a> / ).
-                        qq(<a\nhref=#mirror>mirror</a> / ).
+                        qq(<a\nhref=#mirror>mirror</a>$code / ).
                         qq(<a\nhref="$atom">Atom feed</a>);
         if ($ibx->isrch) {
                 my $q_val = delete($ctx->{-q_value_html}) // '';
@@ -84,16 +85,20 @@ sub coderepos ($) {
         my $upfx = ($ctx->{-upfx} // ''). '../';
         my @ret;
         for my $cr_name (@$cr) {
-                my $urls = $cfg->get_all("coderepo.$cr_name.cgiturl") // next;
                 $ret[0] //= <<EOF;
-code repositories for the project(s) associated with this inbox:
+<a id=code>code repositories for project(s) associated with this inbox:
 EOF
-                for (@$urls) {
-                        # relative or absolute URL?, prefix relative "foo.git"
-                        # with appropriate number of "../"
-                        my $u = m!\A(?:[a-z\+]+:)?//! ? $_ : $upfx.$_;
-                        $u = ascii_html(prurl($ctx->{env}, $u));
-                        $ret[0] .= qq(\n\t<a\nhref="$u">$u</a>);
+                my $urls = $cfg->get_all("coderepo.$cr_name.cgiturl");
+                if ($urls) {
+                        for (@$urls) {
+                                # relative or absolute URL?, prefix relative
+                                # "foo.git" with appropriate number of "../"
+                                my $u = m!\A(?:[a-z\+]+:)?//! ? $_ : $upfx.$_;
+                                $u = ascii_html(prurl($ctx->{env}, $u));
+                                $ret[0] .= qq(\n\t<a\nhref="$u">$u</a>);
+                        }
+                } else {
+                        $ret[0] .= qq[\n\t$cr_name.git (no URL configured)];
                 }
         }
         @ret; # may be empty, this sub is called as an arg for join()