Fix WebService.Bug.add_comment
parent
e08c5f3a6b
commit
917f3e1566
|
@ -476,6 +476,8 @@ sub create
|
||||||
sub update
|
sub update
|
||||||
{
|
{
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
|
my ($additional_changes) = @_;
|
||||||
|
|
||||||
$self->make_dirty;
|
$self->make_dirty;
|
||||||
|
|
||||||
my $method = $self->id ? 'update' : 'create';
|
my $method = $self->id ? 'update' : 'create';
|
||||||
|
@ -618,6 +620,10 @@ sub update
|
||||||
$self->prepare_mail_results($changes);
|
$self->prepare_mail_results($changes);
|
||||||
|
|
||||||
# Remove obsolete internal variables.
|
# Remove obsolete internal variables.
|
||||||
|
if ($additional_changes)
|
||||||
|
{
|
||||||
|
$additional_changes->{added_comments} = $self->{added_comments};
|
||||||
|
}
|
||||||
delete $self->{_old_self};
|
delete $self->{_old_self};
|
||||||
delete $self->{added_comments};
|
delete $self->{added_comments};
|
||||||
delete $self->{edited_comments};
|
delete $self->{edited_comments};
|
||||||
|
@ -1499,7 +1505,7 @@ sub save_dup_id
|
||||||
sub save_added_comments
|
sub save_added_comments
|
||||||
{
|
{
|
||||||
my ($self, $changes) = @_;
|
my ($self, $changes) = @_;
|
||||||
|
my $dbh = Bugzilla->dbh;
|
||||||
delete $self->{comments} if @{$self->{added_comments} || []};
|
delete $self->{comments} if @{$self->{added_comments} || []};
|
||||||
foreach my $comment (@{$self->{added_comments} || []})
|
foreach my $comment (@{$self->{added_comments} || []})
|
||||||
{
|
{
|
||||||
|
@ -1515,7 +1521,8 @@ sub save_added_comments
|
||||||
$comment->{bug_when} = $self->{delta_ts} if !$comment->{bug_when} || $comment->{bug_when} gt $self->{delta_ts};
|
$comment->{bug_when} = $self->{delta_ts} if !$comment->{bug_when} || $comment->{bug_when} gt $self->{delta_ts};
|
||||||
my $columns = join(',', keys %$comment);
|
my $columns = join(',', keys %$comment);
|
||||||
my $qmarks = join(',', ('?') x keys %$comment);
|
my $qmarks = join(',', ('?') x keys %$comment);
|
||||||
Bugzilla->dbh->do("INSERT INTO longdescs ($columns) VALUES ($qmarks)", undef, values %$comment);
|
$dbh->do("INSERT INTO longdescs ($columns) VALUES ($qmarks)", undef, values %$comment);
|
||||||
|
$comment->{id} = $dbh->bz_last_key('longdescs', 'id');
|
||||||
if (0+$comment->{work_time} != 0)
|
if (0+$comment->{work_time} != 0)
|
||||||
{
|
{
|
||||||
# Log worktime
|
# Log worktime
|
||||||
|
|
|
@ -977,11 +977,12 @@ sub add_comment {
|
||||||
$params->{is_private} = delete $params->{private};
|
$params->{is_private} = delete $params->{private};
|
||||||
}
|
}
|
||||||
# Append comment
|
# Append comment
|
||||||
|
my $info = {};
|
||||||
$bug->add_comment($comment, { isprivate => $params->{is_private},
|
$bug->add_comment($comment, { isprivate => $params->{is_private},
|
||||||
work_time => $params->{work_time} });
|
work_time => $params->{work_time} });
|
||||||
$bug->update();
|
$bug->update($info);
|
||||||
|
|
||||||
my $new_comment_id = $bug->{added_comments}[0]->id;
|
my $new_comment_id = $info->{added_comments}->[0]->{id};
|
||||||
|
|
||||||
# Send mail.
|
# Send mail.
|
||||||
Bugzilla::BugMail::Send($bug->bug_id, { changer => $user });
|
Bugzilla::BugMail::Send($bug->bug_id, { changer => $user });
|
||||||
|
|
Loading…
Reference in New Issue