summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
authorivan <ivan>2004-09-04 10:02:51 +0000
committerivan <ivan>2004-09-04 10:02:51 +0000
commit47d18732ecb7f43fbed2c8f94226c509fe887a53 (patch)
tree670587aba588e7f642ff83365d12b4f40aa230f2 /FS
parent4f9e876b1e2549e09bafc85289951bbb973194aa (diff)
first try at duplicate checking on new export associations
Diffstat (limited to 'FS')
-rw-r--r--FS/FS/export_svc.pm20
1 files changed, 15 insertions, 5 deletions
diff --git a/FS/FS/export_svc.pm b/FS/FS/export_svc.pm
index 9a7178e6e..f610b3c79 100644
--- a/FS/FS/export_svc.pm
+++ b/FS/FS/export_svc.pm
@@ -86,6 +86,13 @@ sub insert {
return $error if $error;
#check for duplicates!
+#TODO:
+#- XXX here
+#
+#- have edit/process/part_svc.cgi redirect with error back to
+#edit/part_svc.cgi rather than eidiot out
+#
+#- rewrite in SQL for efficiency
my $label = '';
my $method = '';
@@ -105,11 +112,14 @@ sub insert {
warn "WARNING: XXX fill in this warning";
}
+ #warn "$method\n";
if ( $method ) {
my @current_svc = $self->part_export->svc_x;
+ #warn "current: ". scalar(@current_svc). " $current_svc[0]\n";
my @new_svc = $self->part_svc->svc_x;
+ #warn "new: ". scalar(@new_svc). " $new_svc[0]\n";
my %cur_svc = map { $_->$method() => 1 } @current_svc;
- my @dup_svc = grep { $cur_svc{$_->method()} } @new_svc;
+ my @dup_svc = grep { $cur_svc{$_->$method()} } @new_svc;
if ( @dup_svc ) { #aye, that's the rub
#error out for now, eventually accept different options of adjustments
@@ -117,10 +127,10 @@ sub insert {
$dbh->rollback if $oldAutoCommit;
return "Can't export ".
$self->part_svc->svcpart.':'.$self->part_svc->svc. " service to ".
- $self->part_export->exportnum.':'.$self->exporttype.
- ' on '. $self->machine.
- " : Duplicate $label: ".
- join(', ', sort map { $_->method() } @dup_svc );
+ $self->part_export->exportnum.':'.$self->part_export->exporttype.
+ ' on '. $self->part_export->machine.
+ ' : '. scalar(@dup_svc). " duplicate $label: ".
+ join(', ', sort map { $_->$method() } @dup_svc );
#XXX eventually a sort sub so usernames and domains are default alpha, username@domain is domain first then username, and uid is numeric
}
}