X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Fshare%2Fhtml%2FElements%2FShowLinks;h=16fc56d2979aea62e6d099dec0337ed3a05eda8f;hp=569bad39c4fea166d501dfde636dcbf12b5f120a;hb=e9e0cf0989259b94d9758eceff448666a2e5a5cc;hpb=b4b0c7e72d7eaee2fbfc7022022c9698323203dd diff --git a/rt/share/html/Elements/ShowLinks b/rt/share/html/Elements/ShowLinks index 569bad39c..16fc56d29 100755 --- a/rt/share/html/Elements/ShowLinks +++ b/rt/share/html/Elements/ShowLinks @@ -1,40 +1,40 @@ %# BEGIN BPS TAGGED BLOCK {{{ -%# +%# %# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC -%# -%# +%# +%# This software is Copyright (c) 1996-2014 Best Practical Solutions, LLC +%# +%# %# (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 @@ -43,16 +43,21 @@ %# 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 }}} - + - + - + - + - + - + - - % # Allow people to add more rows to the table % $m->callback( %ARGS ); -
<&|/l&>Depends on: (<% loc('Create') %>)<& ShowRelationLabel, id => $id, Label => loc('Depends on'), Relation => 'DependsOn' &>:\ +% if ($can_create) { + (<% loc('Create') %>) +% } + - <%PERL> -my ( @active, @inactive, @not_tickets ); -for my $link ( @{ $Ticket->DependsOn->ItemsArrayRef } ) { +my ( $depends_on, @active, @inactive, @not_tickets ); +$depends_on = $Ticket->DependsOn; + +while ( my $link = $depends_on->Next ) { my $target = $link->TargetObj; if ( $target && $target->isa('RT::Ticket') ) { if ( $target->QueueObj->IsInactiveStatus( $target->Status ) ) { @@ -67,8 +72,6 @@ for my $link ( @{ $Ticket->DependsOn->ItemsArrayRef } ) { } } - -
    % for my $Link (@not_tickets, @active, @inactive) {
  • <& ShowLink, URI => $Link &>
  • @@ -77,7 +80,11 @@ for my $link ( @{ $Ticket->DependsOn->ItemsArrayRef } ) {
<&|/l&>Depended on by: (<% loc('Create') %>)<& ShowRelationLabel, id => $id, Label => loc('Depended on by'), Relation => 'DependedOnBy' &>:\ +% if ($can_create) { + (<% loc('Create') %>) +% } +
    % while (my $Link = $Ticket->DependedOnBy->Next) { @@ -87,15 +94,27 @@ for my $link ( @{ $Ticket->DependsOn->ItemsArrayRef } ) {
<&|/l&>Parents: (<% loc('Create') %>)<& ShowRelationLabel, id => $id, Label => loc('Parents'), Relation => 'Parents' &>:\ +% if ($can_create) { + (<% loc('Create') %>) +% } + <& /Ticket/Elements/ShowParents, Ticket => $Ticket &>
<&|/l&>Children: (<% loc('Create') %>)<& ShowRelationLabel, id => $id, Label => loc('Children'), Relation => 'Children' &>:\ +% if ($can_create) { + (<% loc('Create') %>) +% } + <& /Ticket/Elements/ShowMembers, Ticket => $Ticket &>
<&|/l&>Refers to: (<% loc('Create') %>)<& ShowRelationLabel, id => $id, Label => loc('Refers to'), Relation => 'RefersTo' &>:\ +% if ($can_create) { + (<% loc('Create') %>) +% } +
    % while (my $Link = $Ticket->RefersTo->Next) { @@ -105,7 +124,11 @@ for my $link ( @{ $Ticket->DependsOn->ItemsArrayRef } ) {
<&|/l&>Referred to by: (<% loc('Create') %>)<& ShowRelationLabel, id => $id, Label => loc('Referred to by'), Relation => 'ReferredToBy' &>:\ +% if ($can_create) { + (<% loc('Create') %>) +% } +
    % while (my $Link = $Ticket->ReferredToBy->Next) { @@ -115,23 +138,21 @@ for my $link ( @{ $Ticket->DependsOn->ItemsArrayRef } ) {
- <%INIT> +my $id = $Ticket->id; + my $clone = {}; my $path = RT->Config->Get('WebPath') . '/Ticket/Create.html?Queue=' . $Ticket->Queue . '&CloneTicket=' - . $Ticket->id; - + . $id; +my $can_create = $Ticket->QueueObj->CurrentUserHasRight('CreateTicket'); for my $relation ( qw(RefersTo ReferredToBy)) { @@ -142,19 +163,17 @@ for my $relation ( $clone->{$field} = $path . "&$field=" . join( '%20', - ( map { $_->$other() } @{ $Ticket->$relation->ItemsArrayRef } ), - $Ticket->id ); + ( map { $_->$other() } @{ $Ticket->$relation->ItemsArrayRef } ), $id ); } for my $relation ( qw(MemberOf Members DependsOn DependedOnBy)) { my $mode = $RT::Ticket::LINKTYPEMAP{$relation}->{Mode}; my $type = $RT::Ticket::LINKTYPEMAP{$relation}->{Type}; my $field = $mode eq 'Base' ? 'new-' . $type : $type . '-new'; - $clone->{$field} = $path . "&$field=". $Ticket->id ; + $clone->{$field} = $path . "&$field=$id"; } - <%ARGS> $Ticket => undef