From 6e06bb255acdf53d2bbed3911378bd6859a0e3f0 Mon Sep 17 00:00:00 2001 From: dklawren Date: Wed, 30 Aug 2017 11:15:14 -0400 Subject: Bug 1393023: Approving a revision creates an r+ flag on the revision attachment in the associated bug (#219) Approving a revision creates an r+ flag on the revision attachment in the associated bug * - Working version - Splits accepted_users on ':' instead of accepting a list (phab issue) --- extensions/Push/lib/Connector/Phabricator.pm | 35 ++++------------------------ 1 file changed, 5 insertions(+), 30 deletions(-) (limited to 'extensions/Push') diff --git a/extensions/Push/lib/Connector/Phabricator.pm b/extensions/Push/lib/Connector/Phabricator.pm index 2571c6d37..c92df3173 100644 --- a/extensions/Push/lib/Connector/Phabricator.pm +++ b/extensions/Push/lib/Connector/Phabricator.pm @@ -21,9 +21,9 @@ use Bugzilla::User; use Bugzilla::Extension::PhabBugz::Constants; use Bugzilla::Extension::PhabBugz::Util qw( add_comment_to_revision create_private_revision_policy - edit_revision_policy get_bug_role_phids get_revisions_by_ids - intersect is_attachment_phab_revision make_revision_public - make_revision_private); + edit_revision_policy get_attachment_revisions get_bug_role_phids + get_revisions_by_ids intersect is_attachment_phab_revision + make_revision_public make_revision_private); use Bugzilla::Extension::Push::Constants; use Bugzilla::Extension::Push::Util qw(is_public); @@ -77,7 +77,7 @@ sub send { my $phab_error_message = 'Revision is being made private due to unknown Bugzilla groups.'; - my @revisions = $self->_get_attachment_revisions($bug); + my @revisions = get_attachment_revisions($bug); foreach my $revision (@revisions) { add_comment_to_revision( $revision->{phid}, $phab_error_message ); make_revision_private( $revision->{phid} ); @@ -110,7 +110,7 @@ sub send { $subscribers = get_bug_role_phids($bug); } - my @revisions = $self->_get_attachment_revisions($bug); + my @revisions = get_attachment_revisions($bug); foreach my $revision (@revisions) { my $revision_phid = $revision->{phid}; @@ -125,31 +125,6 @@ sub send { return PUSH_RESULT_OK; } -sub _get_attachment_revisions() { - my ( $self, $bug ) = @_; - - my @revisions; - - my @attachments = - grep { is_attachment_phab_revision($_) } @{ $bug->attachments() }; - - if (@attachments) { - my @revision_ids; - foreach my $attachment (@attachments) { - my ($revision_id) = - ( $attachment->filename =~ PHAB_ATTACHMENT_PATTERN ); - next if !$revision_id; - push( @revision_ids, int($revision_id) ); - } - - if (@revision_ids) { - @revisions = get_revisions_by_ids( \@revision_ids ); - } - } - - return @revisions; -} - sub _get_bug_by_data { my ( $self, $data ) = @_; my $bug_data = $self->_get_bug_data($data) || return 0; -- cgit v1.2.3-24-g4f1b