Bug 505484: Fix the return value of Bug.history to be more like the return value of Bug.get

Patch by Max Kanat-Alexander <mkanat@bugzilla.org> r=dkl, r=LpSolit, a=mkanat


git-svn-id: svn://10.0.0.236/trunk@257770 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
mkanat%bugzilla.org
2009-07-22 21:35:46 +00:00
parent 3787cdfc05
commit e973a59255

View File

@@ -196,14 +196,16 @@ sub history {
defined $ids || ThrowCodeError('param_required', { param => 'ids' });
my @return;
foreach my $bug_id (@$ids) {
my %item;
my $bug = Bugzilla::Bug->check($bug_id);
$bug_id = $bug->id;
$item{id} = $self->type('int', $bug_id);
my ($activity) = Bugzilla::Bug::GetBugActivity($bug_id);
$item{$bug_id} = [];
my @history;
foreach my $changeset (@$activity) {
my %bug_history;
$bug_history{when} = $self->type('dateTime', $changeset->{when});
@@ -224,8 +226,10 @@ sub history {
push (@{$bug_history{changes}}, $change);
}
push (@{$item{$bug_id}}, \%bug_history);
}
push (@history, \%bug_history);
}
$item{history} = \@history;
# alias is returned in case users passes a mixture of ids and aliases
# then they get to know which bug activity relates to which value
@@ -1079,17 +1083,26 @@ try to specify an alias. (It will be error 100.)
=item B<Returns>
A hash containing a single element, C<bugs>. This is a hash of hashes.
Each hash has the numeric bug id as a key, and contains the following
items:
A hash containing a single element, C<bugs>. This is an array of hashes,
containing the following keys:
=over
=item id
C<int> The numeric id of the bug.
=item alias
C<string> The alias of this bug. If there is no alias or aliases are
disabled in this Bugzilla, this will be undef.
=item history
C<array> An array of hashes, each hash having the following keys:
=over
=item when
C<dateTime> The date the bug activity/change happened.
@@ -1129,6 +1142,8 @@ present in this hash.
=back
=back
=item B<Errors>
The same as L</get>.