Kay Sievers 20 years ago
parent
commit
71be1e7948
  1. 25
      gitweb.cgi

25
gitweb.cgi

@ -15,7 +15,7 @@ use CGI::Carp qw(fatalsToBrowser);
use Fcntl ':mode'; use Fcntl ':mode';


my $cgi = new CGI; my $cgi = new CGI;
my $version = "220"; my $version = "225";
my $my_url = $cgi->url(); my $my_url = $cgi->url();
my $my_uri = $cgi->url(-absolute => 1); my $my_uri = $cgi->url(-absolute => 1);
my $rss_link = ""; my $rss_link = "";
@ -245,6 +245,7 @@ div.pre { font-family:monospace; font-size:12px; white-space:pre; }
div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; } div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; }
div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; } div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; }
div.search { margin:4px 8px; position:absolute; top:56px; right:12px } div.search { margin:4px 8px; position:absolute; top:56px; right:12px }
a.linenr { color:#999999; text-decoration:none }
a.rss_logo { a.rss_logo {
float:right; padding:3px 0px; width:35px; line-height:10px; float:right; padding:3px 0px; width:35px; line-height:10px;
border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e; border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e;
@ -463,6 +464,14 @@ sub git_read_commit {
} else { } else {
$co{'age_string'} .= " right now"; $co{'age_string'} .= " right now";
} }
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday) = gmtime($co{'committer_epoch'});
if ($age > 60*60*24*7*2) {
$co{'age_string_date'} = sprintf "%4i-%02u-%02i", 1900 + $year, $mon, $mday;
$co{'age_string_age'} = $co{'age_string'};
} else {
$co{'age_string_date'} = $co{'age_string'};
$co{'age_string_age'} = sprintf "%4i-%02u-%02i", 1900 + $year, $mon, $mday;
}
return %co; return %co;
} }


@ -1104,7 +1113,7 @@ sub git_blob {
$line =~ s/\t/$spaces/; $line =~ s/\t/$spaces/;
} }
} }
printf "<div class=\"pre\"><span style=\"color:#999999;\">%4i</span> %s</div>\n", $nr, escapeHTML($line); printf "<div class=\"pre\"><a id=\"l%i\" href=\"#l%i\" class=\"linenr\">%4i</a> %s</div>\n", $nr, $nr, $nr, escapeHTML($line);
} }
close $fd or print "Reading blob failed.\n"; close $fd or print "Reading blob failed.\n";
print "</div>"; print "</div>";
@ -1216,7 +1225,7 @@ sub git_rss {
"<rss version=\"2.0\" xmlns:content=\"http://purl.org/rss/1.0/modules/content/\">\n"; "<rss version=\"2.0\" xmlns:content=\"http://purl.org/rss/1.0/modules/content/\">\n";
print "<channel>\n"; print "<channel>\n";
print "<title>$project</title>\n". print "<title>$project</title>\n".
"<link>" . escapeHTML("$my_url/$project/log") . "</link>\n". "<link>" . escapeHTML("$my_url?p=$project;a=summary") . "</link>\n".
"<description>$project log</description>\n". "<description>$project log</description>\n".
"<language>en</language>\n"; "<language>en</language>\n";


@ -1269,7 +1278,7 @@ sub git_opml {


my $path = escapeHTML(chop_str($proj{'path'}, 25, 5)); my $path = escapeHTML(chop_str($proj{'path'}, 25, 5));
my $rss = "$my_url?p=$proj{'path'};a=rss"; my $rss = "$my_url?p=$proj{'path'};a=rss";
my $html = "$my_url?p=$proj{'path'};a=log"; my $html = "$my_url?p=$proj{'path'};a=summary";
print "<outline type=\"rss\" text=\"$path\" title=\"$path\" xmlUrl=\"$rss\" htmlUrl=\"$html\"/>\n"; print "<outline type=\"rss\" text=\"$path\" title=\"$path\" xmlUrl=\"$rss\" htmlUrl=\"$html\"/>\n";
} }
print "</outline>\n". print "</outline>\n".
@ -1765,7 +1774,7 @@ sub git_history {
print "<tr class=\"light\">\n"; print "<tr class=\"light\">\n";
} }
$alternate ^= 1; $alternate ^= 1;
print "<td><i>$co{'age_string'}</i></td>\n" . print "<td title=\"$co{'age_string_age'}\"><i>$co{'age_string_date'}</i></td>\n" .
"<td><i>" . escapeHTML(chop_str($co{'author_name'}, 15, 3)) . "</i></td>\n" . "<td><i>" . escapeHTML(chop_str($co{'author_name'}, 15, 3)) . "</i></td>\n" .
"<td>" . $cgi->a({-href => "$my_uri?p=$project;a=commit;h=$commit", -class => "list"}, "<b>" . "<td>" . $cgi->a({-href => "$my_uri?p=$project;a=commit;h=$commit", -class => "list"}, "<b>" .
escapeHTML(chop_str($co{'title'}, 50)) . "</b>") . "</td>\n" . escapeHTML(chop_str($co{'title'}, 50)) . "</b>") . "</td>\n" .
@ -1855,7 +1864,7 @@ sub git_search {
print "<tr class=\"light\">\n"; print "<tr class=\"light\">\n";
} }
$alternate ^= 1; $alternate ^= 1;
print "<td><i>$co{'age_string'}</i></td>\n" . print "<td title=\"$co{'age_string_age'}\"><i>$co{'age_string_date'}</i></td>\n" .
"<td><i>" . escapeHTML(chop_str($co{'author_name'}, 15, 5)) . "</i></td>\n" . "<td><i>" . escapeHTML(chop_str($co{'author_name'}, 15, 5)) . "</i></td>\n" .
"<td>" . "<td>" .
$cgi->a({-href => "$my_uri?p=$project;a=commit;h=$commit", -class => "list"}, "<b>" . escapeHTML(chop_str($co{'title'}, 50)) . "</b><br/>"); $cgi->a({-href => "$my_uri?p=$project;a=commit;h=$commit", -class => "list"}, "<b>" . escapeHTML(chop_str($co{'title'}, 50)) . "</b><br/>");
@ -1908,7 +1917,7 @@ sub git_search {
print "<tr class=\"light\">\n"; print "<tr class=\"light\">\n";
} }
$alternate ^= 1; $alternate ^= 1;
print "<td><i>$co{'age_string'}</i></td>\n" . print "<td title=\"$co{'age_string_age'}\"><i>$co{'age_string_date'}</i></td>\n" .
"<td><i>" . escapeHTML(chop_str($co{'author_name'}, 15, 5)) . "</i></td>\n" . "<td><i>" . escapeHTML(chop_str($co{'author_name'}, 15, 5)) . "</i></td>\n" .
"<td>" . "<td>" .
$cgi->a({-href => "$my_uri?p=$project;a=commit;h=$co{'id'}", -class => "list"}, "<b>" . $cgi->a({-href => "$my_uri?p=$project;a=commit;h=$co{'id'}", -class => "list"}, "<b>" .
@ -1991,7 +2000,7 @@ sub git_shortlog {
print "<tr class=\"light\">\n"; print "<tr class=\"light\">\n";
} }
$alternate ^= 1; $alternate ^= 1;
print "<td><i>$co{'age_string'}</i></td>\n" . print "<td title=\"$co{'age_string_age'}\"><i>$co{'age_string_date'}</i></td>\n" .
"<td><i>" . escapeHTML(chop_str($co{'author_name'}, 10)) . "</i></td>\n" . "<td><i>" . escapeHTML(chop_str($co{'author_name'}, 10)) . "</i></td>\n" .
"<td>" . $cgi->a({-href => "$my_uri?p=$project;a=commit;h=$commit", -class => "list"}, "<b>" . "<td>" . $cgi->a({-href => "$my_uri?p=$project;a=commit;h=$commit", -class => "list"}, "<b>" .
escapeHTML($co{'title_short'}) . "</b>") . "</td>\n" . escapeHTML($co{'title_short'}) . "</b>") . "</td>\n" .

Loading…
Cancel
Save