summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FS/FS/ClientAPI/MyAccount.pm10
-rw-r--r--FS/FS/Conf.pm7
2 files changed, 16 insertions, 1 deletions
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm
index 81bc7a59b..5b590da2b 100644
--- a/FS/FS/ClientAPI/MyAccount.pm
+++ b/FS/FS/ClientAPI/MyAccount.pm
@@ -2117,6 +2117,7 @@ sub list_cdr_usage {
sub _usage_details {
my($callback, $p, %opt) = @_;
+ my $conf = FS::Conf->new;
my($context, $session, $custnum) = _custoragent_session_custnum($p);
return { 'error' => $session } if $context eq 'error';
@@ -2135,7 +2136,6 @@ sub _usage_details {
my %callback_opt;
my $header = [];
if ( $svcdb eq 'svc_phone' ) {
- my $conf = FS::Conf->new;
my $format = '';
if ( $p->{inbound} ) {
$format = $cust_pkg->part_pkg->option('selfservice_inbound_format')
@@ -2169,6 +2169,14 @@ sub _usage_details {
%callback_opt
);
+ if ( $conf->exists('selfservice-hide_cdr_price') ) {
+ # ugly kludge, I know
+ my ($delete_col) = grep { $header->[$_] eq 'Price' } (0..scalar(@$header));
+ if (defined $delete_col) {
+ delete($_->[$delete_col]) foreach ($header, @usage);
+ }
+ }
+
#kinda false laziness with FS::cust_main::bill, but perhaps
#we should really change this bit to DateTime and DateTime::Duration
#
diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm
index 8eeec0beb..d9a13fe91 100644
--- a/FS/FS/Conf.pm
+++ b/FS/FS/Conf.pm
@@ -5589,6 +5589,13 @@ and customer address. Include units.',
},
{
+ 'key' => 'selfservice-hide_cdr_price',
+ 'section' => 'self-service',
+ 'description' => 'Don\'t show the "Price" column on CDRs in self-service.',
+ 'type' => 'checkbox',
+ },
+
+ {
'key' => 'logout-timeout',
'section' => 'UI',
'description' => 'If set, automatically log users out of the backoffice after this many minutes.',