sub fire_object_event {
my($self, $event_def, $hook, $object, $context_org, $granularity, $user_data, $client) = @_;
- my $e = OpenILS::Utils::CStoreEditor->new(xact => 1);
+ my $e = OpenILS::Utils::CStoreEditor->new;
my $def;
my $auto_method = "open-ils.trigger.event.autocreate.by_definition";
if($event_def) {
$def = $e->retrieve_action_trigger_event_definition($event_def)
- or return $e->die_event;
+ or return $e->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->die_event;
+ or return $e->event;
}
my $final_resp;
if($resp and $resp->{events} and @{$resp->{events}}) {
+ $e->xact_begin;
$final_resp = $e->retrieve_action_trigger_event([
$resp->{events}->[0]->id,
{flesh => 1, flesh_fields => {atev => ['template_output', 'error_output']}}
]);
+ $e->rollback;
}
} else {
}
if($resp and $resp->{event}) {
+ $e->xact_begin;
$final_resp = $e->retrieve_action_trigger_event([
$resp->{event}->id,
{flesh => 1, flesh_fields => {atev => ['template_output', 'error_output']}}
]);
+ $e->rollback;
}
}
- $e->rollback;
return $final_resp;
}
sub print_hold_pull_list {
my($self, $client, $auth, $org_id) = @_;
- my $e = new_editor(authtoken=>$auth, xact=>1);
- return $e->die_event unless $e->checkauth;
+ my $e = new_editor(authtoken=>$auth);
+ return $e->event unless $e->checkauth;
$org_id = (defined $org_id) ? $org_id : $e->requestor->ws_ou;
- return $e->die_event unless $e->allowed('VIEW_HOLD', $org_id);
+ return $e->event unless $e->allowed('VIEW_HOLD', $org_id);
my $hold_ids = $U->storagereq(
'open-ils.storage.direct.action.hold_request.pull_list.id_list.current_copy_circ_lib.status_filtered.atomic',
$org_id, 10000);
- unless (@$hold_ids) {
- $e->rollback;
- return undef;
- }
+ return undef unless @$hold_ids;
+
$client->status(new OpenSRF::DomainObject::oilsContinueStatus);
# Holds will /NOT/ be in order after this ...
my $sorted_holds = [];
push @$sorted_holds, $hold_map->{$_} foreach @$hold_ids;
- $e->rollback;
-
return $U->fire_object_event(
undef, "ahr.format.pull_list", $sorted_holds,
$org_id, undef, undef, $client