X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fbrowse%2Fpart_bill_event.cgi;h=0b6d0cb2b4f492f832b03f830f496aefcd3dfab4;hp=5a89516df4c00e70cc961440c28695bc305ccd22;hb=a5a4afbb77bbdffc25ae94d10b645b0bcc76e859;hpb=c1bb4ddb71147d0571bd301a6d8c452fdf0e1bc9 diff --git a/httemplate/browse/part_bill_event.cgi b/httemplate/browse/part_bill_event.cgi index 5a89516df..0b6d0cb2b 100755 --- a/httemplate/browse/part_bill_event.cgi +++ b/httemplate/browse/part_bill_event.cgi @@ -1,6 +1,4 @@ - <% - my %search; if ( $cgi->param('showdisabled') ) { %search = (); @@ -10,13 +8,15 @@ if ( $cgi->param('showdisabled') ) { my @part_bill_event = qsearch('part_bill_event', \%search ); my $total = scalar(@part_bill_event); - %> + <%= include("/elements/header.html",'Invoice Event Listing', menubar( 'Main Menu' => $p) ) %> - Invoice events are actions taken on overdue invoices.

+ Invoice events are actions taken on open invoices.

+ Add a new invoice event

+ <%= $total %> events <%= $cgi->param('showdisabled') ? do { $cgi->param('showdisabled', 0); @@ -24,48 +24,93 @@ my $total = scalar(@part_bill_event); : do { $cgi->param('showdisabled', 1); '( show disabled events )'; } %> -<%= table() %> - - param('showdisabled') ? 2 : 3 %>>Event - Payby - After - Action - Options - Code - +

+ +<% tie my %payby, 'Tie::IxHash', FS::payby->cust_payby2longname; + tie my %freq, 'Tie::IxHash', '1d' => 'daily', '1m' => 'monthly'; + foreach my $payby ( keys %payby ) { + my $oldfreq = ''; + + my @payby_part_bill_event = grep { $payby eq $_->payby } + sort { $a->seconds <=> $b->seconds + || $a->weight <=> $b->weight + || $a->eventpart <=> $b->eventpart + } + @part_bill_event; -<% foreach my $part_bill_event ( sort { $a->payby cmp $b->payby - || $a->seconds <=> $b->seconds - || $a->weight <=> $b->weight - || $a->eventpart <=> $b->eventpart - } @part_bill_event ) { - my $url = "${p}edit/part_bill_event.cgi?". $part_bill_event->eventpart; - use Time::Duration; - my $delay = duration_exact($part_bill_event->seconds); - my $plandata = $part_bill_event->plandata; - $plandata =~ s/\n/
/go; %> - - - <%= $part_bill_event->eventpart %> -<% unless ( $cgi->param('showdisabled') ) { %> - - <%= $part_bill_event->disabled ? 'DISABLED' : '' %> -<% } %> - - <%= $part_bill_event->event %> - - <%= $part_bill_event->payby %> - - <%= $delay %> - - <%= $part_bill_event->plan %> - - <%= $plandata %> - - <%= $part_bill_event->eventcode %> - + + <% if ( @payby_part_bill_event ) { %> + + <%= include('/elements/table-grid.html') %> + + <% my $bgcolor1 = '#eeeeee'; + my $bgcolor2 = '#ffffff'; + my $bgcolor; + %> + + <% + foreach my $part_bill_event ( @payby_part_bill_event ) { + my $url = "${p}edit/part_bill_event.cgi?". $part_bill_event->eventpart; + my $delay = duration_exact($part_bill_event->seconds); + ( my $plandata = $part_bill_event->plandata ) =~ s/\n/
/go; + my $freq = $part_bill_event->freq || '1d'; + %> + + <% if ( $oldfreq ne $freq ) { %> + + + param('showdisabled') ? 7 : 8 %>><%= ucfirst($freq{$freq}) %> event tests for <%= $payby{$payby} %> customers + + + + param('showdisabled') ? 2 : 3 %>>Event + After + Action + Options + Code + + + <% + $oldfreq = $freq; + $bgcolor = ''; + %> + + <% } %> + + <% + if ( $bgcolor eq $bgcolor1 ) { + $bgcolor = $bgcolor2; + } else { + $bgcolor = $bgcolor1; + } + %> + + + + <%= $part_bill_event->eventpart %> + <% unless ( $cgi->param('showdisabled') ) { %> + + <%= $part_bill_event->disabled ? 'DISABLED' : '' %> + <% } %> + + <%= $part_bill_event->event %> + + <%= $delay %> + + <%= $part_bill_event->plan %> + + <%= $plandata %> + + <%= $part_bill_event->eventcode %> + + <% } %> + +

+ + <% } %> + <% } %> - +