From 3b1fda960515886ee4306b94fc60ccad196f1358 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Tue, 23 Dec 2014 12:19:34 -0800 Subject: [PATCH] agent-virt outgoing message log, RT#32703 --- httemplate/search/cust_msg.html | 111 +++++++++++++++++++++------------------- 1 file changed, 59 insertions(+), 52 deletions(-) diff --git a/httemplate/search/cust_msg.html b/httemplate/search/cust_msg.html index 2b6f08e3f..486c7b09c 100644 --- a/httemplate/search/cust_msg.html +++ b/httemplate/search/cust_msg.html @@ -1,51 +1,51 @@ -<& 'elements/search.html', - 'title' => $title, - 'name_singular' => 'message', - 'query' => $query, - 'count_query' => $count_query, - 'header' => [ - 'Date', - 'Type', - 'Destination', - 'Status', - '', #error - ], - 'fields' => [ - sub { - my $date = $_[0]->_date; - $date ? time2str('%Y-%m-%d %T',$_[0]->_date) : '' - }, - sub { - ucfirst($_[0]->msgtype) || $_[0]->msgname - }, - sub { - join('
', split(/,\s*/, $_[0]->env_to) ) - }, - 'status', - sub { encode_entities($_[0]->error) }, - ], - 'sort_fields' => [ '_date', - 'msgtype', - 'env_to', - 'status', - 'error', - ], - 'align' => 'rllcl', - 'links' => [ ], +<& elements/search.html, + 'title' => $title, + 'name_singular' => 'message', + 'query' => $query, + 'count_query' => $count_query, + 'header' => [ + 'Date', + 'Type', + 'Destination', + 'Status', + '', #error + ], + 'fields' => [ + sub { + my $date = $_[0]->_date; + $date ? time2str('%Y-%m-%d %T',$_[0]->_date) : '' + }, + sub { + ucfirst($_[0]->msgtype) || $_[0]->msgname + }, + sub { + join('
', split(/,\s*/, $_[0]->env_to) ) + }, + 'status', + sub { encode_entities($_[0]->error) }, + ], + 'sort_fields' => [ '_date', + 'msgtype', + 'env_to', + 'status', + 'error', + ], + 'align' => 'rllcl', + 'links' => [], 'link_onclicks' => [ - $sub_popup_link, - $sub_popup_link, - $sub_popup_link, - '', - '', - ], - 'color' => [ '', - $typecolor, - '', - $statuscolor, - $statuscolor, - ], - 'html_init' => $html_init, + $sub_popup_link, + $sub_popup_link, + $sub_popup_link, + '', + '', + ], + 'color' => [ '', + $typecolor, + '', + $statuscolor, + $statuscolor, + ], + 'html_init' => $html_init, 'really_disable_download' => 1, @_ &> @@ -58,7 +58,12 @@ my $conf = new FS::Conf; my $title = 'Outgoing Message Log'; -my @where; +#here is the agent virtualization +my $agentnums_sql = + $FS::CurrentUser::CurrentUser->agentnums_sql( 'table' => 'cust_main' ); + +my @where = ( $agentnums_sql ); + if ( $cgi->param('status') =~ /^(\w+)$/ ) { push @where, "status = '$1'"; } @@ -76,20 +81,22 @@ if ( $cgi->param('order_by') =~ /^(\w+)$/ ) { $order_by = $1; } -my $where = ''; -$where = ' WHERE '.join(' AND ', @where) if @where; +my $where = ' WHERE '. join(' AND ', @where); + +my $join_cust_main = ' LEFT JOIN cust_main USING ( custnum ) '; + my $query = { 'table' => 'cust_msg', 'select' => join(', ', 'cust_msg.*', 'msg_template.msgname', ), - 'addl_from' => ' LEFT JOIN msg_template USING ( msgnum )', + 'addl_from' => ' LEFT JOIN msg_template USING ( msgnum ) '. $join_cust_main, 'hashref' => {}, 'extra_sql' => $where, 'order_by' => "ORDER BY $order_by", }; -my $count_query = 'SELECT COUNT(*) FROM cust_msg'.$where; +my $count_query = "SELECT COUNT(*) FROM cust_msg $join_cust_main $where"; my $sub_popup_link = sub { my $custmsgnum = $_[0]->custmsgnum; -- 2.11.0