diff options
Diffstat (limited to 'FS/FS/part_event/Condition/pkg_unless_pkgpart.pm')
-rw-r--r-- | FS/FS/part_event/Condition/pkg_unless_pkgpart.pm | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/FS/FS/part_event/Condition/pkg_unless_pkgpart.pm b/FS/FS/part_event/Condition/pkg_unless_pkgpart.pm new file mode 100644 index 000000000..47fa8c321 --- /dev/null +++ b/FS/FS/part_event/Condition/pkg_unless_pkgpart.pm @@ -0,0 +1,39 @@ +package FS::part_event::Condition::pkg_unless_pkgpart; + +use strict; + +use base qw( FS::part_event::Condition ); + +sub description { 'Except package definitions'; } + +sub eventtable_hashref { + { 'cust_main' => 0, + 'cust_bill' => 0, + 'cust_pkg' => 1, + }; +} + +sub option_fields { + ( + 'unless_pkgpart' => { 'label' => 'Except packages: ', + 'type' => 'select-part_pkg', + 'multiple' => 1, + }, + ); +} + +sub condition { + my( $self, $cust_pkg) = @_; + + #XXX test + my $unless_pkgpart = $self->option('unless_pkgpart') || {}; + ! $unless_pkgpart->{ $cust_pkg->pkgpart }; + +} + +#XXX +#sub condition_sql { +# +#} + +1; |