diff options
author | travis%sedsystems.ca <> | 2005-02-01 01:32:56 +0100 |
---|---|---|
committer | travis%sedsystems.ca <> | 2005-02-01 01:32:56 +0100 |
commit | 7c95655a860e263df00376c2c1b5658f53151654 (patch) | |
tree | 70fd45dea1dae1d4e4a58956d4a60d2e6620d7cb | |
parent | 6cf9cae950f0cc24fa517d5847d7fb3e8c9a8667 (diff) | |
download | bugzilla-7c95655a860e263df00376c2c1b5658f53151654.tar.gz bugzilla-7c95655a860e263df00376c2c1b5658f53151654.tar.xz |
Bug 279700 : Move GetComments from globals.pl into Bugzilla::Bug
Patch by Max Kanat-Alexander <mkanat@kerio.com> r=vladd a=justdave
-rwxr-xr-x | Bugzilla/Bug.pm | 34 | ||||
-rw-r--r-- | globals.pl | 29 | ||||
-rwxr-xr-x | process_bug.cgi | 2 |
3 files changed, 34 insertions, 31 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; diff --git a/globals.pl b/globals.pl index 0c1ba852b..694d02f49 100644 --- a/globals.pl +++ b/globals.pl @@ -1147,35 +1147,6 @@ sub GetLongDescriptionAsText { return ($result, $anyprivate); } -sub GetComments { - my ($id) = (@_); - my @comments; - SendSQL("SELECT profiles.realname, profiles.login_name, - date_format(longdescs.bug_when,'%Y.%m.%d %H:%i'), - longdescs.thetext, 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 = $id - ORDER BY longdescs.bug_when"); - - while (MoreSQLData()) { - my %comment; - ($comment{'name'}, $comment{'email'}, $comment{'time'}, - $comment{'body'}, $comment{'work_time'}, - $comment{'isprivate'}, $comment{'when'}) = FetchSQLData(); - - $comment{'email'} .= Param('emailsuffix'); - $comment{'name'} = $comment{'name'} || $comment{'email'}; - - push (@comments, \%comment); - } - - return \@comments; -} - - # Fills in a hashtable with info about the columns for the given table in the # database. The hashtable has the following entries: # -list- the list of column names diff --git a/process_bug.cgi b/process_bug.cgi index 78423ab3d..2efc62d59 100755 --- a/process_bug.cgi +++ b/process_bug.cgi @@ -1263,7 +1263,7 @@ foreach my $id (@idlist) { ($vars->{'operations'}) = GetBugActivity($::FORM{'id'}, $::FORM{'delta_ts'}); $vars->{'start_at'} = $::FORM{'longdesclength'}; - $vars->{'comments'} = GetComments($id); + $vars->{'comments'} = Bugzilla::Bug::GetComments($id); $::FORM{'delta_ts'} = $delta_ts; $vars->{'form'} = \%::FORM; |