summaryrefslogtreecommitdiff
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
parentadfd95afc1d6f91b30711d24bdcbbe1f8dde3bad (diff)
show svc_hardware addresses as MAC addresses, #16266
-rw-r--r--FS/FS/svc_hardware.pm18
-rw-r--r--httemplate/search/svc_hardware.cgi2
-rw-r--r--httemplate/view/svc_hardware.cgi10
3 files changed, 19 insertions, 11 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
diff --git a/httemplate/search/svc_hardware.cgi b/httemplate/search/svc_hardware.cgi
index 7dd0058dc..ec09be82b 100644
--- a/httemplate/search/svc_hardware.cgi
+++ b/httemplate/search/svc_hardware.cgi
@@ -19,7 +19,7 @@
'model',
'revision',
'serial',
- 'hw_addr',
+ 'display_hw_addr',
'ip_addr',
'smartcard',
\&FS::UI::Web::cust_fields,
diff --git a/httemplate/view/svc_hardware.cgi b/httemplate/view/svc_hardware.cgi
index 725358cad..7f5e889d8 100644
--- a/httemplate/view/svc_hardware.cgi
+++ b/httemplate/view/svc_hardware.cgi
@@ -25,19 +25,11 @@ my $note = { field => 'note',
type => 'text',
value => sub { encode_entities($_[0]->note) }
};
-my $hw_addr ={ field => 'hw_addr',
- type => 'text',
- value => sub {
- my $hw_addr = $_[0]->hw_addr;
- $conf->exists('svc_hardware-check_mac_addr') ?
- join(':', $hw_addr =~ /../g) : $hw_addr
- },
- };
my @fields = (
$model,
'serial',
- $hw_addr,
+ 'display_hw_addr',
'ip_addr',
'smartcard',
$status,