summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
authorMark Wells <mark@freeside.biz>2012-03-22 12:45:24 -0700
committerMark Wells <mark@freeside.biz>2012-03-22 12:45:24 -0700
commit69bf020f03918910e0e34260d6e5a9d984f0414d (patch)
tree02682e3198cdaa7f09b828caa9ba87ae971b50fd /FS
parentadfd95afc1d6f91b30711d24bdcbbe1f8dde3bad (diff)
show svc_hardware addresses as MAC addresses, #16266
Diffstat (limited to 'FS')
-rw-r--r--FS/FS/svc_hardware.pm18
1 files changed, 17 insertions, 1 deletions
diff --git a/FS/FS/svc_hardware.pm b/FS/FS/svc_hardware.pm
index 22e627538..af6865f12 100644
--- a/FS/FS/svc_hardware.pm
+++ b/FS/FS/svc_hardware.pm
@@ -2,9 +2,13 @@ package FS::svc_hardware;
use strict;
use base qw( FS::svc_Common );
+use vars qw( $conf );
use FS::Record qw( qsearch qsearchs );
use FS::hardware_type;
use FS::hardware_status;
+use FS::Conf;
+
+FS::UID->install_callback(sub { $conf = FS::Conf->new; });
=head1 NAME
@@ -125,7 +129,7 @@ sub search_sql {
sub label {
my $self = shift;
- $self->serial || $self->hw_addr;
+ $self->serial || $self->display_hw_addr;
}
=item insert
@@ -213,6 +217,18 @@ sub status_label {
$status->label;
}
+=item display_hw_addr
+
+Returns the 'hw_addr' field, formatted as a MAC address if the
+'svc_hardware-check_mac_addr' option is enabled.
+
+=cut
+
+sub display_hw_addr {
+ my $self = shift;
+ ($conf->exists('svc_hardware-check_mac_addr') ?
+ join(':', $self->hw_addr =~ /../g) : $self->hw_addr)
+}
=back