RT# 83203 - made Tower/Sector, speed_up, speed_down required
authorChristopher Burger <burgerc@freeside.biz>
Wed, 24 Apr 2019 14:26:01 +0000 (10:26 -0400)
committerChristopher Burger <burgerc@freeside.biz>
Wed, 24 Apr 2019 14:49:28 +0000 (10:49 -0400)
FS/FS/part_export/saisei.pm
FS/FS/part_svc.pm

index 61aa12d..9646879 100644 (file)
@@ -880,6 +880,11 @@ sub require_tower_and_sector {
   1;
 }
 
+sub required_fields {
+  my @fields = ('svc_broadband__ip_addr_required', 'svc_broadband__speed_up_required', 'svc_broadband__speed_down_required', 'svc_broadband__sectornum_required');
+  return @fields;
+}
+
 sub process_virtual_ap {
   my ($self, $opt) = @_;
 
index a565ee4..d68a461 100644 (file)
@@ -903,6 +903,18 @@ sub process {
       $exportnums{$exportnum} = $role;
     }
   }
+
+  ## make sure export required fields are marked required.
+  my @required_fields;
+  foreach (keys %exportnums) {
+    my $export = qsearchs('part_export', { 'exportnum' => $_ })
+      if $exportnums{$_};
+    if ($export) {
+      push @required_fields, $export->required_fields if $export->can('required_fields');
+    }
+  }
+  foreach (@required_fields) { $new->set($_, 'Y'); }
+
   my $error;
   if ( $param->{'svcpart'} ) {
     $error = $new->replace( $old,