From: ivan Date: Sun, 13 Mar 2011 03:49:25 +0000 (+0000) Subject: better error message for no location_kind X-Git-Tag: freeside_2_3_0~512 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=4fee4d1074c4a0844292c2204bc0a849f9bf119c better error message for no location_kind --- diff --git a/FS/FS/cust_location.pm b/FS/FS/cust_location.pm index 60c0181a3..7d0ce1c7b 100644 --- a/FS/FS/cust_location.pm +++ b/FS/FS/cust_location.pm @@ -5,6 +5,7 @@ use base qw( FS::geocode_Mixin FS::Record ); use Locale::Country; use FS::UID qw( dbh ); use FS::Record qw( qsearch ); #qsearchs ); +use FS::Conf; use FS::prospect_main; use FS::cust_main; use FS::cust_main_county; @@ -134,6 +135,9 @@ sub check { || $self->ut_textn('state') || $self->ut_country('country') || $self->ut_zip('zip', $self->country) + || $self->ut_alphan('location_type') + || $self->ut_textn('location_number') + || $self->ut_enum('location_kind', [ '', 'R', 'B' ] ) || $self->ut_alphan('geocode') ; return $error if $error; @@ -141,6 +145,12 @@ sub check { return "No prospect or customer!" unless $self->prospectnum || $self->custnum; return "Prospect and customer!" if $self->prospectnum && $self->custnum; + my $conf = new FS::Conf; + return 'Location kind is required' + if $self->prospectnum + && $conf->exists('prospect_main-alt_address_format') + && ! $self->location_kind; + unless ( qsearch('cust_main_county', { 'country' => $self->country, 'state' => '', diff --git a/FS/FS/part_export/ikano.pm b/FS/FS/part_export/ikano.pm index 63b0ed3cd..153b4a606 100644 --- a/FS/FS/part_export/ikano.pm +++ b/FS/FS/part_export/ikano.pm @@ -280,6 +280,8 @@ sub qual { my %location_hash = $qual->location_hash; return 'No address provided' unless keys %location_hash; + return 'Location kind is required' unless $location_hash{location_kind}; + my $svctn = $qual->phonenum; my $result = $self->ikano_command('PREQUAL',