projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git.freeside.biz:/home/git/freeside
[freeside.git]
/
FS
/
FS
/
pkg_class.pm
diff --git
a/FS/FS/pkg_class.pm
b/FS/FS/pkg_class.pm
index
0fa6e48
..
8b66c16
100644
(file)
--- a/
FS/FS/pkg_class.pm
+++ b/
FS/FS/pkg_class.pm
@@
-1,11
+1,10
@@
package FS::pkg_class;
use strict;
package FS::pkg_class;
use strict;
-use
vars qw( @ISA )
;
-use
FS::Record qw( qsearch
);
+use
FS::class_Common
;
+use
base qw( FS::class_Common
);
use FS::part_pkg;
use FS::part_pkg;
-
-@ISA = qw( FS::Record );
+use FS::pkg_category;
=head1 NAME
=head1 NAME
@@
-34,9
+33,23
@@
from FS::Record. The following fields are currently supported:
=over 4
=over 4
-=item classnum - primary key (assigned automatically for new package classes)
+=item classnum
+
+primary key (assigned automatically for new package classes)
+
+=item classname
+
+Text name of this package class
+
+=item categorynum
+
+Number of associated pkg_category (see L<FS::pkg_category>)
+
+=item disabled
-=item classname - Text name of this package class
+Disabled flag, empty or 'Y'
+
+=item fcc_ds0s - Optional DS0 equivalency number for FCC form 477
=back
=back
@@
-52,6
+65,13
@@
L<"insert">.
=cut
sub table { 'pkg_class'; }
=cut
sub table { 'pkg_class'; }
+sub _target_table { 'part_pkg'; }
+
+sub check {
+ my $self = shift;
+ $self->ut_numbern('fcc_ds0s')
+ || $self->SUPER::check;
+}
=item insert
=item insert
@@
-64,18
+84,7
@@
Deletes this package class from the database. Only package classes with no
associated package definitions can be deleted. If there is an error, returns
the error, otherwise returns false.
associated package definitions can be deleted. If there is an error, returns
the error, otherwise returns false.
-=cut
-
-sub delete {
- my $self = shift;
-
- return "Can't delete an pkg_class with part_pkg records!"
- if qsearch( 'part_pkg', { 'classnum' => $self->classnum } );
-
- $self->SUPER::delete;
-}
-
-=item replace OLD_RECORD
+=item replace [ OLD_RECORD ]
Replaces OLD_RECORD with this one in the database. If there is an error,
returns the error, otherwise returns false.
Replaces OLD_RECORD with this one in the database. If there is an error,
returns the error, otherwise returns false.
@@
-86,16
+95,24
@@
Checks all fields to make sure this is a valid package class. If there is an
error, returns the error, otherwise returns false. Called by the insert and
replace methods.
error, returns the error, otherwise returns false. Called by the insert and
replace methods.
+=item pkg_category
+
+=item category
+
+Returns the pkg_category record associated with this class, or false if there
+is none.
+
=cut
=cut
-sub
check
{
+sub
pkg_category
{
my $self = shift;
my $self = shift;
+ $self->category;
+}
- $self->ut_numbern('classnum')
- or $self->ut_text('classname')
- or $self->SUPER::check;
+=item categoryname
-}
+Returns the category name associated with this class, or false if there
+is none.
=back
=back
@@
-103,9
+120,8
@@
sub check {
=head1 SEE ALSO
=head1 SEE ALSO
-L<FS::
Record>, L<FS::part_pkg>, schema.html from the base documentation.
+L<FS::
part_pkg>, L<FS::Record>
=cut
1;
=cut
1;
-