]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/WWW.pm
www: document "git clone --mirror" usage
[public-inbox.git] / lib / PublicInbox / WWW.pm
index b4b012f962fb81ce0f029f59231fa162b0b5db57..77910f671d3979e17de6e3345bb99fb9068b1402 100644 (file)
@@ -244,15 +244,19 @@ sub footer {
 
        my $urls = try_cat("$git_dir/cloneurl");
        my @urls = split(/\r?\n/, $urls || '');
-       my $nurls = scalar @urls;
-       if ($nurls == 0) {
-               $urls = '($GIT_DIR/cloneurl missing)';
-       } elsif ($nurls == 1) {
-               $urls = "git URL for <a\nhref=\"" . SSOMA_URL .
-                       '">ssoma</a>: ' . $urls[0];
+       my %seen = map { $_ => 1 } @urls;
+       my $cgi = $ctx->{cgi};
+       my $http = (ref($cgi) eq 'CGI') ? $cgi->url(-base) . "/$listname" :
+                       $cgi->base->as_string . $listname;
+       $seen{$http} or unshift @urls, $http;
+       if (scalar(@urls) == 1) {
+               $urls = "URL for <a\nhref=\"" . SSOMA_URL .
+                       qq(">ssoma</a> or <b>git clone --mirror \$URL</b> :) .
+                       $urls[0];
        } else {
-               $urls = "git URLs for <a\nhref=\"" . SSOMA_URL .
-                       "\">ssoma</a>:\n" . join("\n", map { "\t$_" } @urls);
+               $urls = "URLs for <a\nhref=\"" . SSOMA_URL .
+                       qq(">ssoma</a> or <b>git clone --mirror \$URL</b>\n) .
+                       join("\n", map { "\t$_" } @urls);
        }
 
        my $addr = $pi_config->get($listname, 'address');