import rt 3.4.4
[freeside.git] / rt / html / Admin / Elements / CustomFieldTabs
diff --git a/rt/html/Admin/Elements/CustomFieldTabs b/rt/html/Admin/Elements/CustomFieldTabs
new file mode 100644 (file)
index 0000000..d7acf33
--- /dev/null
@@ -0,0 +1,116 @@
+%# BEGIN BPS TAGGED BLOCK {{{
+%# 
+%# COPYRIGHT:
+%#  
+%# This software is Copyright (c) 1996-2005 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+%# 
+%# 
+%# 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/Tabs, 
+    current_tab => 'Admin/CustomFields/',
+    subtabs => $tabs, 
+    current_subtab => $current_tab, 
+    Title => $Title &>
+<%INIT>
+my $tabs;
+
+if ($id) {
+    my $cf = RT::CustomField->new( $session{'CurrentUser'} );
+    $cf->Load($id);
+    $tabs = {
+        this => {
+            title => $cf->Name,
+            path  => "Admin/CustomFields/Modify.html?id=" . $id,
+            current_subtab => $current_tab,
+
+            subtabs => {
+
+                C => { title => loc('Basics'),
+                       path  => "Admin/CustomFields/Modify.html?id=" . $id,
+                },
+                F => { title => loc('Group Rights'),
+                       path  => "Admin/CustomFields/GroupRights.html?id="
+                         . $id, },
+                G => {
+                    title => loc('User Rights'),
+                    path => "Admin/CustomFields/UserRights.html?id=" . $id,
+                },
+
+            } }
+
+    };
+
+
+    if ($cf->LookupType =~ /^RT::Queue/io) {
+       $tabs->{'this'}->{subtabs}->{D} = {
+       title => loc('Applies to'),
+           path  => "Admin/CustomFields/Objects.html?id=" . $id,
+       };
+    }
+}
+
+if ($session{'CurrentUser'}->HasRight( Object => $RT::System, Right => 'AdminCustomField')) {
+  $tabs->{"A"} = { title => loc('Select custom field'),
+                        path => "Admin/CustomFields/",
+                           };
+  $tabs->{"B"} = { title => loc('New custom field'),
+                        path => "Admin/CustomFields/Modify.html?Create=1",
+                        separator => 1,
+                           };
+}
+
+  # Now let callbacks add their extra tabs
+  $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
+
+foreach my $tab (sort keys %{$tabs->{'this'}->{'subtabs'}}) {
+    if ($tabs->{'this'}->{'subtabs'}->{$tab}->{'path'} eq $current_tab) {
+       $tabs->{'this'}->{'subtabs'}->{$tab}->{'subtabs'} = $subtabs;
+       $tabs->{'this'}->{'subtabs'}->{$tab}->{'current_subtab'} = $current_subtab;
+    }
+}
+if( $id ) { $current_tab = "Admin/CustomFields/Modify.html?id=" . $id }
+</%INIT>
+<%ARGS>
+$Title => undef
+$id => undef
+$current_tab => undef
+$subtabs => undef
+$current_subtab => undef
+</%ARGS>