Putting 4.2.0 on top of 4.0.17
[usit-rt.git] / share / html / Elements / RT__Scrip / ColumnMap
CommitLineData
84fb5b46
MKG
1%# BEGIN BPS TAGGED BLOCK {{{
2%#
3%# COPYRIGHT:
4%#
403d7b0b 5%# This software is Copyright (c) 1996-2013 Best Practical Solutions, LLC
84fb5b46
MKG
6%# <sales@bestpractical.com>
7%#
8%# (Except where explicitly superseded by other copyright notices)
9%#
10%#
11%# LICENSE:
12%#
13%# This work is made available to you under the terms of Version 2 of
14%# the GNU General Public License. A copy of that license should have
15%# been provided with this software, but in any event can be snarfed
16%# from www.gnu.org.
17%#
18%# This work is distributed in the hope that it will be useful, but
19%# WITHOUT ANY WARRANTY; without even the implied warranty of
20%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21%# General Public License for more details.
22%#
23%# You should have received a copy of the GNU General Public License
24%# along with this program; if not, write to the Free Software
25%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
26%# 02110-1301 or visit their web page on the internet at
27%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
28%#
29%#
30%# CONTRIBUTION SUBMISSION POLICY:
31%#
32%# (The following paragraph is not intended to limit the rights granted
33%# to you to modify and distribute this software under the terms of
34%# the GNU General Public License and is only of importance to you if
35%# you choose to contribute your changes and enhancements to the
36%# community by submitting them to Best Practical Solutions, LLC.)
37%#
38%# By intentionally submitting any modifications, corrections or
39%# derivatives to this work, or any other work intended for use with
40%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
41%# you are the copyright holder for those contributions and you grant
42%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
43%# royalty-free, perpetual, license to use, copy, create derivative
44%# works based on those contributions, and sublicense and distribute
45%# those contributions and any derivatives thereof.
46%#
47%# END BPS TAGGED BLOCK }}}
48<%ARGS>
49$Name
50$Attr => undef
af59614d 51$GenericMap => {}
84fb5b46
MKG
52</%ARGS>
53<%ONCE>
54my $COLUMN_MAP = {
84fb5b46
MKG
55 Queue => {
56 title => 'Queue', # loc
57 value => sub {
58 return $_[0]->QueueObj->Name if $_[0]->Queue;
59 return $_[0]->loc('Global');
60 },
61 },
62 QueueId => {
63 title => 'Queue', # loc
64 value => sub { $_[0]->Queue },
65 },
66 Condition => {
67 title => 'Condition', # loc
68 value => sub { return $_[0]->loc( $_[0]->ScripConditionObj->Name ) },
69 },
70 Action => {
71 title => 'Action', # loc
72 value => sub { return $_[0]->loc( $_[0]->ScripActionObj->Name ) },
73 },
74 Template => {
75 title => 'Template', # loc
af59614d 76 value => sub { return $_[0]->loc( $_[0]->Template ) },
84fb5b46
MKG
77 },
78 AutoDescription => {
79 title => 'Condition, Action and Template', # loc
80 value => sub { return $_[0]->loc( "[_1] [_2] with template [_3]",
81 $_[0]->loc($_[0]->ConditionObj->Name),
82 $_[0]->loc($_[0]->ActionObj->Name),
af59614d 83 $_[0]->loc($_[0]->Template),
84fb5b46
MKG
84 ) },
85 },
86 Description => {
87 title => 'Description', # loc
af59614d
MKG
88 attribute => 'Description',
89 value => sub { return $_[0]->Description() },
90 },
91 Disabled => {
92 title => \'&nbsp;',
93 attribute => 'Disabled',
94 value => sub { return $_[0]->Disabled? $_[0]->loc('Disabled'): $_[0]->loc('Enabled') },
95 },
96 RemoveCheckBox => {
97 title => sub {
98 my $name = 'RemoveScrip';
99 my $checked = $m->request_args->{ $name .'All' }? 'checked="checked"': '';
100
101 return \qq{<input type="checkbox" name="${name}All" value="1" $checked
102 onclick="setCheckbox(this, '$name')" />};
103 },
104 value => sub {
105 my $id = $_[0]->id;
106 return '' if $_[0]->IsGlobal;
107
108 my $name = 'RemoveScrip';
109 my $arg = $m->request_args->{ $name };
110
111 my $checked = '';
112 if ( $arg && ref $arg ) {
113 $checked = 'checked="checked"' if grep $_ == $id, @$arg;
114 }
115 elsif ( $arg ) {
116 $checked = 'checked="checked"' if $arg == $id;
117 }
118 return \qq{<input type="checkbox" name="$name" value="$id" $checked />}
119 },
84fb5b46 120 },
af59614d
MKG
121 Move => {
122 title => 'Move',
123 value => sub {
124 my $id = $_[0]->id;
125
126 my $context = $_[2] || 0;
127 return '' unless $_[0]->IsAdded( $context );
128
129 my $name = 'MoveScrip';
130 my $args = $m->caller_args( 1 );
131 my @pass = ref $args->{'PassArguments'}
132 ? @{$args->{'PassArguments'}}
133 : ($args->{'PassArguments'});
134 my %pass = map { $_ => $args->{$_} } grep exists $args->{$_}, @pass;
135
136 my $uri = RT->Config->Get('WebPath') . $m->request_path;
137
138 my @res = (
139 \'<a href="',
140 $uri .'?'. $m->comp("/Elements/QueryString", %pass, MoveScripUp => $id ),
141 \'">', loc('[Up]'), \'</a>',
142 \' <a href="',
143 $uri .'?'. $m->comp("/Elements/QueryString", %pass, MoveScripDown => $id ),
144 \'">', loc('[Down]'), \'</a>'
145 );
146
147 return @res;
148 },
84fb5b46
MKG
149 },
150};
151
152</%ONCE>
153<%INIT>
af59614d 154$m->callback( GenericMap => $GenericMap, COLUMN_MAP => $COLUMN_MAP, CallbackName => 'ColumnMap', CallbackOnce => 1 );
84fb5b46
MKG
155return GetColumnMapEntry( Map => $COLUMN_MAP, Name => $Name, Attribute => $Attr );
156</%INIT>