better name for svc_acct events
[freeside.git] / FS / FS / part_event.pm
index 62f16fa..58e0127 100644 (file)
@@ -1,7 +1,7 @@
 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 );
@@ -9,7 +9,6 @@ use FS::Conf;
 use FS::part_event_option;
 use FS::part_event_condition;
 use FS::cust_event;
-use FS::agent;
 
 $DEBUG = 0;
 
@@ -169,13 +168,6 @@ sub _rebless {
 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.
@@ -223,13 +215,6 @@ sub reasontext { confess "part_event->reasontext deprecated"; }
 
 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
@@ -285,7 +270,9 @@ sub targets {
   }
 
   # 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
   );
@@ -306,8 +293,8 @@ sub targets {
   });
   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;
@@ -382,9 +369,10 @@ sub eventtable_labels {
     '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',
+    'svc_acct'       => 'Account service (svc_acct)',
   ;
 
   \%hash
@@ -421,6 +409,7 @@ sub eventtable_pkey {
     'cust_main'      => 'custnum',
     'cust_bill'      => 'invnum',
     'cust_pkg'       => 'pkgnum',
+    'cust_pay'       => 'paynum',
     'cust_pay_batch' => 'paybatchnum',
     'cust_statement' => 'statementnum',
     'svc_acct'       => 'svcnum',
@@ -583,6 +572,7 @@ sub actions {
   (
     map  { $_ => $actions{$_} }
     sort { $actions{$a}->{'default_weight'}<=>$actions{$b}->{'default_weight'} }
+       # || $actions{$a}->{'description'} cmp $actions{$b}->{'description'} }
     $class->all_actions( $eventtable )
   );