]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 1102899 - Remove OldBugMove extension. a=glob.
authorGervase Markham <gerv@gerv.net>
Thu, 4 Dec 2014 00:17:43 +0000 (16:17 -0800)
committerDylan William Hardison <dylan@hardison.net>
Fri, 5 Dec 2014 19:30:24 +0000 (14:30 -0500)
extensions/OldBugMove/Config.pm [deleted file]
extensions/OldBugMove/Extension.pm [deleted file]
extensions/OldBugMove/disabled [deleted file]
extensions/OldBugMove/lib/Params.pm [deleted file]
extensions/OldBugMove/template/en/default/admin/params/oldbugmove.html.tmpl [deleted file]
extensions/OldBugMove/template/en/default/hook/bug/edit-after_comment_textarea.html.tmpl [deleted file]
extensions/OldBugMove/template/en/default/hook/bug/format_comment-type.txt.tmpl [deleted file]
extensions/OldBugMove/template/en/default/hook/global/user-error-auth_failure_action.html.tmpl [deleted file]
extensions/OldBugMove/template/en/default/hook/global/user-error-errors.html.tmpl [deleted file]
extensions/OldBugMove/template/en/default/hook/list/edit-multiple-after_groups.html.tmpl [deleted file]

diff --git a/extensions/OldBugMove/Config.pm b/extensions/OldBugMove/Config.pm
deleted file mode 100644 (file)
index 681cbae..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# This Source Code Form is "Incompatible With Secondary Licenses", as
-# defined by the Mozilla Public License, v. 2.0.
-
-package Bugzilla::Extension::OldBugMove;
-
-use 5.10.1;
-use strict;
-use warnings;
-
-use constant NAME => 'OldBugMove';
-__PACKAGE__->NAME;
diff --git a/extensions/OldBugMove/Extension.pm b/extensions/OldBugMove/Extension.pm
deleted file mode 100644 (file)
index 375707f..0000000
+++ /dev/null
@@ -1,200 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# This Source Code Form is "Incompatible With Secondary Licenses", as
-# defined by the Mozilla Public License, v. 2.0.
-
-package Bugzilla::Extension::OldBugMove;
-
-use 5.10.1;
-use strict;
-use warnings;
-
-use parent qw(Bugzilla::Extension);
-use Bugzilla::Constants;
-use Bugzilla::Error;
-use Bugzilla::Field::Choice;
-use Bugzilla::Mailer;
-use Bugzilla::User;
-use Bugzilla::Util qw(trim);
-
-use Scalar::Util qw(blessed);
-use Storable qw(dclone);
-
-use constant VERSION => BUGZILLA_VERSION;
-
-# This is 4 because that's what it originally was when this code was
-# a part of Bugzilla.
-use constant CMT_MOVED_TO => 4;
-
-sub install_update_db {
-    my $reso_type = Bugzilla::Field::Choice->type('resolution');
-    my $moved_reso = $reso_type->new({ name => 'MOVED' });
-    # We make the MOVED resolution inactive, so that it doesn't show up
-    # as a valid drop-down option.
-    if ($moved_reso) {
-        $moved_reso->set_is_active(0);
-        $moved_reso->update();
-    }
-    else {
-        print "Creating the MOVED resolution...\n";
-        $reso_type->create(
-           { value   => 'MOVED', sortkey => '30000', isactive => 0 });
-    }
-}
-
-sub config_add_panels {
-    my ($self, $args) = @_;
-    my $modules = $args->{'panel_modules'};
-    $modules->{'OldBugMove'} = 'Bugzilla::Extension::OldBugMove::Params';
-}
-
-sub template_before_create {
-    my ($self, $args) = @_;
-    my $config = $args->{config};
-
-    my $constants = $config->{CONSTANTS};
-    $constants->{CMT_MOVED_TO} = CMT_MOVED_TO;
-
-    my $vars = $config->{VARIABLES};
-    $vars->{oldbugmove_user_is_mover} = \&_user_is_mover;
-}
-
-sub object_before_delete {
-    my ($self, $args) = @_;
-    my $object = $args->{'object'};
-    if ($object->isa('Bugzilla::Field::Choice::resolution')) {
-        if ($object->name eq 'MOVED') {
-            ThrowUserError('oldbugmove_no_delete_moved');
-        }
-    }
-}
-
-sub object_before_set {
-    my ($self, $args) = @_;
-    my ($object, $field) = @$args{qw(object field)};
-    if ($field eq 'resolution' and $object->isa('Bugzilla::Bug')) {
-        # Store the old value so that end_of_set can check it.
-        $object->{'_oldbugmove_old_resolution'} = $object->resolution;
-    }
-}
-
-sub object_end_of_set {
-    my ($self, $args) = @_;
-    my ($object, $field) = @$args{qw(object field)};
-    if ($field eq 'resolution' and $object->isa('Bugzilla::Bug')) {
-        my $old_value = delete $object->{'_oldbugmove_old_resolution'};
-        return if $old_value eq $object->resolution;
-        if ($object->resolution eq 'MOVED') {
-            $object->add_comment('', { type => CMT_MOVED_TO,
-                                       extra_data => Bugzilla->user->login });
-        }
-    }
-}
-
-sub object_end_of_set_all {
-    my ($self, $args) = @_;
-    my $object = $args->{'object'};
-
-    if ($object->isa('Bugzilla::Bug') and Bugzilla->input_params->{'oldbugmove'}) {
-        my $new_status = Bugzilla->params->{'duplicate_or_move_bug_status'};
-        $object->set_bug_status($new_status, { resolution => 'MOVED' });
-    }
-}
-
-sub object_validators {
-    my ($self, $args) = @_;
-    my ($class, $validators) = @$args{qw(class validators)};
-    if ($class->isa('Bugzilla::Comment')) {
-        my $extra_data_validator = $validators->{extra_data};
-        $validators->{extra_data} = 
-            sub { _check_comment_extra_data($extra_data_validator, @_) };
-    }
-    elsif ($class->isa('Bugzilla::Bug')) {
-        my $reso_validator = $validators->{resolution};
-        $validators->{resolution} =
-            sub { _check_bug_resolution($reso_validator, @_) };
-    }
-}
-
-sub _check_bug_resolution {
-    my $original_validator = shift;
-    my ($invocant, $resolution) = @_;
-
-    if ($resolution eq 'MOVED' && $invocant->resolution ne 'MOVED'
-        && !Bugzilla->input_params->{'oldbugmove'})
-    {
-        # MOVED has a special meaning and can only be used when
-        # really moving bugs to another installation.
-        ThrowUserError('oldbugmove_no_manual_move');
-    }
-
-    return $original_validator->(@_);
-}
-
-sub _check_comment_extra_data {
-    my $original_validator = shift;
-    my ($invocant, $extra_data, undef, $params) = @_;
-    my $type = blessed($invocant) ? $invocant->type : $params->{type};
-
-    if ($type == CMT_MOVED_TO) {
-        return Bugzilla::User->check($extra_data)->login;
-    }
-    return $original_validator->(@_);
-}
-
-sub bug_end_of_update {
-    my ($self, $args) = @_;
-    my ($bug, $old_bug, $changes) = @$args{qw(bug old_bug changes)};
-    if (defined $changes->{'resolution'}
-        and $changes->{'resolution'}->[1] eq 'MOVED')
-    {
-        $self->_move_bug($bug, $old_bug);
-    }
-}
-
-sub _move_bug {
-    my ($self, $bug, $old_bug) = @_;
-
-    my $dbh = Bugzilla->dbh;
-    my $template = Bugzilla->template;
-
-    _user_is_mover(Bugzilla->user) 
-        or ThrowUserError("auth_failure", { action => 'move',
-                                            object => 'bugs' });
-
-    # Don't export the new status and resolution. We want the current
-    # ones.
-    local $Storable::forgive_me = 1;
-    my $export_me = dclone($bug);
-    $export_me->{bug_status} = $old_bug->bug_status;
-    delete $export_me->{status};
-    $export_me->{resolution} = $old_bug->resolution;
-
-    # Prepare and send all data about these bugs to the new database
-    my $to = Bugzilla->params->{'move-to-address'};
-    $to =~ s/@/\@/;
-    my $from = Bugzilla->params->{'mailfrom'};
-    $from =~ s/@/\@/;
-    my $msg = "To: $to\n";
-    $msg .= "From: Bugzilla <" . $from . ">\n";
-    $msg .= "Subject: Moving bug " . $bug->id . "\n\n";
-    my @fieldlist = (Bugzilla::Bug->fields, 'group', 'long_desc',
-                     'attachment', 'attachmentdata');
-    my %displayfields = map { $_ => 1 } @fieldlist;
-    my $vars = { bugs => [$export_me], displayfields => \%displayfields };
-    $template->process("bug/show.xml.tmpl", $vars, \$msg)
-      || ThrowTemplateError($template->error());
-    $msg .= "\n";
-    MessageToMTA($msg);
-}
-
-sub _user_is_mover {
-    my $user = shift;
-
-    my @movers = map { trim($_) } split(',', Bugzilla->params->{'movers'});
-    return ($user->id and grep($_ eq $user->login, @movers)) ? 1 : 0;
-}
-
-__PACKAGE__->NAME;
diff --git a/extensions/OldBugMove/disabled b/extensions/OldBugMove/disabled
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/extensions/OldBugMove/lib/Params.pm b/extensions/OldBugMove/lib/Params.pm
deleted file mode 100644 (file)
index 05e3ed2..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# This Source Code Form is "Incompatible With Secondary Licenses", as
-# defined by the Mozilla Public License, v. 2.0.
-
-package Bugzilla::Extension::OldBugMove::Params;
-
-use 5.10.1;
-use strict;
-use warnings;
-
-use Bugzilla::Config::Common;
-
-our $sortkey = 700;
-
-use constant get_param_list => (
-  {
-   name => 'move-to-url',
-   type => 't',
-   default => ''
-  },
-
-  {
-   name => 'move-to-address',
-   type => 't',
-   default => 'bugzilla-import'
-  },
-
-  {
-   name => 'movers',
-   type => 't',
-   default => ''
-  },
-);
-
-1;
diff --git a/extensions/OldBugMove/template/en/default/admin/params/oldbugmove.html.tmpl b/extensions/OldBugMove/template/en/default/admin/params/oldbugmove.html.tmpl
deleted file mode 100644 (file)
index 0a54c46..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-[%# This Source Code Form is subject to the terms of the Mozilla Public
-  # License, v. 2.0. If a copy of the MPL was not distributed with this
-  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
-  #
-  # This Source Code Form is "Incompatible With Secondary Licenses", as
-  # defined by the Mozilla Public License, v. 2.0.
-  #%]
-[%
-   title = "$terms.Bug Moving"
-   desc = "Set up parameters to move $terms.bugs to/from another installation"
-%]
-
-[% param_descs = {
-
-  "move-to-url" => 
-    "The URL of the database we allow some of our $terms.bugs to"
-    _ " be moved to.",
-
-  "move-to-address" => 
-    "To move ${terms.bugs}, an email is sent to the target database."
-    _ " This is the email address that that database uses to listen"
-    _ " for incoming ${terms.bugs}.",
-
-  movers => 
-    "A list of people with permission to move $terms.bugs ",
-
-} %]
diff --git a/extensions/OldBugMove/template/en/default/hook/bug/edit-after_comment_textarea.html.tmpl b/extensions/OldBugMove/template/en/default/hook/bug/edit-after_comment_textarea.html.tmpl
deleted file mode 100644 (file)
index 1490f08..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-[%# This Source Code Form is subject to the terms of the Mozilla Public
-  # License, v. 2.0. If a copy of the MPL was not distributed with this
-  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
-  #
-  # This Source Code Form is "Incompatible With Secondary Licenses", as
-  # defined by the Mozilla Public License, v. 2.0.
-  #%]
-
-[% IF oldbugmove_user_is_mover(user) AND bug.resolution != 'MOVED' %]
-  <p>
-    <input type="submit" id="oldbugmove" name="oldbugmove"
-           value="Move [% terms.Bug FILTER html %] to 
-                  [%= Param('move-to-url') FILTER html %]">
-  </p>
-[% END %]
diff --git a/extensions/OldBugMove/template/en/default/hook/bug/format_comment-type.txt.tmpl b/extensions/OldBugMove/template/en/default/hook/bug/format_comment-type.txt.tmpl
deleted file mode 100644 (file)
index afe03af..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-[%# This Source Code Form is subject to the terms of the Mozilla Public
-  # License, v. 2.0. If a copy of the MPL was not distributed with this
-  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
-  #
-  # This Source Code Form is "Incompatible With Secondary Licenses", as
-  # defined by the Mozilla Public License, v. 2.0.
-  #%]
-
-[% IF comment.type == constants.CMT_MOVED_TO %]
-[% comment.body %]
-
-[%+ terms.Bug %] moved to [% Param("move-to-url") %].
-If the move succeeded, [% comment.extra_data FILTER email %] will receive a mail
-containing the number of the new [% terms.bug %] in the other database.
-If all went well, please paste in a link to the new [% terms.bug %]. 
-Otherwise, reopen this [% terms.bug %].
-[% END %]
diff --git a/extensions/OldBugMove/template/en/default/hook/global/user-error-auth_failure_action.html.tmpl b/extensions/OldBugMove/template/en/default/hook/global/user-error-auth_failure_action.html.tmpl
deleted file mode 100644 (file)
index 1966a1a..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-[%# This Source Code Form is subject to the terms of the Mozilla Public
-  # License, v. 2.0. If a copy of the MPL was not distributed with this
-  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
-  #
-  # This Source Code Form is "Incompatible With Secondary Licenses", as
-  # defined by the Mozilla Public License, v. 2.0.
-  #%]
-
-[% IF action == "move" %]
-  move
-[% END %]
diff --git a/extensions/OldBugMove/template/en/default/hook/global/user-error-errors.html.tmpl b/extensions/OldBugMove/template/en/default/hook/global/user-error-errors.html.tmpl
deleted file mode 100644 (file)
index d45026b..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-[%# This Source Code Form is subject to the terms of the Mozilla Public
-  # License, v. 2.0. If a copy of the MPL was not distributed with this
-  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
-  #
-  # This Source Code Form is "Incompatible With Secondary Licenses", as
-  # defined by the Mozilla Public License, v. 2.0.
-  #%]
-
-[% IF error == "oldbugmove_no_delete_moved" %]
-    As long as the OldBugMove extension is active, you cannot
-    delete the [%+ display_value("resolution", "MOVED") FILTER html %]
-    resolution.
-[% ELSIF error == "oldbugmove_no_manual_move" %]
-    You cannot set the resolution of [% terms.abug %] to 
-    [%+ display_value("resolution", "MOVED") FILTER html %] without
-    moving the [% terms.bug %].
-[% END %]
diff --git a/extensions/OldBugMove/template/en/default/hook/list/edit-multiple-after_groups.html.tmpl b/extensions/OldBugMove/template/en/default/hook/list/edit-multiple-after_groups.html.tmpl
deleted file mode 100644 (file)
index a5380da..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-[%# This Source Code Form is subject to the terms of the Mozilla Public
-  # License, v. 2.0. If a copy of the MPL was not distributed with this
-  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
-  #
-  # This Source Code Form is "Incompatible With Secondary Licenses", as
-  # defined by the Mozilla Public License, v. 2.0.
-  #%]
-
-[% IF oldbugmove_user_is_mover(user) %]
-  <p>
-    <input type="submit" id="oldbugmove" name="oldbugmove"
-           value="Move [% terms.Bugs FILTER html %] to 
-                  [%= Param('move-to-url') FILTER html %]">
-  </p>
-[% END %]