summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorivan <ivan>2006-09-06 01:07:24 +0000
committerivan <ivan>2006-09-06 01:07:24 +0000
commit2bd722cd60781c197fb5d98dcbb0f5f630bb2a12 (patch)
treec2877da1e5cfd705c932b3e2462c1626fe5986cc
parentb909853bba2a0fc305a9c986b81dbd4eb53c13d8 (diff)
less cut and paste
-rw-r--r--FS/FS/ClientAPI/Signup.pm23
1 files changed, 11 insertions, 12 deletions
diff --git a/FS/FS/ClientAPI/Signup.pm b/FS/FS/ClientAPI/Signup.pm
index 7589f16fc..b1cc3f08e 100644
--- a/FS/FS/ClientAPI/Signup.pm
+++ b/FS/FS/ClientAPI/Signup.pm
@@ -83,22 +83,21 @@ sub signup_info {
'countrydefault' => $conf->config('countrydefault') || 'US',
'refnum' => $conf->config('signup_server-default_refnum'),
- };
-
+ };
- if ($conf->exists('signup_server-classnum2') || $conf->exists('signup_server-classnum3')) {
- $signup_info->{optional_packages} = [];
+ my @addl = qw( signup_server-classnum2 signup_server-classnum3 );
- if (my $classnum = $conf->config('signup_server-classnum2')) {
- my @pkgs = map { $_->hashref } FS::Record::qsearch( 'part_pkg', { classnum => $classnum } );
- push @{$signup_info->{optional_packages}}, \@pkgs;
- }
+ if ( grep { $conf->exists($_) } @addl ) {
+
+ $signup_info->{optional_packages} = [];
- if (my $classnum = $conf->config('signup_server-classnum3')) {
- my @pkgs = map { $_->hashref } FS::Record::qsearch( 'part_pkg', { classnum => $classnum } );
- push @{$signup_info->{optional_packages}}, \@pkgs;
- }
+ foreach my $addl ( @addl ) {
+ my $classnum = $conf->config($addl) or next;
+ my @pkgs = map { $_->hashref }
+ qsearch( 'part_pkg', { classnum => $classnum } );
+ push @{$signup_info->{optional_packages}}, \@pkgs;
+ }
}