aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormkanat%bugzilla.org <>2009-01-09 07:49:36 +0000
committermkanat%bugzilla.org <>2009-01-09 07:49:36 +0000
commit4e1a9ffcb681951b2138e0781062d1d559bc8af2 (patch)
tree2b1348a57514256e893f220b9b49e207dda67f4d
parent9b0a78fbcc3a3c5763e216da6dda8420379701a9 (diff)
downloadbugs-4e1a9ffcb681951b2138e0781062d1d559bc8af2.tar
bugs-4e1a9ffcb681951b2138e0781062d1d559bc8af2.tar.gz
bugs-4e1a9ffcb681951b2138e0781062d1d559bc8af2.tar.bz2
bugs-4e1a9ffcb681951b2138e0781062d1d559bc8af2.tar.xz
bugs-4e1a9ffcb681951b2138e0781062d1d559bc8af2.zip
Bug 472556: Modify Bug.comments to allow getting comments only comments that have been added since a certain time
Patch By Max Kanat-Alexander <mkanat@bugzilla.org> r=dkl, a=mkanat
-rw-r--r--Bugzilla/Bug.pm11
-rwxr-xr-xBugzilla/WebService/Bug.pm9
2 files changed, 16 insertions, 4 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm
index cfc01ba7b..d941a766e 100644
--- a/Bugzilla/Bug.pm
+++ b/Bugzilla/Bug.pm
@@ -2853,11 +2853,16 @@ sub GetComments {
INNER JOIN profiles
ON profiles.userid = longdescs.who
WHERE longdescs.bug_id = ?';
+
if ($start) {
- $query .= ' AND longdescs.bug_when > ?
- AND longdescs.bug_when <= ?';
- push(@args, ($start, $end));
+ $query .= ' AND longdescs.bug_when > ?';
+ push(@args, $start);
+ }
+ if ($end) {
+ $query .= ' AND longdescs.bug_when <= ?';
+ push(@args, $end);
}
+
$query .= " ORDER BY longdescs.bug_when $sort_order";
my $sth = $dbh->prepare($query);
$sth->execute(@args);
diff --git a/Bugzilla/WebService/Bug.pm b/Bugzilla/WebService/Bug.pm
index 10ea1f886..9d58538f2 100755
--- a/Bugzilla/WebService/Bug.pm
+++ b/Bugzilla/WebService/Bug.pm
@@ -78,7 +78,7 @@ sub comments {
my $bug = Bugzilla::Bug->check($bug_id);
# We want the API to always return comments in the same order.
my $comments = Bugzilla::Bug::GetComments(
- $bug->id, 'oldest_to_newest');
+ $bug->id, 'oldest_to_newest', $params->{new_since});
my @result;
foreach my $comment (@$comments) {
next if $comment->{isprivate} && !$user->is_insider;
@@ -439,6 +439,13 @@ C<array> An array of integer comment_ids. These comments will be
returned individually, separate from any other comments in their
respective bugs.
+=item C<new_since>
+
+C<dateTime> If specified, the method will only return comments I<newer>
+than this time. This only affects comments returned from the C<bug_ids>
+argument. You will always be returned all comments you request in the
+C<comment_ids> argument, even if they are older than this date.
+
=back
=item B<Returns>