From 5376c66e2e5c1849763777f9d44ad013405c1d9e Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Fri, 10 Jul 2015 21:42:43 -0700 Subject: [PATCH] include agent and restore cust-level status in small_custview --- FS/FS/UI/Web/small_custview.pm | 6 +++++- FS/FS/access_user.pm | 16 ++++++++++++++++ httemplate/elements/header.html | 34 ++++++++++++++++++++-------------- httemplate/view/cust_main.cgi | 9 +++------ 4 files changed, 44 insertions(+), 21 deletions(-) diff --git a/FS/FS/UI/Web/small_custview.pm b/FS/FS/UI/Web/small_custview.pm index a1173f7da..e82e3326f 100644 --- a/FS/FS/UI/Web/small_custview.pm +++ b/FS/FS/UI/Web/small_custview.pm @@ -95,8 +95,12 @@ sub small_custview { $html = qq!' if $url; + if ( $FS::CurrentUser::CurrentUser->num_agents ) { + $html .= encode_entities($cust_main->agent->agent). ' '; + } + $html .= 'Customer #'. $cust_main->display_custnum. - ': '. encode_entities($cust_main->name). ''; + ': '. encode_entities($cust_main->name). ''. ' - '. $cust_main->status_label. ''; diff --git a/FS/FS/access_user.pm b/FS/FS/access_user.pm index 68d2deaba..a3f55bc76 100644 --- a/FS/FS/access_user.pm +++ b/FS/FS/access_user.pm @@ -283,6 +283,22 @@ sub report_sales { Returns links to the the groups this user is a part of, as FS::access_usergroup objects (see L). +=item num_agents + +Returns the number of agents this user can view (via group membership). + +=cut + +sub num_agents { + my $self = shift; + $self->scalar_sql( + 'SELECT COUNT(DISTINCT agentnum) FROM access_usergroup + JOIN access_groupagent USING ( groupnum ) + WHERE usernum = ?', + $self->usernum, + ); +} + =item agentnums Returns a list of agentnums this user can view (via group membership). diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 0174e1f92..98a8d7c5e 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -4,11 +4,12 @@ Example: <& /elements/header.html', { - 'title' => 'Title', - 'menubar' => \@menubar, - 'etc' => '', #included in tag, for things like onLoad= - 'head' => '', #included before closing tag - 'nobr' => 0, #1 for no

after the title + 'title' => 'Title', + 'menubar' => \@menubar, + 'etc' => '', #included in tag, for things like onLoad= + 'head' => '', #included before closing tag + 'nobr' => 0, #1 for no

after the title + 'no_jquery' => #for use from RT, which loads its own } &> @@ -23,7 +24,7 @@ Example: - <% $title_noescape || encode_entities($title) %> + <% encode_entities($title) || $title_noescape %> @@ -42,7 +43,11 @@ Example: ) |n %> - +% unless ( $no_jquery ) { + + + +% } <% include('init_overlib.html') |n %> <% include('rs_init_object.html') |n %> @@ -176,7 +181,7 @@ Example: <%init> my( $title, $title_noescape, $menubar, $etc, $head ) = ( '', '', '', '', '' ); -my( $nobr, $nocss ) = ( 0, 0 ); +my( $nobr, $nocss, $no_jquery ) = ( 0, 0, 0 ); my $mobile; @@ -184,12 +189,13 @@ if ( ref($_[0]) ) { my $opt = shift; $title = $opt->{title}; $title_noescape = $opt->{title_noescape}; - $menubar = $opt->{menubar}; - $etc = $opt->{etc}; - $head = $opt->{head}; - $nobr = $opt->{nobr}; - $nocss = $opt->{nocss}; - $mobile = $opt->{mobile}; + $menubar = $opt->{menubar}; + $etc = $opt->{etc}; + $head = $opt->{head}; + $nobr = $opt->{nobr}; + $nocss = $opt->{nocss}; + $mobile = $opt->{mobile}; + $no_jquery = $opt->{no_jquery}; } else { ($title, $menubar) = ( shift, shift ); $etc = @_ ? shift : ''; #$etc is for things like onLoad= etc. diff --git a/httemplate/view/cust_main.cgi b/httemplate/view/cust_main.cgi index 233c496ac..95cb5da7c 100755 --- a/httemplate/view/cust_main.cgi +++ b/httemplate/view/cust_main.cgi @@ -220,13 +220,10 @@ my $cust_main = qsearchs( { }); die "Customer not found!" unless $cust_main; -my $title = encode_entities($cust_main->name); -$title = '#'. $cust_main->display_custnum. " $title"; -# if $conf->exists('cust_main-title-display_custnum'); -$title = mt("Customer")." ".$title; +my $title = mt("Customer").' #'. $cust_main->display_custnum. ': '. + encode_entities($cust_main->name); -my @agentnums = $curuser->agentnums; -if (scalar(@agentnums) > 1 ) { +if ( $curuser->num_agents ) { $title = encode_entities($cust_main->agent->agent). " $title"; } -- 2.11.0