Putting 4.2.0 on top of 4.0.17
[usit-rt.git] / share / html / Ticket / Graphs / Elements / EditGraphProperties
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<&| /Widgets/TitleBox, title => loc('Graph Properties') &>
49
50<% loc('Direction') %> <select name="Direction">
51<option value="TB" <% ($Direction||'TB') eq 'TB'? 'selected="selected"': '' |n %>><% loc('top to bottom') %></option>
52<option value="LR" <% ($Direction||'TB') eq 'LR'? 'selected="selected"': '' |n %>><% loc('left to right') %></option>
53%# XXX: not supported by GraphViz perl module
54%#<option value="BT" <% ($Direction||'TB') eq 'BT'? 'selected="selected"': '' |n %>><% loc('bottom to top') %></option>
55%#<option value="RL" <% ($Direction||'TB') eq 'RL'? 'selected="selected"': '' |n %>><% loc('right to left') %></option>
56</select><br />
57
58<% loc('Main type of links') %> <select name="LeadingLink">
59% foreach ( @link_types ) {
60<option value="<% $_ %>" <% ($LeadingLink||'Members') eq $_? 'selected="selected"': '' |n %>><% loc($_) %></option>
61% }
62</select>
63
64<% loc('maximum depth') %> <select name="MaxDepth">
65<option value="0"><% loc('Unlimit') %></option>
66% foreach ( 1..6 ) {
67<option value="<% $_ %>" <% ($MaxDepth||0) == $_? 'selected="selected"': '' %>><% $_ %></option>
68% }
69</select><br />
70
71<% loc('Show as well') %>:
72% foreach my $type ( @link_types ) {
73% my $checked = '';
74% $checked = 'checked="checked"' if grep $type eq $_, @ShowLinks;
af59614d
MKG
75<input type="checkbox" id="ShowLinks" name="ShowLinks" value="<% $type %>" <% $checked |n %> />
76<label for="ShowLinks"><% loc($type) %></label>
84fb5b46
MKG
77% }
78<br />
79
80% my @properties = RT::Graph::Tickets->TicketProperties( $session{'CurrentUser'} );
81
82<% loc('Fill boxes with color using') %>:
83<select name="FillUsing">
84<option value=""><% loc('nothing') %></option>
85<%PERL>
86my @tmp = @properties;
87while ( my ($group, $list) = (splice @tmp, 0, 2) ) {
88 # coloring by links and dates sounds stupid
89 next if $group eq 'Dates' || $group eq 'Links';
90
91 foreach my $prop ( @$list ) {
92 my $selected = '';
93 $selected = 'selected="selected"' if $prop eq ($FillUsing||'');
94</%PERL>
95<option value="<% $prop %>" <% $selected |n %>><% loc($prop) %></option>
96% } }
97</select><br />
98
99% if ( RT::Link->can('Description' ) ) {
100% my $checked = '';
101% $checked = 'checked="checked"' if $ShowLinkDescriptions;
af59614d
MKG
102<label for="ShowLinkDescriptions"><% loc('Show link descriptions') %>:</label>
103<input type="checkbox" id="ShowLinkDescriptions" name="ShowLinkDescriptions" value="1" <% $checked |n %> />
84fb5b46
MKG
104<br />
105% }
106
107<%PERL>
108for my $i ( 1..($MaxDepth||6) ) {
109 my @default;
110 if ( my $tmp = $ARGS{ 'Level-'. $i .'-Properties' } ) {
111 @default = ref $tmp? @$tmp : ($tmp);
112 }
113
114 $m->comp('SELF:Properties',
115 Level => $i,
116 Available => \@properties,
117 Default => \@default,
118 );
119}
120</%PERL>
121
122<& /Elements/Submit, Label => loc('Update Graph'), Name => 'Update' &>
123
124</&>
125
126<%ARGS>
127$id => undef
128$Direction => 'TB'
129$LeadingLink => 'Members'
130@ShowLinks => ('MemberOf', 'DependsOn', 'RefersTo')
131$MaxDepth => 3
132$FillUsing => ''
133$ShowLinkDescriptions => 0
134</%ARGS>
135<%INIT>
136require RT::Graph::Tickets;
137require RT::Link;
138
139my @link_types = qw(Members MemberOf RefersTo ReferredToBy DependsOn DependedOnBy); #loc_qw
140@ShowLinks = grep $_ ne $LeadingLink, @ShowLinks;
141</%INIT>
142
143<%METHOD Properties>
144<%ARGS>
145@Available => ()
146@Default => ()
147$Level => 1,
148</%ARGS>
149<%INIT>
150my $id = "graph-properties-box-$Level";
151my $class = '';
152$class = 'class="hidden"' if $Level != 1 && !@Default;
153</%INIT>
154<% loc('Show Tickets Properties on [_1] level', $Level) %>
155(<small><a href="#" onclick="hideshow(<% $id |n,j%>); return false;"><% loc('open/close') %></a></small>):
156<table id="<% $id %>" <% $class |n %>>
157% while ( my ($group, $list) = (splice @Available, 0, 2) ) {
158<tr><td><% loc($group) %>:</td><td>
159% foreach my $prop ( @$list ) {
160% my $checked = '';
161% $checked = 'checked="checked"' if grep $_ eq $prop, @Default;
af59614d
MKG
162<input type="checkbox" class="checkbox" id="Level-<% $Level %>-Properties" name="Level-<% $Level %>-Properties" value="<% $prop %>" <% $checked |n %> />
163<label for="Level-<% $Level %>-Properties"><% loc($prop) %></label>
84fb5b46
MKG
164% }
165</td></tr>
166% }
167</table>
168<br />
169</%METHOD>