X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS%2FFS%2Fphone_device.pm;h=2afad91e639ebaf7cbdb50fdb42e8f96ac4d4667;hp=d5f80a2c531db3873080cd6c046c22c88aa1126d;hb=02d73ef84103d6bdaf49e6a179a0ad46f9719d25;hpb=32072dbf59a054529f5304574c0f56f9567d14d0 diff --git a/FS/FS/phone_device.pm b/FS/FS/phone_device.pm index d5f80a2c5..2afad91e6 100644 --- a/FS/FS/phone_device.pm +++ b/FS/FS/phone_device.pm @@ -1,5 +1,5 @@ package FS::phone_device; -use base qw( FS::Record ); +use base qw( FS::MAC_Mixin FS::Record ); use strict; use Scalar::Util qw( blessed ); @@ -90,12 +90,12 @@ sub insert { my $dbh = dbh; my $error = $self->SUPER::insert; + $error ||= $self->export('device_insert'); if ( $error ) { $dbh->rollback if $oldAutoCommit; return $error; } - $self->export('device_insert'); $dbh->commit or die $dbh->errstr if $oldAutoCommit; ''; @@ -122,9 +122,8 @@ sub delete { local $FS::UID::AutoCommit = 0; my $dbh = dbh; - $self->export('device_delete'); - my $error = $self->SUPER::delete; + my $error = $self->export('device_delete') || $self->SUPER::delete; if ( $error ) { $dbh->rollback if $oldAutoCommit; return $error; @@ -159,13 +158,13 @@ sub replace { local $FS::UID::AutoCommit = 0; my $dbh = dbh; - my $error = $new->SUPER::replace($old); + my $error = $new->SUPER::replace($old) + || $new->export('device_replace', $old); if ( $error ) { $dbh->rollback if $oldAutoCommit; return $error; } - $new->export('device_replace', $old); $dbh->commit or die $dbh->errstr if $oldAutoCommit; '';