invoice_sections_with_taxes per-agent, RT#79636
[freeside.git] / httemplate / misc / queue.cgi
index 7370aab..5dee29b 100644 (file)
@@ -1,48 +1,49 @@
-%
-%
-%$cgi->param('action') =~ /^(new|del|(retry|remove) selected)$/
-%  or die "Illegal action";
-%my $action = $1;
-%
-%my $job;
-%if ( $action eq 'new' || $action eq 'del' ) {
-%  $cgi->param('jobnum') =~ /^(\d+)$/ or die "Illegal jobnum";
-%  my $jobnum = $1;
-%  $job = qsearchs('queue', { 'jobnum' => $1 })
-%    or die "unknown jobnum $jobnum - ".
-%           "it probably completed normally or was removed by another user";
-%}
-%
-%if ( $action eq 'new' ) {
-%  my %hash = $job->hash;
-%  $hash{'status'} = 'new';
-%  $hash{'statustext'} = '';
-%  my $new = new FS::queue \%hash;
-%  my $error = $new->replace($job);
-%  die $error if $error;
-%} elsif ( $action eq 'del' ) {
-%  my $error = $job->delete;
-%  die $error if $error;
-%} elsif ( $action =~ /^(retry|remove) selected$/ ) {
-%  foreach my $jobnum (
-%    map { /^jobnum(\d+)$/; $1; } grep /^jobnum\d+$/, $cgi->param
-%  ) {
-%    my $job = qsearchs('queue', { 'jobnum' => $jobnum });
-%    if ( $action eq 'retry selected' && $job ) { #new
-%      my %hash = $job->hash;
-%      $hash{'status'} = 'new';
-%      $hash{'statustext'} = '';
-%      my $new = new FS::queue \%hash;
-%      my $error = $new->replace($job);
-%      die $error if $error;
-%    } elsif ( $action eq 'remove selected' && $job ) { #del
-%      my $error = $job->delete;
-%      die $error if $error;
-%    }
-%  }
-%}
-%
-%print $cgi->redirect(popurl(2). "search/queue.html");
-%
-%
+<% $cgi->redirect(popurl(2). "search/queue.html") %>
+<%init>
 
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('Job queue');
+
+$cgi->param('action') =~ /^(new|del|(retry|remove) selected)$/
+  or die "Illegal action";
+my $action = $1;
+
+my $job;
+if ( $action eq 'new' || $action eq 'del' ) {
+  $cgi->param('jobnum') =~ /^(\d+)$/ or die "Illegal jobnum";
+  my $jobnum = $1;
+  $job = qsearchs('queue', { 'jobnum' => $1 })
+    or die "unknown jobnum $jobnum - ".
+           "it probably completed normally or was removed by another user";
+}
+
+if ( $action eq 'new' ) {
+  my %hash = $job->hash;
+  $hash{'status'} = 'new';
+  $hash{'statustext'} = '';
+  my $new = new FS::queue \%hash;
+  my $error = $new->replace($job);
+  die $error if $error;
+} elsif ( $action eq 'del' ) {
+  my $error = $job->delete;
+  die $error if $error;
+} elsif ( $action =~ /^(retry|remove) selected$/ ) {
+  foreach my $jobnum (
+    map { /^jobnum(\d+)$/; $1; } grep /^jobnum\d+$/, $cgi->param
+  ) {
+    my $job = qsearchs('queue', { 'jobnum' => $jobnum });
+    if ( $action eq 'retry selected' && $job ) { #new
+      my %hash = $job->hash;
+      $hash{'status'} = 'new';
+      $hash{'statustext'} = '';
+      my $new = new FS::queue \%hash;
+      my $error = $new->replace($job);
+      die $error if $error;
+    } elsif ( $action eq 'remove selected' && $job ) { #del
+      my $error = $job->delete;
+      die $error if $error;
+    }
+  }
+}
+
+</%init>