[freeside-commits] freeside/httemplate/search/elements cust_main_dayranges.html, 1.3, 1.4 search-html.html, 1.5, 1.6 search.html, 1.46, 1.47

Mark Wells mark at wavetail.420.am
Wed Mar 31 21:43:57 PDT 2010


Update of /home/cvs/cvsroot/freeside/httemplate/search/elements
In directory wavetail.420.am:/tmp/cvs-serv20112/httemplate/search/elements

Modified Files:
	cust_main_dayranges.html search-html.html search.html 
Log Message:
RT#866: links to process payments from aging report

Index: search.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/search/elements/search.html,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -w -d -r1.46 -r1.47
--- search.html	25 Aug 2009 19:08:19 -0000	1.46
+++ search.html	1 Apr 2010 04:43:55 -0000	1.47
@@ -194,6 +194,9 @@
 
 my $curuser = $FS::CurrentUser::CurrentUser;
 
+my $type = $cgi->param('_type') =~ /^(csv|\w*\.xls|select|html(-print)?)$/
+           ? $1 : 'html' ;
+
 my %align = (
   'l' => 'left',
   'r' => 'right',
@@ -204,6 +207,22 @@
 $opt{align} = [ map $align{$_}, split(//, $opt{align}) ],
   unless !$opt{align} || ref($opt{align});
 
+if($type =~ /csv|xls/) {
+  my $h = $opt{'header'};
+  my @del;
+  my $i = 0;
+  do {
+    if( ref($h->[$i]) and exists($h->[$i]->{'nodownload'}) ) {
+      splice(@{$opt{$_}}, $i, 1) foreach
+        qw(header footer fields links link_onclicks
+           align color size style cell_style xls_format);
+    }
+    else {
+      $i++;
+    }
+  } while ( exists($h->[$i]) );
+}
+
 $opt{disable_download} = 0
   if $opt{disable_download} && $curuser->access_right('Configuration download');
 
@@ -291,25 +310,22 @@
   if ( $cgi->param('showdisabled') ) {
     $cgi->param('showdisabled', 0);
     $opt{'html_posttotal'} .=
-      '( <a href="'. $cgi->self_url. qq!">hide disabled $items</a> )!;
+      '( <a href="'. $cgi->self_url. qq!">hide disabled $items</a> )!; #"
     $cgi->param('showdisabled', 1);
   } else {
     $cgi->param('showdisabled', 1);
     $opt{'html_posttotal'} .=
-      '( <a href="'. $cgi->self_url. qq!">show disabled $items</a> )!;
+      '( <a href="'. $cgi->self_url. qq!">show disabled $items</a> )!; #"
     $cgi->param('showdisabled', 0);
   }
 
 }
 
-my $type = $cgi->param('_type') =~ /^(csv|\w*\.xls|select|html(-print)?)$/
-           ? $1 : 'html';
-
 my $limit = '';
 my($confmax, $maxrecords, $offset );
 
-unless ( $type =~ /^(csv|\w*\.xls)$/ ) {
-
+if ( !$type =~ /^(csv|\w*.xls)$/) {
+# html mode
   unless (exists($opt{count_query}) && length($opt{count_query})) {
     ( $opt{count_query} = $opt{query} ) =~
       s/^\s*SELECT\s*(.*?)\s+FROM\s/SELECT COUNT(*) FROM /i; #silly vim:/

Index: cust_main_dayranges.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/search/elements/cust_main_dayranges.html,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -w -d -r1.3 -r1.4
--- cust_main_dayranges.html	31 Mar 2010 07:41:29 -0000	1.3
+++ cust_main_dayranges.html	1 Apr 2010 04:43:55 -0000	1.4
@@ -20,6 +20,7 @@
                  'count_query' => $count_sql,
                  'header'      => [
                                     FS::UI::Web::cust_header(),
+                                    @pay_head,
                                     '0-30',
                                     '30-60',
                                     '60-90',
@@ -31,8 +32,9 @@
                                     ( map '',
                                           ( 1 .. 
                                             scalar(FS::UI::Web::cust_header()-1)
-                                          )
+                                          ), @pay_labels
                                     ),
+                                    
                                     sprintf( $money_char.'%.2f',
                                              $row->{'rangecol_0_30'} ),
                                     sprintf( $money_char.'%.2f',
@@ -45,7 +47,8 @@
                                              $row->{'rangecol_0_0'} ),
                                   ],
                  'fields'      => [
-                                    \&FS::UI::Web::cust_fields,
+                                    FS::UI::Web::cust_fields_subs(),
+                                    @pay_labels,
                                     format_rangecol('0_30'),
                                     format_rangecol('30_60'),
                                     format_rangecol('60_90'),
@@ -56,6 +59,7 @@
                                     ( map { $_ ne 'Cust. Status' ? $clink : '' }
                                           FS::UI::Web::cust_header()
                                     ),
+                                    @pay_links,
                                     '',
                                     '',
                                     '',
@@ -67,13 +71,17 @@
                  #'size'        => [ '', '', '-1', '-1', '', '', '', '',  '', ],
                  #'style'       => [ '', '',  'b',  'b', '', '', '', '', 'b', ],
                  'size'        => [ ( map '', FS::UI::Web::cust_header() ),
+                                    ( map '', @pay_labels ),
                                     #'-1', '', '', '', '',  '', ],
-                                    '', '', '', '',  '', ],
+                                    '', '', '', '', '',  '', ],
                  'style'       => [ FS::UI::Web::cust_styles(),
+                                    ( map '', @pay_labels ),
                                     #'b', '', '', '', '', 'b', ],
                                     '', '', '', '', 'b', ],
                  'color'       => [
                                     FS::UI::Web::cust_colors(),
+                                    ( map '', @pay_labels ),
+                                    '',
                                     '',
                                     '',
                                     '',
@@ -166,6 +174,7 @@
                    $range_cols,
                    $packages_cols,
                    FS::UI::Web::cust_sql_fields(),
+                   'payby',
                  ),
   'extra_sql' => $where,
   'order_by'  => "order by coalesce(lower(company), ''), lower(last)",
@@ -182,10 +191,25 @@
 
 my $clink = [ "${p}view/cust_main.cgi?", 'custnum' ];
 
+my (@pay_head, @pay_labels, @pay_links);
+
+if($opt{'payment_links'} && $curuser->access_right('Process payment')) {
+  @pay_head = ({ label => 'Process', nodownload => 1, colspan => 2 },
+                { nodownload => 1 });
+
+  @pay_labels = (map { my ($payby,$label) = @$_; 
+                        sub {($payby eq $_[0]->payby) ? "<b>$label</b>" : $label}
+                     } ([CARD => 'Card'], [CHEK => 'ACH']) );
+
+  @pay_links = (map { [ "${p}misc/payment.cgi?payby=$_;custnum=", 'custnum' ] }
+                         'CARD', 'CHEK' );
+}
+
 </%init>
 <%once>
 
 my $conf = new FS::Conf;
+my $curuser = $FS::CurrentUser::CurrentUser;
 
 my $money_char = $conf->config('money_char') || '$';
 

Index: search-html.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/search/elements/search-html.html,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -w -d -r1.5 -r1.6
--- search-html.html	2 Mar 2010 17:18:31 -0000	1.5
+++ search-html.html	1 Apr 2010 04:43:55 -0000	1.6
@@ -177,8 +177,13 @@
 
                 <TR>
 %                 my $h2 = 0;
+%                 my $colspan = 0;
 %                 foreach my $header ( @{ $opt{header} } ) { 
+%                   $colspan-- if $colspan > 0;
+%                   next if $colspan;
+%
 %                   my $label = ref($header) ? $header->{label} : $header;
+%                   $colspan = ref($header) ? $header->{colspan} : 0;
 %                   my $rowspan = 1;
 %                   my $style = '';
 %                   if ( $opt{header2} ) {
@@ -193,6 +198,7 @@
                     <TH CLASS   = "grid"
                         BGCOLOR = "#cccccc"
                         ROWSPAN = "<% $rowspan %>"
+                        <% $colspan ? 'COLSPAN = "'.$colspan.'"' : '' %>
                         <% $style %>
 
                     >



More information about the freeside-commits mailing list