diff options
Diffstat (limited to 'Bugzilla')
-rwxr-xr-x | Bugzilla/Bug.pm | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm index 85f7ee030..ad48e763f 100755 --- a/Bugzilla/Bug.pm +++ b/Bugzilla/Bug.pm @@ -308,7 +308,7 @@ sub longdescs { return $self->{'longdescs'} if exists $self->{'longdescs'}; - $self->{'longdescs'} = &::GetComments($self->{bug_id}); + $self->{'longdescs'} = GetComments($self->{bug_id}); return $self->{'longdescs'}; } @@ -504,6 +504,38 @@ sub ValidateTime { } } +sub GetComments { + my ($id) = (@_); + my $dbh = Bugzilla->dbh; + my @comments; + my $sth = $dbh->prepare( + "SELECT profiles.realname AS name, profiles.login_name AS email, + date_format(longdescs.bug_when,'%Y.%m.%d %H:%i') AS time, + longdescs.thetext AS body, longdescs.work_time, + isprivate, + date_format(longdescs.bug_when,'%Y%m%d%H%i%s') + FROM longdescs, profiles + WHERE profiles.userid = longdescs.who + AND longdescs.bug_id = ? + ORDER BY longdescs.bug_when"); + $sth->execute($id); + + while (my $comment_ref = $sth->fetchrow_hashref()) { + my %comment = %$comment_ref; + + # Can't use "when" as a field name in MySQL + $comment{'when'} = $comment{'bug_when'}; + delete($comment{'bug_when'}); + + $comment{'email'} .= Param('emailsuffix'); + $comment{'name'} = $comment{'name'} || $comment{'email'}; + + push (@comments, \%comment); + } + + return \@comments; +} + sub AUTOLOAD { use vars qw($AUTOLOAD); my $attr = $AUTOLOAD; |