diff options
author | khoff <khoff> | 2002-06-10 01:39:51 +0000 |
---|---|---|
committer | khoff <khoff> | 2002-06-10 01:39:51 +0000 |
commit | 3162b06a6d3be9ddf4daea2c29cd94516ac40f68 (patch) | |
tree | 5e7ef585bf458b26158cd9380fe07e18cdbcb940 /FS/FS | |
parent | 0e8861ca6b3b04b99ea9477e8c1555561b21c929 (diff) |
Rollback part_pkg.def_svcpart changes.
Diffstat (limited to 'FS/FS')
-rw-r--r-- | FS/FS/part_pkg.pm | 22 | ||||
-rw-r--r-- | FS/FS/pkg_svc.pm | 32 |
2 files changed, 5 insertions, 49 deletions
diff --git a/FS/FS/part_pkg.pm b/FS/FS/part_pkg.pm index 420ffcb..e914636 100644 --- a/FS/FS/part_pkg.pm +++ b/FS/FS/part_pkg.pm @@ -2,7 +2,7 @@ package FS::part_pkg; use strict; use vars qw( @ISA ); -use FS::Record qw( qsearch qsearchs dbh ); +use FS::Record qw( qsearch dbh ); use FS::pkg_svc; use FS::agent_type; use FS::type_pkgs; @@ -225,12 +225,6 @@ sub check { } - if ($self->def_svcpart and my @pkg_svc = $self->pkg_svc) { - unless (grep { $_->svcpart == $self->def_svcpart } @pkg_svc) { - return "no svcparts for this package match def_svcpart ".$self->def_svcpart; - } - } - $self->ut_numbern('pkgpart') || $self->ut_text('pkg') || $self->ut_text('comment') @@ -265,23 +259,11 @@ associated with this billing item definition (see L<FS::pkg_svc>). Returns false if there not exactly one service definition with quantity 1, or if SVCDB is specified and does not match the svcdb of the service definition, -If the part_pkg has a nonzero def_svcpart, it takes precedence, even if it has -quantity > 1 and/or there are other service definitions, UNLESS SVCDB is specified -and doesn't match the svcdb of the def_svcpart. - =cut sub svcpart { my $self = shift; my $svcdb = shift; - - if ($self->def_svcpart) { - if ((not $svcdb) or qsearchs('part_svc', { svcpart => $self->def_svcpart, - svcdb => $svcdb })) { - return $self->def_svcpart; - } - } - my @pkg_svc = $self->pkg_svc; return '' if scalar(@pkg_svc) != 1 || $pkg_svc[0]->quantity != 1 @@ -315,7 +297,7 @@ sub payby { =head1 VERSION -$Id: part_pkg.pm,v 1.15 2002-06-08 07:48:36 khoff Exp $ +$Id: part_pkg.pm,v 1.16 2002-06-10 01:39:50 khoff Exp $ =head1 BUGS diff --git a/FS/FS/pkg_svc.pm b/FS/FS/pkg_svc.pm index d64d10d..3c544ff 100644 --- a/FS/FS/pkg_svc.pm +++ b/FS/FS/pkg_svc.pm @@ -67,24 +67,8 @@ otherwise returns false. =item delete -Deletes this record from the database. If this svcpart is also the default svcpart, -we set part_pkg.def_svcpart to NULL. If there is an error, returns the error, -otherwise returns false. - -sub delete { - my $self = shift; - my $part_pkg = qsearchs( 'part_pkg', { pkgpart => $self->pkgpart } ); - - # Should this be wrapped in a transaction? - if ( $part_pkg->def_svcpart == $self->svcpart ) { - my $new = new FS::part_pkg $part_pkg->hash; - $new->def_svcpart = 0; - my $error = $new->replace($part_pkg); - return $error if $error; - } - - $self->SUPER::delete; -} +Deletes this record from the database. If there is an error, returns the +error, otherwise returns false. =item replace OLD_RECORD @@ -99,16 +83,6 @@ sub replace { return "Can't change pkgpart!" if $old->pkgpart != $new->pkgpart; return "Can't change svcpart!" if $old->svcpart != $new->svcpart; - my $part_pkg = qsearchs( 'part_pkg', { pkgpart => $new->pkgpart } ); - - # Should this be wrapped in a transaction? - if ( ($part_pkg->def_svcpart == $new->svcpart) && ($new->quantity == 0) ) { - my $new_part_pkg = new FS::part_pkg $part_pkg->hash; - $new_part_pkg->def_svcpart = 0; - my $error = $new_part_pkg->replace($part_pkg); - return $error if $error; - } - $new->SUPER::replace($old); } @@ -163,7 +137,7 @@ sub part_svc { =head1 VERSION -$Id: pkg_svc.pm,v 1.2 2002-06-08 07:48:37 khoff Exp $ +$Id: pkg_svc.pm,v 1.3 2002-06-10 01:39:50 khoff Exp $ =head1 BUGS |