deposit slips
[freeside.git] / httemplate / search / cust_msg.html
index 486c7b0..65460f7 100644 (file)
                               ucfirst($_[0]->msgtype) || $_[0]->msgname
                             },
                             sub {
-                              join('<BR>', split(/,\s*/, $_[0]->env_to) )
+                              join('<BR>',
+                                map { encode_entities($_->format) }
+                                Email::Address->parse($_[0]->env_to)
+                              )
                             },
                             'status',
                             sub { encode_entities($_[0]->error) },
@@ -47,7 +50,7 @@
                           ],
        'html_init'     => $html_init,
        'really_disable_download' => 1,
-       @_
+       'order_by'      => '_date DESC',
 &>
 <%init>
 #hmm...
@@ -59,8 +62,10 @@ my $conf = new FS::Conf;
 my $title = 'Outgoing Message Log';
 
 #here is the agent virtualization
-my $agentnums_sql =
-  $FS::CurrentUser::CurrentUser->agentnums_sql( 'table' => 'cust_main' );
+my $agentnums_sql = $FS::CurrentUser::CurrentUser->agentnums_sql(
+  'table' => 'cust_main',
+  'null_right' => [ 'View system logs', 'Configuration' ],
+);
 
 my @where = ( $agentnums_sql );
 
@@ -71,7 +76,7 @@ if ( $cgi->param('msgtype') =~ /^(\w+)$/ ) {
   push @where, "msgtype = '$1'";
 }
 if ( $cgi->param('custnum') =~ /^(\d+)$/ ) {
-  push @where, "custnum = $1";
+  push @where, "cust_msg.custnum = $1";
 }
 my ($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi, '');
 push @where, "(_date >= $beginning AND _date <= $ending)";
@@ -124,17 +129,17 @@ my $html_init = qq!<FORM ACTION="$p/search/cust_msg.html" METHOD="GET">
 <TABLE cellspacing="10">!.
 '<TR><TD>From '.
 include('/elements/input-date-field.html',
-  { 'name'  => 'beginning', 'value' => $cgi->param('beginning') }
+  { 'name'  => 'beginning', 'value' => scalar($cgi->param('beginning')) }
 ).
 '</TD><TD> To '.
 include('/elements/input-date-field.html',
-  { 'name'  => 'ending', 'value' => ($cgi->param('ending') || ''), 
+  { 'name'  => 'ending', 'value' => (scalar($cgi->param('ending')) || ''), 
     'noinit' => 1, }
 ).
 '</TD><TD> Status '.
 include('/elements/select.html',
   'field' => 'status',
-  'curr_value' => $cgi->param('status') || '',
+  'curr_value' => scalar($cgi->param('status')) || '',
   'options' => [ '', 'failed', 'sent', ],
   'labels' => { ''        => '(any)', 
                 'failed'  => 'failed',
@@ -143,12 +148,13 @@ include('/elements/select.html',
 '</TD><TD> Type '.
 include('/elements/select.html',
   'field' => 'msgtype',
-  'curr_value' => $cgi->param('msgtype') || '',
-  'options' => [ '', 'invoice', 'receipt', 'admin' ],
+  'curr_value' => scalar($cgi->param('msgtype')) || '',
+  'options' => [ '', 'invoice', 'receipt', 'admin', 'report' ],
   'labels'  => { ''         => '(any)',
                  'invoice'  => 'Invoices',
                  'receipt'  => 'Receipts',
                  'admin'    => 'Admin notices',
+                 'report'   => 'Reports',
                },
 ) .
 '</TD>