Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
gitweb: continue consolidation of URL generation.
author
Martin Waitz
<tali@admingilde.org>
Wed, 16 Aug 2006 22:28:36 +0000
(
00:28
+0200)
committer
Junio C Hamano
<junkio@cox.net>
Thu, 17 Aug 2006 10:04:46 +0000
(
03:04
-0700)
Further use href() instead of URL generation by string concatenation.
Almost all functions are converted now.
Signed-off-by: Martin Waitz <tali@admingilde.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
gitweb/gitweb.perl
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (from parent 1:
d4baf9e
)
diff --git
a/gitweb/gitweb.perl
b/gitweb/gitweb.perl
index 04282fa5e381c1dc156085281e8517fb69be6192..4bffbf27f37a54344985a32bbca462c2510a9e03 100755
(executable)
--- a/
gitweb/gitweb.perl
+++ b/
gitweb/gitweb.perl
@@
-204,7
+204,9
@@
(%)
my $href = "$my_uri?";
$href .= esc_param( join(";",
my $href = "$my_uri?";
$href .= esc_param( join(";",
- map { "$mapping{$_}=$params{$_}" } keys %params
+ map {
+ "$mapping{$_}=$params{$_}" if defined $params{$_}
+ } keys %params
) );
return $href;
) );
return $href;
@@
-1058,7
+1060,7
@@
sub git_footer_html {
}
print $cgi->a({-href => href(action=>"rss"), -class => "rss_logo"}, "RSS") . "\n";
} else {
}
print $cgi->a({-href => href(action=>"rss"), -class => "rss_logo"}, "RSS") . "\n";
} else {
- print $cgi->a({-href =>
"$my_uri?" . esc_param("a=
opml"), -class => "rss_logo"}, "OPML") . "\n";
+ print $cgi->a({-href =>
href(action=>"
opml"), -class => "rss_logo"}, "OPML") . "\n";
}
print "</div>\n" .
"</body>\n" .
}
print "</div>\n" .
"</body>\n" .
@@
-1263,7
+1265,7
@@
sub git_difftree_body {
"<td class=\"link\">" .
$cgi->a({-href => href(action=>"blob", hash=>$to_id, hash_base=>$hash, file_name=>$file)}, "blob");
if ($to_id ne $from_id) { # modified
"<td class=\"link\">" .
$cgi->a({-href => href(action=>"blob", hash=>$to_id, hash_base=>$hash, file_name=>$file)}, "blob");
if ($to_id ne $from_id) { # modified
- print $cgi->a({-href => href(action=>"blobdiff", hash=>$to_id, hash_parent=>$from_id, hash_base=>$hash, file_name=>$file)}, "diff");
+ print
" | " .
$cgi->a({-href => href(action=>"blobdiff", hash=>$to_id, hash_parent=>$from_id, hash_base=>$hash, file_name=>$file)}, "diff");
}
print " | " . $cgi->a({-href => href(action=>"history", hash_base=>$hash, file_name=>$file)}, "history") . "\n";
print "</td>\n";
}
print " | " . $cgi->a({-href => href(action=>"history", hash_base=>$hash, file_name=>$file)}, "history") . "\n";
print "</td>\n";
@@
-1674,16
+1676,16
@@
sub git_project_list {
print "<tr class=\"light\">\n";
}
$alternate ^= 1;
print "<tr class=\"light\">\n";
}
$alternate ^= 1;
- print "<td>" . $cgi->a({-href =>
"$my_uri?" . esc_param("p=$pr->{'path'};a=
summary"),
+ print "<td>" . $cgi->a({-href =>
href(project=>$pr->{'path'}, action=>"
summary"),
-class => "list"}, esc_html($pr->{'path'})) . "</td>\n" .
"<td>" . esc_html($pr->{'descr'}) . "</td>\n" .
"<td><i>" . chop_str($pr->{'owner'}, 15) . "</i></td>\n";
print "<td class=\"". age_class($pr->{'commit'}{'age'}) . "\">" .
$pr->{'commit'}{'age_string'} . "</td>\n" .
"<td class=\"link\">" .
-class => "list"}, esc_html($pr->{'path'})) . "</td>\n" .
"<td>" . esc_html($pr->{'descr'}) . "</td>\n" .
"<td><i>" . chop_str($pr->{'owner'}, 15) . "</i></td>\n";
print "<td class=\"". age_class($pr->{'commit'}{'age'}) . "\">" .
$pr->{'commit'}{'age_string'} . "</td>\n" .
"<td class=\"link\">" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$pr->{'path'};a=
summary")}, "summary") . " | " .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$pr->{'path'};a=
shortlog")}, "shortlog") . " | " .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$pr->{'path'};a=
log")}, "log") .
+ $cgi->a({-href =>
href(project=>$pr->{'path'}, action=>"
summary")}, "summary") . " | " .
+ $cgi->a({-href =>
href(project=>$pr->{'path'}, action=>"
shortlog")}, "shortlog") . " | " .
+ $cgi->a({-href =>
href(project=>$pr->{'path'}, action=>"
log")}, "log") .
"</td>\n" .
"</tr>\n";
}
"</td>\n" .
"</tr>\n";
}
@@
-2051,11
+2053,11
@@
sub git_tree {
my $refs = git_get_references();
my $ref = format_ref_marker($refs, $hash_base);
git_header_html();
my $refs = git_get_references();
my $ref = format_ref_marker($refs, $hash_base);
git_header_html();
- my
$base_key = ""
;
+ my
%base_key = ()
;
my $base = "";
my $have_blame = git_get_project_config_bool ('blame');
if (defined $hash_base && (my %co = parse_commit($hash_base))) {
my $base = "";
my $have_blame = git_get_project_config_bool ('blame');
if (defined $hash_base && (my %co = parse_commit($hash_base))) {
- $base_key
= ";hb=$hash_base"
;
+ $base_key
{hash_base} = $hash_base
;
git_print_page_nav('tree','', $hash_base);
git_print_header_div('commit', esc_html($co{'title'}) . $ref, $hash_base);
} else {
git_print_page_nav('tree','', $hash_base);
git_print_header_div('commit', esc_html($co{'title'}) . $ref, $hash_base);
} else {
@@
-2086,23
+2088,23
@@
sub git_tree {
print "<td class=\"mode\">" . mode_str($t_mode) . "</td>\n";
if ($t_type eq "blob") {
print "<td class=\"list\">" .
print "<td class=\"mode\">" . mode_str($t_mode) . "</td>\n";
if ($t_type eq "blob") {
print "<td class=\"list\">" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$t_hash$base_key;f=$base$t_name"
), -class => "list"}, esc_html($t_name)) .
+ $cgi->a({-href =>
href(action=>"blob", hash=>$t_hash, file_name=>"$base$t_name", %base_key
), -class => "list"}, esc_html($t_name)) .
"</td>\n" .
"<td class=\"link\">" .
"</td>\n" .
"<td class=\"link\">" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$t_hash$base_key;f=$base$t_name"
)}, "blob");
+ $cgi->a({-href =>
href(action=>"blob", hash=>$t_hash, file_name=>"$base$t_name", %base_key
)}, "blob");
if ($have_blame) {
if ($have_blame) {
- print " | " . $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blame;h=$t_hash$base_key;f=$base$t_name"
)}, "blame");
+ print " | " . $cgi->a({-href =>
href(action=>"blame", hash=>$t_hash, file_name=>"$base$t_name", %base_key
)}, "blame");
}
}
- print " | " . $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=history;h=$t_hash;hb=$hash_base;f=
$base$t_name")}, "history") .
- " | " . $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob_plain;h=$t_hash;f=
$base$t_name")}, "raw") .
+ print " | " . $cgi->a({-href =>
href(action=>"history", hash=>$t_hash, hash_base=>$hash_base, file_name=>"
$base$t_name")}, "history") .
+ " | " . $cgi->a({-href =>
href(action=>"blob_plain", hash=>$t_hash, file_name=>"
$base$t_name")}, "raw") .
"</td>\n";
} elsif ($t_type eq "tree") {
print "<td class=\"list\">" .
"</td>\n";
} elsif ($t_type eq "tree") {
print "<td class=\"list\">" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=tree;h=$t_hash$base_key;f=$base$t_name"
)}, esc_html($t_name)) .
+ $cgi->a({-href =>
href(action=>"tree", hash=>$t_hash, file_name=>"$base$t_name", %base_key
)}, esc_html($t_name)) .
"</td>\n" .
"<td class=\"link\">" .
"</td>\n" .
"<td class=\"link\">" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=tree;h=$t_hash$base_key;f=$base$t_name"
)}, "tree") .
- " | " . $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=history;hb=$hash_base;f=
$base$t_name")}, "history") .
+ $cgi->a({-href =>
href(action=>"tree", hash=>$t_hash, file_name=>"$base$t_name", %base_key
)}, "tree") .
+ " | " . $cgi->a({-href =>
href(action=>"history", hash_base=>$hash_base, file_name=>"
$base$t_name")}, "history") .
"</td>\n";
}
print "</tr>\n";
"</td>\n";
}
print "</tr>\n";
@@
-2291,7
+2293,7
@@
sub git_blobdiff {
git_header_html();
if (defined $hash_base && (my %co = parse_commit($hash_base))) {
my $formats_nav =
git_header_html();
if (defined $hash_base && (my %co = parse_commit($hash_base))) {
my $formats_nav =
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blobdiff_plain;h=$hash;hp=$hash_parent"
)}, "plain");
+ $cgi->a({-href =>
href(action=>"blobdiff_plain", hash=>$hash, hash_parent=>$hash_parent
)}, "plain");
git_print_page_nav('','', $hash_base,$co{'tree'},$hash_base, $formats_nav);
git_print_header_div('commit', esc_html($co{'title'}), $hash_base);
} else {
git_print_page_nav('','', $hash_base,$co{'tree'},$hash_base, $formats_nav);
git_print_header_div('commit', esc_html($co{'title'}), $hash_base);
} else {
@@
-2302,9
+2304,9
@@
sub git_blobdiff {
git_print_page_path($file_name, "blob");
print "<div class=\"page_body\">\n" .
"<div class=\"diff_info\">blob:" .
git_print_page_path($file_name, "blob");
print "<div class=\"page_body\">\n" .
"<div class=\"diff_info\">blob:" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$hash_parent;hb=$hash_base;f=$file_name"
)}, $hash_parent) .
+ $cgi->a({-href =>
href(action=>"blob", hash=>$hash_parent, hash_base=>$hash_base, file_name=>$file_name
)}, $hash_parent) .
" -> blob:" .
" -> blob:" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$hash;hb=$hash_base;f=$file_name"
)}, $hash) .
+ $cgi->a({-href =>
href(action=>"blob", hash=>$hash, hash_base=>$hash_base, file_name=>$file_name
)}, $hash) .
"</div>\n";
git_diff_print($hash_parent, $file_name || $hash_parent, $hash, $file_name || $hash);
print "</div>";
"</div>\n";
git_diff_print($hash_parent, $file_name || $hash_parent, $hash, $file_name || $hash);
print "</div>";
@@
-2339,7
+2341,7
@@
sub git_commitdiff {
my $refs = git_get_references();
my $ref = format_ref_marker($refs, $co{'id'});
my $formats_nav =
my $refs = git_get_references();
my $ref = format_ref_marker($refs, $co{'id'});
my $formats_nav =
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=commitdiff_plain;h=$hash;hp=$hash_parent"
)}, "plain");
+ $cgi->a({-href =>
href(action=>"commitdiff_plain", hash=>$hash, hash_parent=>$hash_parent
)}, "plain");
git_header_html(undef, $expires);
git_print_page_nav('commitdiff','', $hash,$co{'tree'},$hash, $formats_nav);
git_print_header_div('commit', esc_html($co{'title'}) . $ref, $hash);
git_header_html(undef, $expires);
git_print_page_nav('commitdiff','', $hash,$co{'tree'},$hash, $formats_nav);
git_print_header_div('commit', esc_html($co{'title'}) . $ref, $hash);
@@
-2382,22
+2384,22
@@
sub git_commitdiff {
my $file = validate_input(unquote($6));
if ($status eq "A") {
print "<div class=\"diff_info\">" . file_type($to_mode) . ":" .
my $file = validate_input(unquote($6));
if ($status eq "A") {
print "<div class=\"diff_info\">" . file_type($to_mode) . ":" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$to_id;hb=$hash;f=$file"
)}, $to_id) . "(new)" .
+ $cgi->a({-href =>
href(action=>"blob", hash=>$to_id, hash_base=>$hash, file_name=>$file
)}, $to_id) . "(new)" .
"</div>\n";
git_diff_print(undef, "/dev/null", $to_id, "b/$file");
} elsif ($status eq "D") {
print "<div class=\"diff_info\">" . file_type($from_mode) . ":" .
"</div>\n";
git_diff_print(undef, "/dev/null", $to_id, "b/$file");
} elsif ($status eq "D") {
print "<div class=\"diff_info\">" . file_type($from_mode) . ":" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$from_id;hb=$hash_parent;f=$file"
)}, $from_id) . "(deleted)" .
+ $cgi->a({-href =>
href(action=>"blob", hash=>$from_id, hash_base=>$hash_parent, file_name=>$file
)}, $from_id) . "(deleted)" .
"</div>\n";
git_diff_print($from_id, "a/$file", undef, "/dev/null");
} elsif ($status eq "M") {
if ($from_id ne $to_id) {
print "<div class=\"diff_info\">" .
file_type($from_mode) . ":" .
"</div>\n";
git_diff_print($from_id, "a/$file", undef, "/dev/null");
} elsif ($status eq "M") {
if ($from_id ne $to_id) {
print "<div class=\"diff_info\">" .
file_type($from_mode) . ":" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$from_id;hb=$hash_parent;f=$file"
)}, $from_id) .
+ $cgi->a({-href =>
href(action=>"blob", hash=>$from_id, hash_base=>$hash_parent, file_name=>$file
)}, $from_id) .
" -> " .
file_type($to_mode) . ":" .
" -> " .
file_type($to_mode) . ":" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$to_id;hb=$hash;f=$file")}, $to_id);
+ $cgi->a({-href =>
href(action=>"blob", hash=>$to_id, hash_base=>$hash, file_name=>$file)}, $to_id) .
print "</div>\n";
git_diff_print($from_id, "a/$file", $to_id, "b/$file");
}
print "</div>\n";
git_diff_print($from_id, "a/$file", $to_id, "b/$file");
}
@@
-2559,7
+2561,7
@@
sub git_search {
print "<td title=\"$co{'age_string_age'}\"><i>$co{'age_string_date'}</i></td>\n" .
"<td><i>" . esc_html(chop_str($co{'author_name'}, 15, 5)) . "</i></td>\n" .
"<td>" .
print "<td title=\"$co{'age_string_age'}\"><i>$co{'age_string_date'}</i></td>\n" .
"<td><i>" . esc_html(chop_str($co{'author_name'}, 15, 5)) . "</i></td>\n" .
"<td>" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=commit;h=$co{'id'}"),
-class => "list"}, "<b>" . esc_html(chop_str($co{'title'}, 50)) . "</b><br/>");
+ $cgi->a({-href =>
href(action=>"commit", hash=>$co{'id'})
-class => "list"}, "<b>" . esc_html(chop_str($co{'title'}, 50)) . "</b><br/>");
my $comment = $co{'comment'};
foreach my $line (@$comment) {
if ($line =~ m/^(.*)($searchtext)(.*)$/i) {
my $comment = $co{'comment'};
foreach my $line (@$comment) {
if ($line =~ m/^(.*)($searchtext)(.*)$/i) {
@@
-2574,8
+2576,8
@@
sub git_search {
}
print "</td>\n" .
"<td class=\"link\">" .
}
print "</td>\n" .
"<td class=\"link\">" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=commit;h=$co{'id'}"
)}, "commit") .
- " | " . $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=tree;h=$co{'tree'};hb=$co{'id'}"
)}, "tree");
+ $cgi->a({-href =>
href(action=>"commit", hash=>$co{'id'}
)}, "commit") .
+ " | " . $cgi->a({-href =>
href(action=>"tree", hash=>$co{'tree'}, hash_base=>$co{'id'}
)}, "tree");
print "</td>\n" .
"</tr>\n";
}
print "</td>\n" .
"</tr>\n";
}
@@
-2612,18
+2614,18
@@
sub git_search {
print "<td title=\"$co{'age_string_age'}\"><i>$co{'age_string_date'}</i></td>\n" .
"<td><i>" . esc_html(chop_str($co{'author_name'}, 15, 5)) . "</i></td>\n" .
"<td>" .
print "<td title=\"$co{'age_string_age'}\"><i>$co{'age_string_date'}</i></td>\n" .
"<td><i>" . esc_html(chop_str($co{'author_name'}, 15, 5)) . "</i></td>\n" .
"<td>" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=commit;h=$co{'id'}"
), -class => "list"}, "<b>" .
+ $cgi->a({-href =>
href(action=>"commit", hash=>$co{'id'}
), -class => "list"}, "<b>" .
esc_html(chop_str($co{'title'}, 50)) . "</b><br/>");
while (my $setref = shift @files) {
my %set = %$setref;
esc_html(chop_str($co{'title'}, 50)) . "</b><br/>");
while (my $setref = shift @files) {
my %set = %$setref;
- print $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=blob;h=$set{'id'};hb=$co{'id'};f=$set{'file'}"
), class => "list"},
+ print $cgi->a({-href =>
href(action=>"blob", hash=>$set{'id'}, hash_base=>$co{'id'}, file_name=>$set{'file'}
), class => "list"},
"<span class=\"match\">" . esc_html($set{'file'}) . "</span>") .
"<br/>\n";
}
print "</td>\n" .
"<td class=\"link\">" .
"<span class=\"match\">" . esc_html($set{'file'}) . "</span>") .
"<br/>\n";
}
print "</td>\n" .
"<td class=\"link\">" .
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=commit;h=$co{'id'}"
)}, "commit") .
- " | " . $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=tree;h=$co{'tree'};hb=$co{'id'}"
)}, "tree");
+ $cgi->a({-href =>
href(action=>"commit", hash=>$co{'id'}
)}, "commit") .
+ " | " . $cgi->a({-href =>
href(action=>"tree", hash=>$co{'tree'}, hash_base=>$co{'id'}
)}, "tree");
print "</td>\n" .
"</tr>\n";
}
print "</td>\n" .
"</tr>\n";
}
@@
-2656,7
+2658,7
@@
sub git_shortlog {
my $next_link = '';
if ($#revlist >= (100 * ($page+1)-1)) {
$next_link =
my $next_link = '';
if ($#revlist >= (100 * ($page+1)-1)) {
$next_link =
- $cgi->a({-href =>
"$my_uri?" . esc_param("p=$project;a=shortlog;h=$hash;pg=" . ($page+1)
),
+ $cgi->a({-href =>
href(action=>"shortlog", hash=>$hash, page=>$page+1
),
-title => "Alt-n"}, "next");
}
-title => "Alt-n"}, "next");
}