if($event_def) {
$def = $e->retrieve_action_trigger_event_definition($event_def)
- or return $e->event;
+ or return $e->die_event;
$auto_method .= '.include_inactive';
# find the most appropriate event def depending on context org
$def = $self->find_event_def_by_hook($hook, $context_org, $e)
- or return $e->event;
+ or return $e->die_event;
}
+ my $final_resp;
+
if($def->group_field) {
# we have a list of objects
$object = [$object] unless ref $object eq 'ARRAY';
);
}
- return undef unless $resp and $resp->{events} and @{$resp->{events}};
+ if($resp and $resp->{events} and @{$resp->{events}}) {
- return $e->retrieve_action_trigger_event([
- $resp->{events}->[0]->id,
- {flesh => 1, flesh_fields => {atev => ['template_output', 'error_output']}}
- ]);
+ $final_resp = $e->retrieve_action_trigger_event([
+ $resp->{events}->[0]->id,
+ {flesh => 1, flesh_fields => {atev => ['template_output', 'error_output']}}
+ ]);
+ }
} else {
$event_id
);
}
- return undef unless $resp and $resp->{event};
-
- return $e->retrieve_action_trigger_event([
- $resp->{event}->id,
- {flesh => 1, flesh_fields => {atev => ['template_output', 'error_output']}}
- ]);
+
+ if($resp and $resp->{event}) {
+ $final_resp = $e->retrieve_action_trigger_event([
+ $resp->{event}->id,
+ {flesh => 1, flesh_fields => {atev => ['template_output', 'error_output']}}
+ ]);
+ }
}
+
+ $e->rollback;
+ return $final_resp;
}