diff options
Diffstat (limited to 'httemplate/browse/part_bill_event.cgi')
-rwxr-xr-x | httemplate/browse/part_bill_event.cgi | 133 |
1 files changed, 89 insertions, 44 deletions
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 @@ -<!-- mason kludge --> <% - 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.<BR><BR> + Invoice events are actions taken on open invoices.<BR><BR> + <A HREF="<%= $p %>edit/part_bill_event.cgi"><I>Add a new invoice event</I></A> <BR><BR> + <%= $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); '( <a href="'. $cgi->self_url. '">show disabled events</a> )'; } %> -<%= table() %> - <TR> - <TH COLSPAN=<%= $cgi->param('showdisabled') ? 2 : 3 %>>Event</TH> - <TH>Payby</TH> - <TH>After</TH> - <TH>Action</TH> - <TH>Options</TH> - <TH>Code</TH> - </TR> +<BR><BR> + +<% 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/<BR>/go; %> - <TR> - <TD><A HREF="<%= $url %>"> - <%= $part_bill_event->eventpart %></A></TD> -<% unless ( $cgi->param('showdisabled') ) { %> - <TD> - <%= $part_bill_event->disabled ? 'DISABLED' : '' %></TD> -<% } %> - <TD><A HREF="<%= $url %>"> - <%= $part_bill_event->event %></A></TD> - <TD> - <%= $part_bill_event->payby %></TD> - <TD> - <%= $delay %></TD> - <TD> - <%= $part_bill_event->plan %></TD> - <TD> - <%= $plandata %></TD> - <TD><FONT SIZE="-1"> - <%= $part_bill_event->eventcode %></FONT></TD> - </TR> + + <% 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/<BR>/go; + my $freq = $part_bill_event->freq || '1d'; + %> + + <% if ( $oldfreq ne $freq ) { %> + + <TR> + <TH CLASS="grid" BGCOLOR="#999999" COLSPAN=<%= $cgi->param('showdisabled') ? 7 : 8 %>><%= ucfirst($freq{$freq}) %> event tests for <FONT SIZE="+1"><I><%= $payby{$payby} %> customers</I></FONT></TH> + </TR> + + <TR> + <TH CLASS="grid" BGCOLOR="#cccccc" COLSPAN=<%= $cgi->param('showdisabled') ? 2 : 3 %>>Event</TH> + <TH CLASS="grid" BGCOLOR="#cccccc">After</TH> + <TH CLASS="grid" BGCOLOR="#cccccc">Action</TH> + <TH CLASS="grid" BGCOLOR="#cccccc">Options</TH> + <TH CLASS="grid" BGCOLOR="#cccccc">Code</TH> + </TR> + + <% + $oldfreq = $freq; + $bgcolor = ''; + %> + + <% } %> + + <% + if ( $bgcolor eq $bgcolor1 ) { + $bgcolor = $bgcolor2; + } else { + $bgcolor = $bgcolor1; + } + %> + + <TR> + <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><A HREF="<%= $url %>"> + <%= $part_bill_event->eventpart %></A></TD> + <% unless ( $cgi->param('showdisabled') ) { %> + <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"> + <%= $part_bill_event->disabled ? 'DISABLED' : '' %></TD> + <% } %> + <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><A HREF="<%= $url %>"> + <%= $part_bill_event->event %></A></TD> + <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"> + <%= $delay %></TD> + <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"> + <%= $part_bill_event->plan %></TD> + <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"> + <%= $plandata %></TD> + <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><FONT SIZE="-1"> + <%= $part_bill_event->eventcode %></FONT></TD> + </TR> + <% } %> + </TABLE> + <BR><BR> + + <% } %> + <% } %> -</TABLE> + </BODY> </HTML> |