diff options
Diffstat (limited to 'rt/share/html/Admin/Articles/Classes')
-rw-r--r-- | rt/share/html/Admin/Articles/Classes/CustomFields.html | 64 | ||||
-rw-r--r-- | rt/share/html/Admin/Articles/Classes/GroupRights.html | 73 | ||||
-rw-r--r-- | rt/share/html/Admin/Articles/Classes/Modify.html | 199 | ||||
-rw-r--r-- | rt/share/html/Admin/Articles/Classes/Objects.html | 154 | ||||
-rw-r--r-- | rt/share/html/Admin/Articles/Classes/Topics.html | 68 | ||||
-rw-r--r-- | rt/share/html/Admin/Articles/Classes/UserRights.html | 72 | ||||
-rw-r--r-- | rt/share/html/Admin/Articles/Classes/index.html | 91 |
7 files changed, 721 insertions, 0 deletions
diff --git a/rt/share/html/Admin/Articles/Classes/CustomFields.html b/rt/share/html/Admin/Articles/Classes/CustomFields.html new file mode 100644 index 000000000..868c288b8 --- /dev/null +++ b/rt/share/html/Admin/Articles/Classes/CustomFields.html @@ -0,0 +1,64 @@ +%# BEGIN BPS TAGGED BLOCK {{{ +%# +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC +%# <sales@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 }}} +<& /Elements/Header, Title => $title &> +<& /Elements/Tabs &> +<& /Admin/Elements/EditCustomFields, %ARGS, title => $title, Object => $Object, ObjectType => 'RT::Class', SubType => 'RT::Article' &> +<%INIT> +my $Object = RT::Class->new( $session{'CurrentUser'} ); + +$Object->Load($id) || Abort( loc( "Couldn't load object [_1]", $id ) ); +my $FriendlySubTypes = + RT::CustomField->new( $session{'CurrentUser'} ) + ->FriendlyLookupType( $Object->CustomFieldLookupType ); + +my $title = loc( 'Edit Custom Fields for [_1]', $Object->Name ); + +</%INIT> +<%ARGS> +$id => undef +</%ARGS> diff --git a/rt/share/html/Admin/Articles/Classes/GroupRights.html b/rt/share/html/Admin/Articles/Classes/GroupRights.html new file mode 100644 index 000000000..092ea4b23 --- /dev/null +++ b/rt/share/html/Admin/Articles/Classes/GroupRights.html @@ -0,0 +1,73 @@ +%# BEGIN BPS TAGGED BLOCK {{{ +%# +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC +%# <sales@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 }}} +<& /Admin/Elements/Header, Title => loc('Modify group rights for Class [_1]', $ClassObj->Name) &> +<& /Elements/Tabs &> +<& /Elements/ListActions, actions => \@results &> + +<form method="post" action="GroupRights.html" id="ModifyGroupRights" name="ModifyGroupRights"> +<input type="hidden" name="id" value="<% $ClassObj->id %>" /> + + <& /Admin/Elements/EditRights, Context => $ClassObj, Principals => \@principals &> + + <& /Elements/Submit, Label => loc('Save Changes') &> +</form> +<%INIT> + +if (!defined $id) { + $m->comp("/Elements/Error", Why => loc("No Class defined")); +} + +my $ClassObj = RT::Class->new($session{'CurrentUser'}); +$ClassObj->Load($id) || $m->comp("/Elements/Error", Why => loc("Couldn't load Class [_1]",$id)); + +my @results = ProcessACLs(\%ARGS); +my @principals = GetPrincipalsMap($ClassObj, qw(System Groups)); +</%INIT> +<%ARGS> +$id => undef +</%ARGS> diff --git a/rt/share/html/Admin/Articles/Classes/Modify.html b/rt/share/html/Admin/Articles/Classes/Modify.html new file mode 100644 index 000000000..8dbd2897d --- /dev/null +++ b/rt/share/html/Admin/Articles/Classes/Modify.html @@ -0,0 +1,199 @@ +%# BEGIN BPS TAGGED BLOCK {{{ +%# +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC +%# <sales@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 }}} +<& /Admin/Elements/Header, Title => $title &> +<& /Elements/Tabs &> +<& /Elements/ListActions, actions => \@results &> + +<form name="ModifyClass" action="<% RT->Config->Get('WebPath') %>/Admin/Articles/Classes/Modify.html" method="post"> +<input type="hidden" name="Submitted" value="1" /> +%if ($Create ) { +<input type="hidden" name="id" value="new" /> +% } else { +<input type="hidden" name="id" value="<%$ClassObj->Id%>" /> +% } + +<table> +<tr> +<td align="right"><&|/l&>Class Name</&>: </td> +<td><input name="Name" value="<% $ClassObj->Name || $Name || ''%>" /></td> +</tr> +<tr> +<td align="right"><&|/l&>Description</&>:</td> +<td><input name="Description" value="<% $ClassObj->Description || $Description || '' %>" size=60 /></td> +</tr> +<tr> +<td> </td> +<td><input type="checkbox" name="Enabled" value="1" <%$EnabledChecked%>> <&|/l&>Enabled (Unchecking this box disables this class)</&></td> +</tr> +<tr> +<td> </td> +<td><input type="checkbox" name="HotList" value="1" <%$HotListChecked%>> <&|/l&>All Articles in this class should be listed in a dropdown of the ticket reply page</&></td> +</tr> +</table> + +<h3>When inserting articles in this class into emails:</h3> +<ul> +<li><input type="checkbox" name="Include-Name" value="1" <% $include{Name} %>> Include article name</li> +<li><input type="checkbox" name="Include-Summary" value="1" <% $include{Summary} %>> Include article summary</li> +% if ( $cfs ) { +% while (my $cf = $cfs->Next) { +<li>Include custom field '<% $cf->Name %>' + <ul> + <li><input type="checkbox" name="Include-CF-Title-<% $cf->Id %>" <% $include{"CF-Title-".$cf->Id} %> />Title</li> + <li><input type="checkbox" name="Include-CF-Value-<% $cf->Id %>" <% $include{"CF-Value-".$cf->Id} %> />Value</li> + </ul> +</li> +% } } +</ul> + +%$m->callback( CallbackName => 'BeforeSubmit', CustomFields => $cfs, ClassObj => $ClassObj ); + +% if ( $Create ) { +<& /Elements/Submit, Label => loc('Create') &> +% } else { +<& /Elements/Submit, Label => loc('Save Changes') &> +% } +</form> + +<%INIT> + +my $ClassObj = RT::Class->new($session{'CurrentUser'}); +my ($title, @results, $Disabled); + +if ($Create) { + $title = loc("Create a Class"); +} else { + my ( $val, $msg ); + if ($id eq 'new') { + ($val, $msg) = $ClassObj->Create(Name => $Name); + if ( $val ) { + push @results, $msg; + } + else { + push @results, loc('Class could not be created: [_1]', $msg); + } + } else { + $ClassObj->Load($id) || $ClassObj->Load($Name) || $m->comp("/Elements/Error", Why => "Couldn't load class '$Name'"); + $val = $ClassObj->id; + } + + if ( $val ) { + $title = loc('Modify the Class [_1]', $ClassObj->Name); + } + else { + $title = loc("Create a Class"); + $Create = 1; + } +} + +if ($ClassObj->Id()) { + $ARGS{HotList} ||= 0 if $Submitted; + my @attribs= qw(Description Name HotList); + $m->callback( CallbackName => 'AttributeList', Attributes => \@attribs, ARGSRef => \%ARGS ); + push @results, UpdateRecordObject( AttributesRef => \@attribs, + Object => $ClassObj, + ARGSRef => \%ARGS); +} + +#we're asking about enabled on the web page but really care about disabled. +if ((defined $Enabled && $Enabled == 1) or (not defined $Enabled and $Create)) { + $Disabled = 0; +} else { + $Disabled = 1; +} + +my %include = (Name => 1, Summary => 1); + +my $cfs; +if ( $ClassObj->id ) { + $cfs = $ClassObj->ArticleCustomFields; + $include{"CF-Title-".$_->Id} = $include{"CF-Value-".$_->Id} = 1 while $_ = $cfs->Next; +} + +if ( $ClassObj->id && $Submitted ) { + if ( $Disabled != $ClassObj->Disabled) { + my ($code, $msg) = $ClassObj->SetDisabled($Disabled); + push @results, loc('Enabled status [_1]', loc_fuzzy($msg)); + } + + for (keys %include) { + if ($ARGS{"Include-$_"}) { + $ClassObj->DeleteAttribute("Skip-$_"); + } else { + $ClassObj->SetAttribute(Name => "Skip-$_", Content => 1); + } + } +} + +# This code does automatic redirection if any updates happen. +MaybeRedirectForResults( + Actions => \@results, + Arguments => { id => $ClassObj->Id }, +) if $ClassObj->id; + + +if ( $ClassObj->id ) { + $include{$_} = not $ClassObj->FirstAttribute("Skip-$_") for keys %include; +} + +$include{$_} = $include{$_} ? " CHECKED" : "" for keys %include; + +my $EnabledChecked = ($Create ? $Disabled : $ClassObj->Disabled()) ? "" : "CHECKED"; +my $HotListChecked = $ClassObj->id && $ClassObj->HotList ? "CHECKED" : ""; +</%INIT> + + +<%ARGS> +$id => undef +$result => undef +$Name => undef +$Create => undef +$Description => undef +$Submitted => undef +$Enabled => undef +</%ARGS> diff --git a/rt/share/html/Admin/Articles/Classes/Objects.html b/rt/share/html/Admin/Articles/Classes/Objects.html new file mode 100644 index 000000000..f7be9f598 --- /dev/null +++ b/rt/share/html/Admin/Articles/Classes/Objects.html @@ -0,0 +1,154 @@ +%# BEGIN BPS TAGGED BLOCK {{{ +%# +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC +%# <sales@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 }}} +<& /Admin/Elements/Header, Title => $title &> +<& /Elements/Tabs &> +<& /Elements/ListActions, actions => \@results &> + +<form action="Objects.html" method="post"> +<input type="hidden" class="hidden" name="id" value="<% $id %>" /> + +% if ( $is_global ) { +<h2><&|/l&>Applies to all objects</&></h2> +<input type="checkbox" name="RemoveClass-<% $Class->id %>" value="0" /> +<&|/l&>check this box to remove this Class globally and be able to choose specific Queues.</&> +% } else { +<h2><&|/l&>Apply globally</&></h2> + +<input type="checkbox" name="AddClass-<% $Class->id %>" value="0" /> +<&|/l&>check this box to apply this Class globally to all Queues.</&> + +<h2><&|/l&>Selected Queues</&></h2> +<& /Elements/CollectionList, + OrderBy => 'id', + Order => 'ASC', + %ARGS, + Collection => $applied, + Rows => 0, + Page => 1, + Format => $format, + DisplayFormat => "'__CheckBox.{RemoveClass-". $Class->id ."}__',". $format, + AllowSorting => 0, + ShowEmpty => 0, + PassArguments => [ + qw(id Format Rows Page Order OrderBy), + ], +&> + +<h2><&|/l&>Unselected Queues</&></h2> +<& /Elements/CollectionList, + OrderBy => 'id', + Order => 'ASC', + %ARGS, + Collection => $not_applied, + Rows => 50, + Format => $format, + DisplayFormat => "'__CheckBox.{AddClass-". $Class->id ."}__',". $format, + AllowSorting => 1, + ShowEmpty => 0, + PassArguments => [ + qw(id Format Rows Page Order OrderBy), + ], +&> + +% } + +<& /Elements/Submit, Name => 'UpdateObjs' &> +</form> + +<%INIT> +my $Class = RT::Class->new($session{'CurrentUser'}); +$Class->Load($id) or Abort(loc("Could not load Class [_1]"), $id); + +my (@results); + +if ( $UpdateObjs ) { + if ( defined (my $del = $ARGS{'RemoveClass-'.$Class->id}) ) { + foreach my $id ( ref $del? (@$del) : ($del) ) { + my $object = RT::Queue->new( $session{'CurrentUser'} ); + if ( $id ) { + $object->Load( $id ); + next unless $object->id; + } + + my ($status, $msg) = $Class->RemoveFromObject( $object ); + push @results, $msg; + } + } + if ( defined (my $add = $ARGS{'AddClass-'.$Class->id}) ) { + foreach my $id ( ref $add? (@$add) : ($add) ) { + my $object = RT::Queue->new( $session{'CurrentUser'} ); + if ( $id ) { + $object->Load( $id ); + next unless $object->id; + } + + my ($status, $msg) = $Class->AddToObject( $object ); + push @results, $msg; + } + } +} + +my $is_global = $Class->IsApplied(0); + +my $applied = $Class->AppliedTo; +my $not_applied = $Class->NotAppliedTo; + +my $collection_class = ref($applied); +$collection_class =~ s/^RT:://; + +my $format = RT->Config->Get('AdminSearchResultFormat')->{$collection_class} + || '__id__,__Name__'; + +my $title = loc('Modify associated objects for [_1]', $Class->Name); + +</%INIT> +<%ARGS> +$id => undef +$FindDisabledObjects => 0 +$UpdateObjs => 0 +</%ARGS> diff --git a/rt/share/html/Admin/Articles/Classes/Topics.html b/rt/share/html/Admin/Articles/Classes/Topics.html new file mode 100644 index 000000000..5418d81a5 --- /dev/null +++ b/rt/share/html/Admin/Articles/Classes/Topics.html @@ -0,0 +1,68 @@ +%# BEGIN BPS TAGGED BLOCK {{{ +%# +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC +%# <sales@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 }}} +<& /Admin/Elements/Header, Title => $title &> +<& /Elements/Tabs &> + +<& /Admin/Articles/Elements/Topics, title => $title, RootObj => $ClassObj, %ARGS &> + +<%INIT> + +my $ClassObj = RT::Class->new($session{'CurrentUser'}); +$ClassObj->Load($ARGS{'id'}) || $m->comp("/Elements/Error", Why => "Couldn't load class '$id'"); + +my $title = $Modify + ? loc("Modify topic for [_1]", $ClassObj->Name) + : loc("Edit topic hierarchy for [_1]", $ClassObj->Name); + +</%INIT> + + +<%ARGS> +$id => undef +$Modify => "" +</%ARGS> diff --git a/rt/share/html/Admin/Articles/Classes/UserRights.html b/rt/share/html/Admin/Articles/Classes/UserRights.html new file mode 100644 index 000000000..c1aedeb33 --- /dev/null +++ b/rt/share/html/Admin/Articles/Classes/UserRights.html @@ -0,0 +1,72 @@ +%# BEGIN BPS TAGGED BLOCK {{{ +%# +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC +%# <sales@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 }}} +<& /Admin/Elements/Header, Title => loc('Modify user rights for class [_1]', $ClassObj->Name) &> +<& /Elements/Tabs &> +<& /Elements/ListActions, actions => \@results &> + +<form method="post" action="UserRights.html" name="ModifyUserRights" id="ModifyUserRights"> +<input type="hidden" name="id" value="<% $ClassObj->id %>" /> + <& /Admin/Elements/EditRights, Context => $ClassObj, Principals => \@principals &> + + <& /Elements/Submit, Label => loc('Save Changes') &> +<%INIT> +my @results = ProcessACLs(\%ARGS); + +if (!defined $id) { + $m->comp("/Elements/Error", Why => loc("No Class defined")); +} + +my $ClassObj = RT::Class->new($session{'CurrentUser'}); +$ClassObj->Load($id) || $m->comp("/Elements/Error", Why => loc("Couldn't load Class [_1]",$id)); + +my @principals = GetPrincipalsMap($ClassObj, 'Users'); + +</%INIT> +<%ARGS> +$id => undef +</%ARGS> diff --git a/rt/share/html/Admin/Articles/Classes/index.html b/rt/share/html/Admin/Articles/Classes/index.html new file mode 100644 index 000000000..8c32677c9 --- /dev/null +++ b/rt/share/html/Admin/Articles/Classes/index.html @@ -0,0 +1,91 @@ +%# BEGIN BPS TAGGED BLOCK {{{ +%# +%# COPYRIGHT: +%# +%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC +%# <sales@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 }}} +<& /Admin/Elements/Header, Title => loc("Select a Class") &> +<& /Elements/Tabs &> + +<h1><%$caption%>:</h1> +<p><&|/l&>Select a Class</&>:</p> +% unless ($Classes->Count) { +<em><&|/l&>No Classes matching search criteria found.</&></em> +% } else { +<& /Elements/CollectionList, + OrderBy => 'Name', + Order => 'ASC', + %ARGS, + Format => $Format, + Collection => $Classes, + AllowSorting => 1, + PassArguments => [qw( Format Rows Page Order OrderBy FindDisabledClasses )], +&> +% } + +<form method="post" action="<% RT->Config->Get('WebPath') %>/Admin/Articles/Classes/index.html"> +<input type="checkbox" name="FindDisabledClasses" value="1" /><&|/l&>Include disabled classes in listing.</&><br /> +<div align="right"><input type="submit" value="<&|/l&>Go!</&>" /></div> +</form> +<%INIT> +my $caption; +my $Classes = RT::Classes->new($session{'CurrentUser'}); + +if ($FindDisabledClasses) { + $caption = loc("All Classes"); + $Classes->{'find_disabled_rows'} = 1; + $Classes->UnLimit(); +} else { + $caption = loc("Enabled Classes"); + $Classes->LimitToEnabled(); + +} + +$Format ||= RT->Config->Get('AdminSearchResultFormat')->{'Classes'}; + +</%INIT> +<%ARGS> +$FindDisabledClasses => 0 +$Format => undef +</%ARGS> |