package FS::part_event;
+use base qw( FS::m2name_Common FS::option_Common );
use strict;
-use base qw( FS::m2name_Common FS::option_Common );
use vars qw( $DEBUG );
use Carp qw(confess);
use FS::Record qw( dbh qsearch qsearchs );
use FS::part_event_option;
use FS::part_event_condition;
use FS::cust_event;
-use FS::agent;
$DEBUG = 0;
Returns the conditions associated with this event, as FS::part_event_condition
objects (see L<FS::part_event_condition>)
-=cut
-
-sub part_event_condition {
- my $self = shift;
- qsearch( 'part_event_condition', { 'eventpart' => $self->eventpart } );
-}
-
=item new_cust_event OBJECT, [ OPTION => VALUE ]
Creates a new customer event (see L<FS::cust_event>) for the provided object.
Returns the associated agent for this event, if any, as an FS::agent object.
-=cut
-
-sub agent {
- my $self = shift;
- qsearchs('agent', { 'agentnum' => $self->agentnum } );
-}
-
=item templatename
Returns the alternate invoice template name, if any, or false if there is
}
# this is the 'event' side
- my $join = FS::part_event_condition->join_conditions_sql( $eventtable );
+ my $join = FS::part_event_condition->join_conditions_sql( $eventtable,
+ 'time' => $time
+ );
my $where = FS::part_event_condition->where_conditions_sql( $eventtable,
'time' => $time
);
});
my @tested_objects;
foreach my $object ( @objects ) {
- my $cust_event = $self->new_cust_event($object);
- next unless $cust_event->test_conditions('time' => $time);
+ my $cust_event = $self->new_cust_event($object, 'time' => $time);
+ next unless $cust_event->test_conditions;
$object->set('cust_event', $cust_event);
push @tested_objects, $object;
'cust_pkg' => 'Package',
'cust_bill' => 'Invoice',
'cust_main' => 'Customer',
+ 'cust_pay' => 'Payment',
'cust_pay_batch' => 'Batch payment',
'cust_statement' => 'Statement', #too general a name here? "Invoice group"?
'svc_acct' => 'Login service',
'cust_main' => 'custnum',
'cust_bill' => 'invnum',
'cust_pkg' => 'pkgnum',
+ 'cust_pay' => 'paynum',
'cust_pay_batch' => 'paybatchnum',
'cust_statement' => 'statementnum',
'svc_acct' => 'svcnum',
(
map { $_ => $actions{$_} }
sort { $actions{$a}->{'default_weight'}<=>$actions{$b}->{'default_weight'} }
+ # || $actions{$a}->{'description'} cmp $actions{$b}->{'description'} }
$class->all_actions( $eventtable )
);