X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_main.pm;h=bb3dcdb37a1fa0dc7cb08f343a9ce0bde94b5127;hb=6f7d4483b99c758e112cbe5a3a6a34617f80fce7;hp=9030f7ed3b59614eaf85c437660e357c371e76eb;hpb=a8336c295da4207b7d5a6f0ae594200b0f5cda01;p=freeside.git diff --git a/FS/FS/cust_main.pm b/FS/FS/cust_main.pm index 9030f7ed3..bb3dcdb37 100644 --- a/FS/FS/cust_main.pm +++ b/FS/FS/cust_main.pm @@ -350,7 +350,8 @@ sub insert { $error = $self->check_invoicing_list( $invoicing_list ); if ( $error ) { $dbh->rollback if $oldAutoCommit; - return "checking invoicing_list (transaction rolled back): $error"; + #return "checking invoicing_list (transaction rolled back): $error"; + return $error; } $self->invoicing_list( $invoicing_list ); } @@ -1274,6 +1275,21 @@ sub check { ; return $error if $error; + if ( $conf->exists('cust_main-require_phone') + && ! length($self->daytime) && ! length($self->night) + ) { + + my $daytime_label = FS::Msgcat::_gettext('daytime') =~ /^(daytime)?$/ + ? 'Day Phone' + : FS::Msgcat::_gettext('daytime'); + my $night_label = FS::Msgcat::_gettext('night') =~ /^(night)?$/ + ? 'Night Phone' + : FS::Msgcat::_gettext('night'); + + return "$daytime_label or $night_label is required" + + } + my @addfields = qw( last first company address1 address2 city county state zip country daytime night fax @@ -4131,7 +4147,8 @@ is an error, returns the error, otherwise returns false. sub check_invoicing_list { my( $self, $arrayref ) = @_; - foreach my $address ( @{$arrayref} ) { + + foreach my $address ( @$arrayref ) { if ($address eq 'FAX' and $self->getfield('fax') eq '') { return 'Can\'t add FAX invoice destination with a blank FAX number.'; @@ -4146,7 +4163,13 @@ sub check_invoicing_list { : $cust_main_invoice->checkdest ; return $error if $error; + } + + return "Email address required" + if $conf->exists('cust_main-require_invoicing_list_email') + && ! grep { $_ !~ /^([A-Z]+)$/ } @$arrayref; + ''; }