gitweb: Allow for multivalued parameters passed to href subroutine
Make it possible to generate URLs with multivalued parameters in the href() subroutine, via passing reference to array of values. Example: href(action=>"log", extra_options=>["--no-merges", "--first-parent"]) Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
8b4aee015e
commit
f22cca44ba
@ -629,7 +629,13 @@ sub href(%) {
|
||||
for (my $i = 0; $i < @mapping; $i += 2) {
|
||||
my ($name, $symbol) = ($mapping[$i], $mapping[$i+1]);
|
||||
if (defined $params{$name}) {
|
||||
push @result, $symbol . "=" . esc_param($params{$name});
|
||||
if (ref($params{$name}) eq "ARRAY") {
|
||||
foreach my $par (@{$params{$name}}) {
|
||||
push @result, $symbol . "=" . esc_param($par);
|
||||
}
|
||||
} else {
|
||||
push @result, $symbol . "=" . esc_param($params{$name});
|
||||
}
|
||||
}
|
||||
}
|
||||
$href .= "?" . join(';', @result) if scalar @result;
|
||||
|
Loading…
Reference in New Issue
Block a user