summaryrefslogtreecommitdiff
path: root/rt/share/html/Admin/Tools
diff options
context:
space:
mode:
Diffstat (limited to 'rt/share/html/Admin/Tools')
-rw-r--r--rt/share/html/Admin/Tools/Configuration.html242
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Dumps/dhandler68
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/DumpFileLink61
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/Error/NoRights55
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/Error/NoStorage59
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--Attachment53
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--Ticket53
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--User53
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/ObjectCheckBox66
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/PluginArguments62
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/PluginHelp75
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/SelectObjects67
-rw-r--r--rt/share/html/Admin/Tools/Shredder/Elements/SelectPlugin73
-rw-r--r--rt/share/html/Admin/Tools/Shredder/autohandler60
-rw-r--r--rt/share/html/Admin/Tools/Shredder/index.html186
-rw-r--r--rt/share/html/Admin/Tools/index.html55
16 files changed, 0 insertions, 1288 deletions
diff --git a/rt/share/html/Admin/Tools/Configuration.html b/rt/share/html/Admin/Tools/Configuration.html
deleted file mode 100644
index 22c846aca..000000000
--- a/rt/share/html/Admin/Tools/Configuration.html
+++ /dev/null
@@ -1,242 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-require Module::Versions::Report;
-my $title = loc('System Configuration');
-unless ($session{'CurrentUser'}->HasRight( Object=> $RT::System, Right => 'SuperUser')) {
- Abort(loc('This feature is only available to system administrators'));
-}
-</%init>
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/ToolTabs,
- current_tab => 'Admin/Tools/Configuration.html',
- current_subtab => 'Admin/Tools/Configuration.html',
- Title => $title &>
-
-<&|/Widgets/TitleBox, title => loc("RT Configuration") &>
-<table border="0" cellspacing="0" cellpadding="5" width="100%" class="collection">
-<tr class="collection-as-table">
-<th class="collection-as-table"><&|/l&>Option</&></th>
-<th class="collection-as-table"><&|/l&>Value</&></th>
-<th class="collection-as-table"><&|/l&>Source</&></th>
-</tr>
-<%PERL>
-my $index_conf;
-foreach my $key ( RT->Config->Options( Overridable => undef, Sorted => 0 ) ) {
- my $val = RT->Config->Get( $key );
- next unless defined $val;
-
- my $meta = RT->Config->Meta( $key );
- my $description = '';
- if ( $meta->{'Source'}{'Extension'} && $meta->{'Source'}{'SiteConfig'} ) {
- $description = loc("[_1] site config", $meta->{'Source'}{'Extension'});
- }
- elsif ( $meta->{'Source'}{'Extension'} ) {
- $description = loc("[_1] core config", $meta->{'Source'}{'Extension'});
- }
- elsif ( $meta->{'Source'}{'SiteConfig'} ) {
- $description = loc("site config");
- }
- else {
- $description = loc("core config");
- }
- $index_conf++;
-</%PERL>
-<tr class="<% $index_conf%2 ? 'oddline' : 'evenline'%>">
-<td class="collection-as-table"><% $key %></td>
-<td class="collection-as-table">
-% if ( $key =~ /Password(?!Length)/i ) {
-<em>Password not printed</em>\
-% } elsif ( !ref $val ) {
-<% "$val" %>\
-% } elsif ( ref $val eq 'ARRAY' ) {
-<% join ', ', @$val %>\
-% } elsif ( ref $val eq 'HASH' ) {
-<% join ', ', %$val %>\
-% } else {
-<% ref $val %>\
-% }
-</td>
-<td class="collection-as-table" style="white-space: nowrap">
-% if ( $description =~ /^.*site config$/ ) {
-<span style="font-weight: bold"><% $description %></span>
-% } else {
-<% $description %>
-% }
-</td>
-</tr>
-% }
-</table>
-</&>
-<table width="100%">
- <tr>
- <td valign="top" width="60%" class="boxcontainer">
-<&|/Widgets/TitleBox, title=> loc("RT core variables") &>
-<table border="0" cellspacing="0" cellpadding="5" width="100%" class="collection">
-<tr class="collection-as-table">
-<th class="collection-as-table"><&|/l&>Variable</&></th>
-<th class="collection-as-table"><&|/l&>Value</&></th>
-</tr>
-<%PERL>
-{ no strict qw/refs/;
-my %config_opt = map { $_ => 1 } RT->Config->Options( Overridable => undef );
-my $index_var;
-foreach my $key ( sort keys %{*RT::} ) {
- next if !${'RT::'.$key} || ref ${'RT::'.$key} || $config_opt{ $key };
- $index_var++;
-</%PERL>
-<tr class="collection-as-table <% $index_var%2 ? 'oddline' : 'evenline'%>">
-<td class="collection-as-table">RT::<% $key %></td>
-<td class="collection-as-table">
-% if ( $key =~ /Password(?!Length)/i ) {
-<em>Password not printed</em>
-% } else {
-<% ${'RT::'.$key} %>
-% }
-</td>
-</tr>
-% }
-% }
-</table>
-</&>
-
-<&|/Widgets/TitleBox, title => loc("RT Size") &>
-<table border="0" cellspacing="0" cellpadding="5" width="100%" class="collection">
-<tr class="collection-as-table">
-<th class="collection-as-table"><&|/l&>Object</&></th>
-<th class="collection-as-table"><&|/l&>Size</&></th>
-</tr>
-<%PERL>
-my ($index_size, $user_count, $privileged_count);
-for my $type (qw/Tickets Queues Transactions Groups PrivilegedUsers UnprivilegedUsers/) {
- my $count;
- my $class = 'RT::' . $type;
- $class =~ s/Privileged|Unprivileged//;
- my $collection = $class->new($RT::SystemUser);
- $collection->UnLimit;
- if ($type =~ /PrivilegedUsers/) {
- $user_count = $collection->CountAll;
- $collection->LimitToPrivileged;
- $count = $privileged_count = $collection->CountAll;
- } elsif ($type =~ /UnprivilegedUsers/) {
- $count = $user_count - $privileged_count;
- } else {
- $count = $collection->CountAll;
- }
- $index_size++;
-</%PERL>
-<tr class="<% $index_size%2 ? 'oddline' : 'evenline'%>">
-<td class="collection-as-table"><% $type %></td>
-<td class="collection-as-table"><% $count %></td>
-</tr>
-% }
-</table>
-</&>
-</td>
-<td valign="top" class="boxcontainer">
-
-<&|/Widgets/TitleBox, title => loc("Mason template search order") &>
-<ol>
-% foreach my $path ( map { $_->[1] } $m->interp->comp_root_array ) {
-<li><% $path %></li>
-% }
-</ol>
-</&>
-
-<&|/Widgets/TitleBox, title => loc("Perl library search order") &>
-<ol>
-% foreach my $inc (@INC) {
-<li><% $inc %></li>
-% }
-</ol>
-</&>
-
-</td>
-</table>
-
-<&|/Widgets/TitleBox, title => loc("Loaded perl modules")&>
-<table border="0" cellspacing="0" cellpadding="5" width="100%" class="collection">
-<tr class="collection-as-table">
-<th class="collection-as-table"><&|/l&>Module</&></th>
-<th class="collection-as-table"><&|/l&>Version</&></th>
-<th class="collection-as-table"><&|/l&>Source</&></th>
-
-
-<%perl>
-my $i = 0;
-my $report = Module::Versions::Report::report();
-my @report = grep /v\d/, split("\n",$report);
-shift @report; # throw away the perl version
-my ($ver, $source, $distfile);
-foreach my $item (@report) {
-if ($item =~ /^\s*(.*?)\s*v(\S+);/) {
- $item = $1;
- $ver = $2;
- $distfile = $item.".pm";
- $distfile =~ s|::|/|g;
-}
-</%perl>
-<tr class="<% $i++ %2 ? 'oddline' : 'evenline'%>">
-<td class="collection-as-table"><% $item %></td>
- <td class="collection-as-table">
- <%$ver%>
- </td>
- <td class="collection-as-table">
- <% $INC{$distfile} %>
- </td>
-</tr>
-% }
-</table>
-</&>
-
-<&|/Widgets/TitleBox, title => loc("Perl configuration") &>
-% require Config;
-<pre>
-<% Config::myconfig() %>
-</pre>
-</&>
diff --git a/rt/share/html/Admin/Tools/Shredder/Dumps/dhandler b/rt/share/html/Admin/Tools/Shredder/Dumps/dhandler
deleted file mode 100644
index f316f2218..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Dumps/dhandler
+++ /dev/null
@@ -1,68 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ATTR>
-AutoFlush => 0
-</%ATTR>
-<%FLAGS>
-inherit => undef
-</%FLAGS>
-<%INIT>
-my $arg = $m->dhandler_arg;
-$m->abort(404) if $arg =~ m{\.\.|/|\\};
-
-use File::Spec ();
-use RT::Shredder ();
-my $File = File::Spec->catfile( RT::Shredder->StoragePath, $arg );
-$r->content_type('application/octets-stream');
-open my $fh, "<:raw", $File or $m->abort(404);
-my $buf;
-while( read $fh, $buf, 1024*1024 ) {
- $m->out($buf);
-}
-return 0;
-</%INIT>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/DumpFileLink b/rt/share/html/Admin/Tools/Shredder/Elements/DumpFileLink
deleted file mode 100644
index ba0aeb85f..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/DumpFileLink
+++ /dev/null
@@ -1,61 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<div id="shredder-dump-file-link" class="shredder-help">
-<a href="<% RT->Config->Get('WebPath') %>/Admin/Tools/Shredder/Dumps/<% $File %>"><% loc('Download dumpfile') %></a>
-</div>
-<%ARGS>
-$File => ''
-</%ARGS>
-<%INIT>
-return unless $File;
-use File::Spec ();
-use RT::Shredder ();
-
-$File = File::Spec->abs2rel( $File, RT::Shredder->StoragePath )
- if File::Spec->file_name_is_absolute($File);
-</%INIT>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/Error/NoRights b/rt/share/html/Admin/Tools/Shredder/Elements/Error/NoRights
deleted file mode 100644
index 0665c076b..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/Error/NoRights
+++ /dev/null
@@ -1,55 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => 'Error' &>
-<& /Admin/Elements/ToolTabs,
- current_tab => 'Admin/Tools/Shredder',
- current_subtab => 'Admin/Tools/Shredder',
- Title => 'Error',
-&>
-<div class="error"><% loc("You don't have <b>SuperUser</b> right.") |n%></div>
-
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/Error/NoStorage b/rt/share/html/Admin/Tools/Shredder/Elements/Error/NoStorage
deleted file mode 100644
index 5d857ca56..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/Error/NoStorage
+++ /dev/null
@@ -1,59 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Path => ''
-</%ARGS>
-<& /Admin/Elements/Header, Title => 'Error' &>
-<& /Admin/Elements/ToolTabs,
- current_tab => 'Admin/Tools/Shredder',
- current_subtab => 'Admin/Tools/Shredder',
- Title => 'Error',
-&>
-<div class="error">
-<% loc('Shredder needs a directory to write dumps to. Please check that you have <span class="file-path">[_1]</span> and it is writable by your web server.', $m->interp->apply_escapes( $Path ) ) |n%>
-</div>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--Attachment b/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--Attachment
deleted file mode 100644
index b7067b703..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--Attachment
+++ /dev/null
@@ -1,53 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Object => undef
-</%ARGS>
-<a href="<% RT->Config->Get('WebURL') %>/Ticket/Attachment/<% $Object->TransactionId %>/<% $Object->id %>/">
-<% loc('Attachment') %>(<% loc('id') %>:<% $Object->id %>, <% loc('FileName') %>: <% $Object->Filename || loc('(no value)') %>)
-</a>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--Ticket b/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--Ticket
deleted file mode 100644
index 43307873d..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--Ticket
+++ /dev/null
@@ -1,53 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Object => undef
-</%ARGS>
-<a href="<% RT->Config->Get('WebURL') %>/Ticket/Display.html?id=<% $Object->id %>">
-<% loc('Ticket') %>(<% loc('id') %>:<% $Object->id %>, <% loc('Subject') %>: <% substr($Object->Subject, 0, 30) %>...)
-</a>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--User b/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--User
deleted file mode 100644
index d852f5a74..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/Object/RT--User
+++ /dev/null
@@ -1,53 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Object => undef
-</%ARGS>
-<a href="<% RT->Config->Get('WebURL') %>/Admin/Users/Modify.html?id=<% $Object->id %>">
-<% loc('User') %>(<% loc('id') %>:<% $Object->id %>, <% loc('Name') %>: <% $Object->Name %>)
-</a>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/ObjectCheckBox b/rt/share/html/Admin/Tools/Shredder/Elements/ObjectCheckBox
deleted file mode 100644
index fa487f691..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/ObjectCheckBox
+++ /dev/null
@@ -1,66 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Object => undef
-</%ARGS>
-<input type="checkbox" name="WipeoutObject" value="<% $Object->_AsString %>" />
-<span>
-% if( $m->comp_exists( $path ) ) {
-% $m->comp( $path, Object => $Object );
-% } else {
-<% $Object->_AsString %>
-% }
-</span><br />
-<%ONCE>
-require File::Spec;
-</%ONCE>
-<%INIT>
-my $path = ref $Object;
-$path =~ s/:/-/g;
-$path = File::Spec->catfile( 'Object', $path );
-</%INIT>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/PluginArguments b/rt/share/html/Admin/Tools/Shredder/Elements/PluginArguments
deleted file mode 100644
index 59c6df359..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/PluginArguments
+++ /dev/null
@@ -1,62 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Plugin => ''
-</%ARGS>
-<div id="shredder-plugin-<% $Plugin %>-arguments" class="shredder-form">
-<span><% loc('Fill arguments') %>:</span><br />
-% foreach my $a( $plugin_obj->SupportArgs ) {
-<span><% loc($a) %>:</span><input type="text" name="<% "$Plugin:$a" %>" value="<% $ARGS{ "$Plugin:$a" } || '' %>" /><br />
-% }
-</div>
-<%INIT>
-use RT::Shredder::Plugin;
-my $plugin_obj = new RT::Shredder::Plugin;
-my ($status, $msg) = $plugin_obj->LoadByName( $Plugin );
-die $msg unless $status;
-</%INIT>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/PluginHelp b/rt/share/html/Admin/Tools/Shredder/Elements/PluginHelp
deleted file mode 100644
index 70336bd4d..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/PluginHelp
+++ /dev/null
@@ -1,75 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Plugin => ''
-</%ARGS>
-<div id="shredder-plugin-<% $Plugin %>-help" class="shredder-help">
-<% $text |n%>
-</div>
-<%ONCE>
-use RT::Shredder::Plugin;
-my $plugin_obj = new RT::Shredder::Plugin;
-my %plugins = $plugin_obj->List;
-</%ONCE>
-<%INIT>
-my $file = $plugins{ $Plugin };
-unless( $file ) {
- $RT::Logger->error( "Couldn't find plugin '$Plugin'" );
- return;
-}
-
-use RT::Shredder::POD qw();
-my $text = '';
-open my $io_handle, ">:scalar", \$text or die "Can't open scalar for write: $!";
-RT::Shredder::POD::plugin_html( $file, $io_handle );
-if ( $Plugin eq 'Base' ) {
- $file =~ s/\.pm$/\/Search.pm/;
- RT::Shredder::POD::plugin_html( $file, $io_handle );
-}
-close $io_handle;
-</%INIT>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/SelectObjects b/rt/share/html/Admin/Tools/Shredder/Elements/SelectObjects
deleted file mode 100644
index 52743ff80..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/SelectObjects
+++ /dev/null
@@ -1,67 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-@Objects => ()
-</%ARGS>
-<div id="shredder-plugin-results">
-% unless( @Objects ) {
-<& /Elements/ListActions, actions => [loc("Objects list is empty")] &>
-% } else {
-<div class="shredder-form">
-<input id="shredder-select-all-objects-checkbox" type="checkbox" name="SelectAllObjects" onclick="checkAllObjects()" />
-<span><% loc("click to check/uncheck all objects at once") %></span>
-<hr />
-% foreach my $o( @Objects ) {
-<& ObjectCheckBox, Object => $o &>
-% }
-</div>
-<& /Elements/Submit, Name => 'Wipeout', Label => loc('Wipeout') &>
-% }
-</div>
-<%INIT>
-</%INIT>
diff --git a/rt/share/html/Admin/Tools/Shredder/Elements/SelectPlugin b/rt/share/html/Admin/Tools/Shredder/Elements/SelectPlugin
deleted file mode 100644
index f9ece67d2..000000000
--- a/rt/share/html/Admin/Tools/Shredder/Elements/SelectPlugin
+++ /dev/null
@@ -1,73 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Plugin => ''
-</%ARGS>
-<& PluginHelp, %ARGS, Plugin => 'Base' &>
-<div class="shredder-form">
-<span>Select plugin: </span>
-<select name="Plugin" onchange="showShredderPluginTab(this.value);">
-<option value=""><% loc('(no value)') %></option>
-% foreach my $p( keys %plugins ) {
-<option value="<% $p %>" <% ($p eq $Plugin)? 'selected="selected"': '' %>><% loc($p) %></option>
-% }
-</select>
-</div>
-<div id="shredder-plugin-tabs">
-% foreach my $p( keys %plugins ) {
-<div id="shredder-plugin-<% $p %>-tab" class="<% ($p ne $Plugin)? 'hidden': '' %>">
-<& PluginHelp, %ARGS, Plugin => $p &>
-<& PluginArguments, %ARGS, Plugin => $p &>
-</div>
-% }
-</div>
-<%ONCE>
-use RT::Shredder::Plugin;
-my $plugin_obj = new RT::Shredder::Plugin;
-my %plugins = $plugin_obj->List('Search');
-</%ONCE>
diff --git a/rt/share/html/Admin/Tools/Shredder/autohandler b/rt/share/html/Admin/Tools/Shredder/autohandler
deleted file mode 100644
index 26094525a..000000000
--- a/rt/share/html/Admin/Tools/Shredder/autohandler
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%INIT>
-unless( $session{'CurrentUser'}->HasRight( Right => 'SuperUser', Object => $RT::System ) ) {
- return $m->comp( 'Elements/Error/NoRights' );
-}
-
-use RT::Shredder ();
-my $path = RT::Shredder->StoragePath;
-unless( -d $path && -w _ ) {
- return $m->comp( 'Elements/Error/NoStorage', Path => $path );
-}
-
-$m->call_next(%ARGS);
-</%INIT>
diff --git a/rt/share/html/Admin/Tools/Shredder/index.html b/rt/share/html/Admin/Tools/Shredder/index.html
deleted file mode 100644
index 15c20dfd5..000000000
--- a/rt/share/html/Admin/Tools/Shredder/index.html
+++ /dev/null
@@ -1,186 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Plugin => ''
-$Search => ''
-$Wipeout => ''
-@WipeoutObject => ()
-</%ARGS>
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/ToolTabs,
- current_tab => 'Admin/Tools/Shredder',
- current_subtab => 'Admin/Tools/Shredder',
- Title => $title,
-&>
-<form id="shredder-search-form" action="<% RT->Config->Get('WebPath') %>/Admin/Tools/Shredder/" method="GET">
-<div id="shredder-select-plugin">
-<& /Elements/ListActions, actions => $messages{'Errors'} &>
-<& /Elements/ListActions, actions => $messages{'Success'} &>
-<& Elements/DumpFileLink, File => $dump_file &>
-<& Elements/SelectPlugin, Plugin => $Plugin, %ARGS &>
-<div id="shredder-submit-button" class="<% $Plugin? '': 'hidden' %>">
-<& /Elements/Submit, Name => 'Search', Label => loc('Search') &>
-</div>
-</div>
-<br />
-% if( $Search || $Wipeout ) {
-<& Elements/SelectObjects, Objects => \@objs &>
-% }
-</form>
-<%INIT>
-
-require RT::Shredder;
-my $title = loc('Shredder');
-my %messages = ( Errors => [], Success => [] );
-my ($plugin_obj, @objs);
-
-my $catch_non_fatals = sub {
- require RT::Shredder::Exceptions;
- if ( my $e = RT::Shredder::Exception::Info->caught ) {
- push @{ $messages{Errors} }, "$e";
- $Search = ''; @objs = ();
- return 1;
- }
- if ( UNIVERSAL::isa( $@, 'Class::Exception' ) ) {
- $@->rethrow;
- } else {
- die $@;
- }
-};
-
-
-if( $Plugin ) { { # use additional block({}) to effectively exit block on errors
- use RT::Shredder::Plugin;
- $plugin_obj = new RT::Shredder::Plugin;
- my( $status, $msg ) = $plugin_obj->LoadByName( $Plugin );
- unless( $status ) {
- push @{ $messages{Errors} }, $msg;
- $Search = '';
- last;
- }
-
- my %args;
- foreach my $k( keys %ARGS ) {
- next unless $k =~ /^\Q$Plugin\E:(.*)$/;
- $args{ $1 } = $ARGS{$k};
- }
- ( $status, $msg ) = $plugin_obj->HasSupportForArgs( keys %args );
- unless( $status ) {
- push @{ $messages{Errors} }, $msg;
- $Search = '';
- last;
- }
-
- ($status, $msg) = eval { $plugin_obj->TestArgs( %args ) };
- $catch_non_fatals->() && last if $@;
- unless( $status ) {
- push @{ $messages{Errors} }, $msg;
- $Search = '';
- last;
- }
-} }
-
-my $dump_file = '';
-
-if( $Plugin && $Wipeout ) { { # use additional block({}) to effectively exit block on errors
- my $shredder = new RT::Shredder( force => 1 );
- my $backup_plugin = new RT::Shredder::Plugin;
- my ($status, $msg) = $backup_plugin->LoadByName('SQLDump');
- unless( $status ) {
- push @{ $messages{Errors} }, $msg;
- $Search = ''; @objs = ();
- last;
- }
- ($status, $msg) = $backup_plugin->TestArgs;
- unless( $status ) {
- push @{ $messages{Errors} }, $msg;
- $Search = ''; @objs = ();
- last;
- }
-
- ($dump_file) = $backup_plugin->FileName;
- push @{ $messages{'Success'} }, "SQL dump file is '$dump_file'";
-
- $shredder->AddDumpPlugin( Object => $backup_plugin );
-
- $shredder->PutObjects( Objects => \@WipeoutObject );
- ($status, $msg) = $plugin_obj->SetResolvers( Shredder => $shredder );
- unless( $status ) {
- push @{ $messages{Errors} }, $msg;
- $Search = ''; @objs = ();
- last;
- }
- eval { $shredder->WipeoutAll };
- $catch_non_fatals->() && last if $@;
-
- push @{ $messages{Success} }, loc('objects were successfuly removed');
-} }
-
-if( $Plugin && ( $Search || $Wipeout ) ) { { # use additional block({}) to effectively exit block on errors
- my $status;
- ($status, @objs) = eval { $plugin_obj->Run };
- $catch_non_fatals->() && last if $@;
- unless( $status ) {
- push @{ $messages{Errors} }, $objs[0];
- $Search = ''; @objs = ();
- last;
- }
- push @{ $messages{Success} }, loc('executed plugin successfuly');
-
- my $shredder = new RT::Shredder;
- foreach my $o( grep defined, splice @objs ) {
- eval { push @objs, $shredder->CastObjectsToRecords( Objects => $o ) };
- $catch_non_fatals->() && last if $@;
- }
- unless( @objs ) {
- push @{ $messages{Success} }, loc('plugin returned empty list');
- } else {
- push @{ $messages{Success} }, loc('see object list below');
- }
-} }
-</%INIT>
diff --git a/rt/share/html/Admin/Tools/index.html b/rt/share/html/Admin/Tools/index.html
deleted file mode 100644
index 78b1ed853..000000000
--- a/rt/share/html/Admin/Tools/index.html
+++ /dev/null
@@ -1,55 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-%# 02110-1301 or visit their web page on the internet at
-%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-my $title = loc('System Tools');
-</%init>
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/ToolTabs,
- current_tab => 'Admin/Tools/index.html',
- current_subtab => 'Admin/Tools/Configuration.html',
- Title => $title &>