[Rt-commit] rtir branch 5.0-trunk updated. 5.0.1-79-g2c974fb8

BPS Git Server git at git.bestpractical.com
Tue Jun 14 17:28:15 UTC 2022


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "rtir".

The branch, 5.0-trunk has been updated
       via  2c974fb8087fc4ccc5fdc61ce90f72d2d7080bb5 (commit)
       via  3e9ecc45f58281bd66d8831bf85f44d2427ca916 (commit)
       via  2bad70e06ece72da5ecb6fb0756bd42726732f6a (commit)
      from  3ddd866f6bd042661ec6e5de77c7a141c4b642a5 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 2c974fb8087fc4ccc5fdc61ce90f72d2d7080bb5
Merge: 3ddd866f 3e9ecc45
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Wed Jun 15 01:11:52 2022 +0800

    Merge branch '4.0-trunk' into 5.0-trunk

diff --cc html/RTIR/Elements/ShowCVEDetails
index 20afce31,00000000..0c8316e9
mode 100644,000000..100644
--- a/html/RTIR/Elements/ShowCVEDetails
+++ b/html/RTIR/Elements/ShowCVEDetails
@@@ -1,133 -1,0 +1,133 @@@
 +%# BEGIN BPS TAGGED BLOCK {{{
 +%#
 +%# COPYRIGHT:
 +%#
- %# This software is Copyright (c) 1996-2021 Best Practical Solutions, LLC
++%# This software is Copyright (c) 1996-2022 Best Practical Solutions, LLC
 +%#                                          <sales at 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 }}}
 +<&| /Widgets/TitleBox,
 +    title          => loc("CVE Details"),
 +    title_class    => 'inverse',
 +    class          => 'ticket-info-cve',
 +&>
 +
 +<div id="cve-accordion" class="rt-accordion accordion">
 +
 +% while ( my $cve = $cves->Next ) {
 +  <div class="accordion-item">
 +    <span class="accordion-title collapsed toggle" data-toggle="collapse"
 +      data-target="#accordion-cve-<% $cve->Content %>"
 +      aria-expanded="false" aria-controls="accordion-cve-<% $cve->Content %>"
 +      id="accordion-cve-<% $cve->Content %>-title">
 +      <% $cve->Content %>
 +    </span>
 +    <div id="accordion-cve-<% $cve->Content %>" class="accordion-content collapse"
 +      data-cve-id="<% $cve->Content %>" aria-labelledby="accordion-cve-<% $cve->Content %>-title">
 +%     for my $item ( qw/description cvss-3x-severity published-date last-modified-date more-info/ ) {
 +      <div class="form-row cve-<% $item %>">
 +        <div class="col-3 label"><% loc($label{$item}) %>:</div>
 +        <div class="col-9 value">
 +          <span class="current-value">
 +%         if ( $item eq 'more-info' ) {
 +            <a href="https://nvd.nist.gov/vuln/detail/<% $cve->Content %>#vulnCurrentDescriptionTitle" target="_blank"><% loc('NIST CVE Detail') %></a>
 +% }
 +          </span>
 +        </div>
 +      </div>
 +%     }
 +    </div>
 +  </div>
 +% }
 +
 +</div>
 +
 +</&>
 +
 +<script type="text/javascript">
 +jQuery( function() {
 +    jQuery('.ticket-info-cve div[data-cve-id]').each(function() {
 +      var div = jQuery(this);
 +      var cve_id = div.data('cve-id');
 +      div.find('.current-value:empty').text(RT.I18N.Catalog.loading);
 +      jQuery.get("https://services.nvd.nist.gov/rest/json/cve/1.0/" + cve_id, function(data) {
 +          if ( data.result && data.result.CVE_Items && data.result.CVE_Items[0] ) {
 +              var info = data.result.CVE_Items[0];
 +              div.find('.cve-published-date .current-value').text(info.publishedDate);
 +              div.find('.cve-last-modified-date .current-value').text(info.lastModifiedDate);
 +
 +              jQuery.each(info.cve.description.description_data, function(index, value) {
 +                  if ( value.lang == 'en' ) {
 +                      div.find('.cve-description .current-value').text(value.value);
 +                      return false;
 +                  }
 +              });
 +
 +              if ( info.impact && info.impact.baseMetricV3 && info.impact.baseMetricV3.cvssV3 ) {
 +                  var v3 = info.impact.baseMetricV3.cvssV3;
 +                  div.find('.cve-cvss-3x-severity .current-value').text(v3.baseScore + ' ' + v3.baseSeverity);
 +              }
 +          }
 +      }, 'json').fail( function(xhr) {
 +          jQuery('<p class="mt-3 mb-1 ml-3 text-danger">').text(xhr.responseJSON.message).insertBefore(div.find('.form-row:first'));
 +          div.find('.form-row').hide();
 +      });
 +    });
 +
 +});
 +</script>
 +<%ARGS>
 +$Ticket
 +</%ARGS>
 +<%INIT>
 +my $cves = $Ticket->CustomFieldValues('CVE ID');
 +
 +return unless $cves->Count;
 +
 +my %label = (
 +    'published-date'     => loc('NVD Published Date'),
 +    'last-modified-date' => loc('NVD Last Modified'),
 +    'cvss-3x-severity'   => loc('CVSS 3.x Severity'),
 +    'description'        => loc('Description'),
 +    'more-info'          => loc('More Info'),
 +);
 +</%INIT>
diff --cc html/RTIR/Tools/ExternalFeeds.html
index 733a9f4d,00000000..508885b1
mode 100644,000000..100644
--- a/html/RTIR/Tools/ExternalFeeds.html
+++ b/html/RTIR/Tools/ExternalFeeds.html
@@@ -1,167 -1,0 +1,167 @@@
 +%# BEGIN BPS TAGGED BLOCK {{{
 +%#
 +%# COPYRIGHT:
 +%#
- %# This software is Copyright (c) 1996-2021 Best Practical Solutions, LLC
++%# This software is Copyright (c) 1996-2022 Best Practical Solutions, LLC
 +%#                                          <sales at 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 }}}
 +<& /RTIR/Elements/Header, Title => $title &>
 +<& /Elements/Tabs &>
 +
 +<div class="form-row">
 +  <div class="col-12">
 +% my $i = 0;
 +% if ( $FeedName and $ExternalFeeds->{rss_feeds}{$FeedName} ) {
 +%   my $feed = $ExternalFeeds->fetch_rss_feed($FeedName);
 +
 +    <&|/Widgets/TitleBox,
 +      title => $feed->{Title},
 +      class => "external-feeds fullwidth",
 +      bodyclass => "",
 +    &>
 +%   if ($feed->{__error}) {
 +      <& /Elements/ListActions, actions => $feed->{__error} &>
 +%   }
 +%   else {
 +      <div class="table-responsive">
 +        <p class="mt-3 mt-1 ml-3">
 +          <% $feed->{Description} %>
 +%       if ( $feed->{PubDate} || $feed->{LastBuildDate}) {
 +          <i><&|/l, $feed->{PubDate} || $feed->{LastBuildDate} || '-'&>updated [_1]</&></i>
 +%       }
 +        </p>
 +        <table cellspacing="0" class="table collection collection-as-table">
 +          <thead>
 +            <tr class="collection-as-table">
 +              <th class="collection-as-table"><&|/l&>Name</&></th>
 +              <th class="collection-as-table"><&|/l&>Created</&></th>
 +              <th class="collection-as-table">
 +                <% loc('Create a new [_1]', $ticket_type) %>
 +                <span class="far fa-question-circle icon-helper" data-toggle="tooltip" data-placement="top" data-original-title="<&|/l&>This will take you to a partially prefilled creation form.</&>"></span>
 +              </th>
 +            </tr>
 +          </thead>
 +          <tbody class="list-item">
 +%         foreach my $item (@{ $feed->{items} }) {
 +%           my $GeneratedSubject = "$feed->{Title}: $item->{Title}";
 +%           my $GeneratedMessage = join("<br>",
 +%             loc('Incident created from RSS feed [_1]: [_1]', $feed->{Title}, $item->{Title}),
 +%             loc('Source: [_1] on [_1]', $item->{Link} , $item->{PubDate} || $item->{LastBuildDate} || '-'),
 +%             $item->{Description} || '' );
 +            <tr class="<% $i%2 ? 'oddline' : 'evenline'%>" >
 +              <td class="collection-as-table align-text-top"><strong><% $item->{Title} %></strong>   <a href="<% $item->{Link} %>" target="_New_<% $i %>"><% $item->{Link} %></a> </td>
 +              <td class="collection-as-table align-text-top"><i><% $item->{PubDate} || $item->{LastBuildDate} %></i></td>
 +              <td class="collection-as-table align-text-top">
 +                <form action="<% $CreateURI %>" name="CreateIncident-<% $i %>" id="CreateIncident-<% $i %>"  method="post">
 +                  <input type="hidden" value="<% $GeneratedSubject %>" name="Subject">
 +                  <input type="hidden" value="<% $GeneratedMessage %>" name="Content">
 +                  <input type="hidden" value="<% $item->{Link} %>" Name="new-RefersTo">
 +                  <input type="hidden" value="<% $Lifecycle %>" Name="Lifecycle">
 +                  <input type="submit" class="button btn btn-primary form-control" value="<&|/l&>Create new ticket</&>" />
 +                </form>
 +              </td>
 +            </tr>
 +
 +            <tr class="<% $i%2 ? 'oddline' : 'evenline' %>">
 +              <td class="collection-as-table" colspan="3"><small><% $item->{scrubbed_description} |n%></small></td>
 +            </tr>
 +%           $i++;
 +%         }
 +          </tbody>
 +        </table>
 +      </div>
 +%   }
 +  </&>
 +% }
 +% elsif ( $FeedName ) {
 +% # Allow non-RSS feeds from extensions to run
 +% $m->callback( CallbackName => 'DisplayFeedContent', %ARGS, FeedsObj => $ExternalFeeds, FeedName => $FeedName, Lifecycle => $Lifecycle );
 +% } else {
 +% my $found_feed;
 +%   if ( $ExternalFeeds->have_rss_feeds) {
 +    <&|/Widgets/TitleBox,
 +        title => loc("RSS"),
 +        class => "fullwidth",
 +        bodyclass => ""
 +    &>
 +%       $found_feed = 1;
 +      <div class="table-responsive">
 +        <table cellspacing="0" class="table collection collection-as-table">
 +          <tr class="collection-as-table">
 +            <th class="collection-as-table"><&|/l&>Name</&></th>
 +            <th class="collection-as-table"><&|/l&>Description</&></th>
 +          </tr>
 +%       foreach my $feed ($ExternalFeeds->rss_feeds) {
 +          <tr class="<% $i%2 ? 'oddline' : 'evenline'%>" >
 +            <td class="collection-as-table"><a href="<% RT->Config->Get('WebPath') %>/RTIR/Tools/ExternalFeeds.html?FeedName=<% $feed->{Name} |u %>"><%$feed->{Name}%></a></td>
 +            <td class="collection-as-table"><%$feed->{Description}%></td>
 +          </tr>
 +%         $i++;
 +%       }
 +        </table>
 +      </div>
 +    </&>
 +%   }
 +% $m->callback( CallbackName => 'AfterFeedsList', %ARGS, FeedsObj => $ExternalFeeds, FoundFeedRef => \$found_feed );
 +
 +%   unless ( $found_feed ) {
 +      <p class="mt-3 mt-1 ml-3">
 +        <&|/l&>No feeds currently configured. You can configure feeds in the %ExternalFeeds option. A default set of security feeds is included in the inital RTIR configuration.</&>
 +      </p>
 +%   }
 +% }
 +
 +  </div>
 +</div>
 +
 +<%INIT>
 +use RT::IR::ExternalFeeds;
 +my $CreateURI = RT::IR->HREFTo('Incident/Create.html');
 +my $ExternalFeeds = new RT::IR::ExternalFeeds;
 +my $Lifecycle = 'incidents';
 +my $ticket_type = lc RT::IR::TicketType( Lifecycle => $Lifecycle );
 +my $title = loc('External Feeds');
 +</%INIT>
 +<%ARGS>
 +$FeedName => undef
 +</%ARGS>
diff --cc lib/RT/IR/ExternalFeeds.pm
index 66112f9b,00000000..dacd7fc1
mode 100644,000000..100644
--- a/lib/RT/IR/ExternalFeeds.pm
+++ b/lib/RT/IR/ExternalFeeds.pm
@@@ -1,155 -1,0 +1,155 @@@
 +# BEGIN BPS TAGGED BLOCK {{{
 +#
 +# COPYRIGHT:
 +#
- # This software is Copyright (c) 1996-2021 Best Practical Solutions, LLC
++# This software is Copyright (c) 1996-2022 Best Practical Solutions, LLC
 +#                                          <sales at 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 }}}
 +
 +package RT::IR::ExternalFeeds;
 +use strict;
 +use warnings;
 +
 +use LWP::UserAgent;
 +use XML::RSS;
 +use HTML::Entities;
 +
 +sub new {
 +    my $proto = shift;
 +    my $class = ref($proto) || $proto;
 +    my $self  = {};
 +    bless( $self, $class );
 +    $self->_Init(@_);
 +    return $self;
 +}
 +
 +sub _Init {
 +    my $self = shift;
 +    my %args = (
 +        Constituency => undef,
 +        @_,
 +    );
 +    $self->{ua} = LWP::UserAgent->new(env_proxy => 1);
 +    $self->{rss_feeds} = { };
 +    $self->{have_rss_feeds} = 0;
 +
 +    if (RT->Config->Get('ExternalFeeds')->{RSS}) {
 +        my $i = 1;
 +        foreach my $rss_feed ( @{RT->Config->Get('ExternalFeeds')->{RSS}} ) {
 +            next unless (ref $rss_feed eq 'HASH');
 +            $rss_feed->{index} = $i++;
 +            $self->{rss_feeds}{$rss_feed->{Name}} = $rss_feed;
 +            $self->{have_rss_feeds} ||= 1;
 +        }
 +    }
 +    $self->{_rss_parser} = XML::RSS->new();
 +
 +}
 +
 +sub rss_feeds {
 +    my $self = shift;
 +    return sort { $a->{index} <=> $b->{index} } values %{$self->{rss_feeds}};
 +}
 +
 +sub have_rss_feeds {
 +    return shift()->{have_rss_feeds};
 +}
 +
 +sub fetch_rss_feed {
 +    my ($self, $name) = @_;
 +    my $url = $self->{rss_feeds}{$name}{URI};
 +    # make sure we have a fairly short timeout so page doesn't get apache timeout.
 +    my $response = $self->{ua}->get($url);
 +    return $self->_parse_rss_feed($response);
 +}
 +
 +######
 +
 +sub _parse_rss_feed {
 +    my ($self, $response) = @_;
 +    return { __error => "Can't reach feed : " . $response->status_line } unless ($response->is_success);
 +    eval { $self->{_rss_parser}->parse($response->content); };
 +    unless ( $self->{_rss_parser}{channel}{title} && $self->{_rss_parser}{items}[0] ) {
 +        return { __error => "Couldn't parse RSS response "};
 +    }
 +
 +    my $parsed_feed = { map { ucfirst($_) => $self->{_rss_parser}{channel}{$_} }
 +                            ( qw(title description pubDate lastBuildDate) ) };
 +    foreach my $item (@{$self->{_rss_parser}{items}}) {
 +        my $item_values = {
 +            map { ucfirst($_) => $item->{$_} }
 +                (qw(title link url guid pubDate) )
 +            };
 +        $item_values->{Link} //= $item_values->{Url};
 +        if (defined( $item->{'description'} ) ) {
 +            $item_values->{Description} = decode_entities($item->{'description'});
 +            $item_values->{scrubbed_description} = $self->_scrub_html($item_values->{Description});
 +        } else {
 +            $item_values->{scrubbed_description} = $item_values->{Description} = 'No content/description for this item';
 +        }
 +        push (@{$parsed_feed->{items}}, $item_values);
 +    }
 +    return $parsed_feed;
 +}
 +
 +sub _scrub_html {
 +    my ($self, $html) = @_;
 +    unless ($self->{_scrubber}) {
 +        my $scrubber = HTML::Scrubber->new( script => 0, allow => [ qw[ p b i u br ] ] );
 +        $scrubber->rules(
 +            a => {
 +                'href' => qr{^(?:http|https)://}i,
 +                '*' =>  0
 +            },
 +            '*' => 0
 +        );
 +        $self->{_scrubber} = $scrubber;
 +    }
 +    my $scrubbed_html = $self->{_scrubber}->scrub($html);
 +    $scrubbed_html =~ s|<\/?p>|<br>|gi;
 +    return $scrubbed_html;
 +}
 +
 +RT::IR->ImportOverlays;
 +
 +1;

-----------------------------------------------------------------------

Summary of changes:
 README                                                               | 2 +-
 bin/add_constituency.in                                              | 2 +-
 etc/upgrade/2.5.1/update_saved_searches.pl.in                        | 2 +-
 etc/upgrade/rtir-2.4-upgrade.pl.in                                   | 2 +-
 html/Callbacks/RTIR/Admin/Queues/DefaultValues.html/Init             | 2 +-
 html/Callbacks/RTIR/Elements/Header/Head                             | 2 +-
 html/Callbacks/RTIR/Elements/MakeClicky/Default                      | 2 +-
 html/Callbacks/RTIR/Elements/RT__Ticket/ColumnMap/Once               | 2 +-
 html/Callbacks/RTIR/Elements/ShowHistoryPage/SkipTransaction         | 2 +-
 html/Callbacks/RTIR/Elements/ShowSearch/ModifySearch                 | 2 +-
 html/Callbacks/RTIR/Elements/Tabs/Privileged                         | 2 +-
 html/Callbacks/RTIR/Helpers/TicketHistory/ExtraShowHistoryArguments  | 2 +-
 html/Callbacks/RTIR/Search/Build.html/BeforeDisplay                  | 2 +-
 html/Callbacks/RTIR/Search/Elements/PickBasics/Default               | 2 +-
 html/Callbacks/RTIR/Search/Results.html/Initial                      | 2 +-
 html/Callbacks/RTIR/Ticket/Create.html/Default                       | 2 +-
 html/Callbacks/RTIR/Ticket/Create.html/Init                          | 2 +-
 html/Callbacks/RTIR/Ticket/Display.html/Initial                      | 2 +-
 html/Callbacks/RTIR/Ticket/Elements/ShowLinkedQueues/MassageQueries  | 2 +-
 html/Callbacks/RTIR/Ticket/Elements/ShowLinkedQueues/MassageTitleBox | 2 +-
 html/Callbacks/RTIR/autohandler/SuccessfulLogin                      | 2 +-
 html/RTIR/Advanced.html                                              | 2 +-
 html/RTIR/Create.html                                                | 2 +-
 html/RTIR/CreateInQueue.html                                         | 2 +-
 html/RTIR/Crypt.html                                                 | 2 +-
 html/RTIR/Display.html                                               | 2 +-
 html/RTIR/Edit.html                                                  | 2 +-
 html/RTIR/EditUsername                                               | 2 +-
 html/RTIR/Elements/AddWatchers                                       | 2 +-
 html/RTIR/Elements/AttachReports                                     | 2 +-
 html/RTIR/Elements/CreateInRTIRQueue                                 | 2 +-
 html/RTIR/Elements/CreateInRTIRQueueModal                            | 2 +-
 html/RTIR/Elements/CreateTicketInQueue                               | 2 +-
 html/RTIR/Elements/DueIncidents                                      | 2 +-
 html/RTIR/Elements/EditCustomFields                                  | 2 +-
 html/RTIR/Elements/EditPeople                                        | 2 +-
 html/RTIR/Elements/EditPeopleInline                                  | 2 +-
 html/RTIR/Elements/EditRTIRField                                     | 2 +-
 html/RTIR/Elements/Header                                            | 2 +-
 html/RTIR/Elements/MergeWith                                         | 2 +-
 html/RTIR/Elements/NewReports                                        | 2 +-
 html/RTIR/Elements/NobodyDueIncidents                                | 2 +-
 html/RTIR/Elements/PickRestriction                                   | 2 +-
 html/RTIR/Elements/QueueSummary                                      | 2 +-
 html/RTIR/Elements/Refresh                                           | 2 +-
 html/RTIR/Elements/SelectConstituency                                | 2 +-
 html/RTIR/Elements/SelectIncident                                    | 2 +-
 html/RTIR/Elements/SelectNewTicketQueue                              | 2 +-
 html/RTIR/Elements/SelectRTIRQueue                                   | 2 +-
 html/RTIR/Elements/ShowArticles                                      | 2 +-
 html/RTIR/Elements/ShowCVEDetails                                    | 2 +-
 html/RTIR/Elements/ShowChildren                                      | 2 +-
 html/RTIR/Elements/ShowDates                                         | 2 +-
 html/RTIR/Elements/ShowIncidents                                     | 2 +-
 html/RTIR/Elements/ShowPeople                                        | 2 +-
 html/RTIR/Elements/ShowRTIRField                                     | 2 +-
 html/RTIR/Elements/TransactionData                                   | 2 +-
 html/RTIR/Elements/UpdateData                                        | 2 +-
 html/RTIR/Elements/UserDueIncidents                                  | 2 +-
 html/RTIR/Elements/WorkWithConstituency                              | 2 +-
 html/RTIR/Forward.html                                               | 2 +-
 html/RTIR/Incident/BulkAbandon.html                                  | 2 +-
 html/RTIR/Incident/Children/index.html                               | 2 +-
 html/RTIR/Incident/Create.html                                       | 2 +-
 html/RTIR/Incident/Display.html                                      | 2 +-
 html/RTIR/Incident/Elements/Create                                   | 2 +-
 html/RTIR/Incident/Elements/ReplyForm                                | 2 +-
 html/RTIR/Incident/Reply/index.html                                  | 2 +-
 html/RTIR/Incident/Split.html                                        | 2 +-
 html/RTIR/Investigation/Elements/Create                              | 2 +-
 html/RTIR/Link/FromIncident/index.html                               | 2 +-
 html/RTIR/Link/ToIncident/index.html                                 | 2 +-
 html/RTIR/Merge/index.html                                           | 2 +-
 html/RTIR/Prefs/Home.html                                            | 2 +-
 html/RTIR/Report/BulkReject.html                                     | 2 +-
 html/RTIR/Reporting/Report.html                                      | 2 +-
 html/RTIR/Reporting/Report.tsv                                       | 2 +-
 html/RTIR/Reporting/Report.txt                                       | 2 +-
 html/RTIR/Reporting/index.html                                       | 2 +-
 html/RTIR/Search/Elements/ShowResults                                | 2 +-
 html/RTIR/ShowUser                                                   | 2 +-
 html/RTIR/Split.html                                                 | 2 +-
 html/RTIR/Tools/Elements/GetEmailFromIP                              | 2 +-
 html/RTIR/Tools/Elements/LookupRelatedTickets                        | 2 +-
 html/RTIR/Tools/Elements/LookupSummary                               | 2 +-
 html/RTIR/Tools/Elements/SelectWhoisServer                           | 2 +-
 html/RTIR/Tools/Elements/ToolFormIframe                              | 2 +-
 html/RTIR/Tools/Elements/ToolFormTraceroute                          | 2 +-
 html/RTIR/Tools/Elements/ToolFormWhois                               | 2 +-
 html/RTIR/Tools/Elements/ToolResultsIframe                           | 2 +-
 html/RTIR/Tools/Elements/ToolResultsWhois                            | 2 +-
 html/RTIR/Tools/Elements/Tools                                       | 2 +-
 html/RTIR/Tools/ExternalFeeds.html                                   | 2 +-
 html/RTIR/Tools/Lookup.html                                          | 2 +-
 html/RTIR/Tools/ScriptedAction.html                                  | 2 +-
 html/RTIR/Tools/Traceroute.html                                      | 2 +-
 html/RTIR/Tools/index.html                                           | 2 +-
 html/RTIR/Update.html                                                | 2 +-
 html/RTIR/c/dhandler                                                 | 2 +-
 html/RTIR/index.html                                                 | 2 +-
 lib/Net/Whois/RIPE/Object/Template.pm                                | 2 +-
 lib/RT/Action/RTIR.pm                                                | 2 +-
 lib/RT/Action/RTIR_Activate.pm                                       | 2 +-
 lib/RT/Action/RTIR_ChangeChildConstituencies.pm                      | 2 +-
 lib/RT/Action/RTIR_ChangeChildOwnership.pm                           | 2 +-
 lib/RT/Action/RTIR_ChangeParentOwnership.pm                          | 2 +-
 lib/RT/Action/RTIR_FindCVE.pm                                        | 2 +-
 lib/RT/Action/RTIR_FindDomain.pm                                     | 2 +-
 lib/RT/Action/RTIR_FindIP.pm                                         | 2 +-
 lib/RT/Action/RTIR_MergeCVEs.pm                                      | 2 +-
 lib/RT/Action/RTIR_MergeDomains.pm                                   | 2 +-
 lib/RT/Action/RTIR_MergeIPs.pm                                       | 2 +-
 lib/RT/Action/RTIR_OpenParent.pm                                     | 2 +-
 lib/RT/Action/RTIR_ResolveChildren.pm                                | 2 +-
 lib/RT/Action/RTIR_SetCountermeasureStatus.pm                        | 2 +-
 lib/RT/Action/RTIR_SetDueIncident.pm                                 | 2 +-
 lib/RT/Action/RTIR_SetHowReported.pm                                 | 2 +-
 lib/RT/Action/RTIR_SetIncidentResolution.pm                          | 2 +-
 lib/RT/Condition/RTIR.pm                                             | 2 +-
 lib/RT/Condition/RTIR_CustomerResponse.pm                            | 2 +-
 lib/RT/Condition/RTIR_LinkingToIncident.pm                           | 2 +-
 lib/RT/Condition/RTIR_Merge.pm                                       | 2 +-
 lib/RT/Condition/RTIR_RequireDueChange.pm                            | 2 +-
 lib/RT/Condition/RTIR_RequireReportActivation.pm                     | 2 +-
 lib/RT/Condition/RTIR_StaffResponse.pm                               | 2 +-
 lib/RT/IR.pm                                                         | 2 +-
 lib/RT/IR/Config.pm                                                  | 2 +-
 lib/RT/IR/ConstituencyManager.pm                                     | 2 +-
 lib/RT/IR/ExternalFeeds.pm                                           | 2 +-
 lib/RT/IR/Test.pm.in                                                 | 2 +-
 lib/RT/IR/Test/GnuPG.pm                                              | 2 +-
 lib/RT/IR/Test/Web.pm                                                | 2 +-
 lib/RT/IR/Web.pm                                                     | 2 +-
 133 files changed, 133 insertions(+), 133 deletions(-)


hooks/post-receive
-- 
rtir


More information about the rt-commit mailing list