always pass the "time" parameter to join_conditions_sql, related to #28978
[freeside.git] / FS / FS / part_event.pm
index 62f16fa..e7acf5a 100644 (file)
@@ -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;
@@ -583,6 +570,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 )
   );