<%doc>
-Display date selector for the future_autobill.html report
+Display pre-report page for the Future Auto Bill Transactions report
+
+Report runs in the queue. Once the report is generated, user is
+redirected to the report results.
</%doc>
<% include('/elements/header.html', $report_title ) %>
% } else {
- <FORM ACTION="future_autobill.html" METHOD="GET">
- <TABLE>
- <& /elements/tr-input-date-field.html,
- {
- name => 'target_date',
- value => $target_date,
- label => emt('Target billing date').': ',
- required => 1
- }
- &>
-
- </TABLE>
-
- <BR>
-
- <INPUT TYPE="submit" VALUE="<% mt('Get Report') |h %>">
-
+ <FORM NAME="future_autobill" ID="future_autobill">
+ <TABLE>
+ <& /elements/tr-input-date-field.html,
+ {
+ name => 'target_date',
+ value => $target_date,
+ label => emt('Target billing date').': ',
+ required => 1
+ }
+ &>
+
+ <% include('/elements/tr-select-agent.html',
+ 'label' => 'For agent: ',
+ 'disable_empty' => 0,
+ )
+ %>
+ </TABLE>
+ <BR>
+
+ <INPUT ID="future_autobill_submit" TYPE="submit" VALUE="<% mt('Get Report') |h %>">
</FORM>
+ <% include( '/elements/progress-init.html',
+ 'future_autobill',
+ [ qw( agentnum target_date ) ],
+ 'report_future_autobill-queued_job.html',
+ )
+ %>
+
+ <script type="text/javascript">
+ $('#future_autobill').submit( function( event ) {
+ $('#future_autobill').prop( 'disabled', true );
+ $('#future_autobill_submit').prop( 'disabled', true );
+ event.preventDefault();
+ process();
+ });
+ </script>
+
% }
<% include('/elements/footer.html') %>
<%init>
use FS::cust_payby;
+use FS::CurrentUser;
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');
my $target_date = DateTime->now->add(days => 1)->mdy('/');
-
-# Dynamic report title
-my $title_types = '';
-my $card_count = FS::cust_payby->count_autobill_cards;
-my $check_count = FS::cust_payby->count_autobill_checks;
-if ( $card_count && $check_count ) {
- $title_types = 'Card and Check';
-} elsif ( $card_count ) {
- $title_types = 'Card';
-} elsif ( $check_count ) {
- $title_types = 'Check';
-}
-
-my $report_title = sprintf(
- 'Upcoming Auto Bill %s Transactions',
- $title_types,
-);
+my $report_title = FS::cust_payby->future_autobill_report_title;
</%init>