<& /Admin/Elements/Header, Title => loc("Admin FormTools") &> <& /Elements/Tabs &> <& /Elements/ListActions, actions => \@results &> <&| /Widgets/TitleBox, title => '', class => 'container formtools-admin-select' &>
% my $i = 0; % for my $form_ref ( @forms ) { % ++$i; % }
<&|/l&>Name <&|/l&>Creates Tickets in Queue <&|/l&>Enabled
<% $form_ref->{'name'} %> <% $form_ref->{'queue_name'} %>
{disabled} ? '' : 'checked="checked"' %> />
/>
<%init> my @results; my $forms = RT::Attributes->new( $session{'CurrentUser'} ); $forms->Limit( FIELD => 'Name', VALUE => 'FormTools Form' ); my @unsorted_forms; if ( $Submit ) { while ( my $form = $forms->Next ) { my $id = $form->Id; my $content = $form->Content; my $name = $form->Description; my $changed; if ( $ARGS{"enable-form-$id"} ) { if ( $content->{disabled} ) { $content->{disabled} = 0; $changed = 1; } } else { if ( !$content->{disabled} ) { $content->{disabled} = 1; $changed = 1; } } if ( $changed ) { my ( $ret, $msg ) = $form->SetContent($content); if ($ret) { if ( $content->{disabled} ) { push @results, loc('Disabled [_1]', $name); } else { push @results, loc('Enabled [_1]', $name); } } else { if ( $content->{disabled} ) { push @results, loc( "Couldn't disable [_1]: [_2]", $name, $msg ); } else { push @results, loc( "Couldn't enable [_1]: [_2]", $name, $msg ); } } } } } if ( @results ) { MaybeRedirectForResults( Actions => \@results, Path => '/Admin/FormTools/index.html', Arguments => { FindDisabledForms => $FindDisabledForms }, ); } while ( my $form = $forms->Next ) { my $form_ref = $form->Content; next if !$FindDisabledForms && $form_ref->{disabled}; $form_ref->{'name'} = $form->Description; $form_ref->{'id'} = $form->Id; my $queue = RT::Queue->new( $session{'CurrentUser'} ); my ($ok, $msg) = $queue->Load($form_ref->{'queue'}); if ( $ok ) { $form_ref->{'queue_name'} = $queue->Name; } else { RT->Logger->error("FormTools unable to load queue " . $form_ref->{'queue'} . " $msg"); } push @unsorted_forms, $form_ref; } my @forms = sort { $a->{'name'} cmp $b->{'name'} } @unsorted_forms; $m->callback( CallbackName => 'Initial', FormsRef => \@forms, ARGSRef => \%ARGS ); <%args> $Submit => undef $FindDisabledForms => undef