use OpenSRF::AppSession;
use OpenSRF::System;
use JSON;
-OpenSRF::System->bootstrap_client(config_file => "/pines/conf/bootstrap.conf");
+OpenSRF::System->bootstrap_client(config_file => "/pines/conf/client.conf");
+my $ses = OpenSRF::AppSession->create("open-ils.actor");
+my $req = $ses->request("open-ils.actor.org_tree.retrieve");
-my $ses = OpenSRF::AppSession->create("open-ils.search");
-my $req = $ses->request("open-ils.search.actor.org_tree.slim.retrieve");
my $tree = $req->gather(1);
my $ses2 = OpenSRF::AppSession->create("open-ils.storage");
my $req2 = $ses2->request("open-ils.storage.direct.actor.org_unit_type.retrieve.all.atomic");
my $types = $req2->gather(1);
-
my $tree_string = JSON->perl2JSON($tree);
my $types_string = JSON->perl2JSON($types);
# run the permissibility script
run_script();
- my $obj = $stash->get("circ_objects");
-
- # turn the biblio record into a friendly object
- my $u = OpenILS::Utils::ModsParser->new();
- $u->start_mods_batch( $obj->{title}->marc() );
- my $mods = $u->finish_mods_batch();
+
my $arr = $stash->get("result");
- return { record => $mods, status => $arr->[0], text => $arr->[1] };
+ return { status => $arr->[0], text => $arr->[1] };
}
my ($circ, $duration, $recurring, $max) = run_circ_scripts($session);
-
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
gmtime(OpenSRF::Utils->interval_to_seconds($circ->duration) + int(time()));
$year += 1900; $mon += 1;
$circ->max_fine_rule($max);
$circ->recuring_fine_rule($recurring);
- return $circ;
+ # turn the biblio record into a friendly object
+ my $obj = $stash->get("circ_objects");
+ my $u = OpenILS::Utils::ModsParser->new();
+ $u->start_mods_batch( $circ_objects->{title}->marc() );
+ my $mods = $u->finish_mods_batch();
+
+
+ return { circ => $circ, copy => $copy, record => $mods };
}
my $err;
my $copy;
+ my $circ;
try {
my $session = $apputils->start_db_session();
"open-ils.storage.direct.action.circulation.search.atomic",
{ target_copy => $copy->id, xact_finish => undef } );
- my $circ = $circ_req->gather(1)->[0];
+ $circ = $circ_req->gather(1)->[0];
if(!$circ) {
$err = "No circulation exists for the given barcode";
my $u = OpenILS::Utils::ModsParser->new();
$u->start_mods_batch( $record->marc() );
my $mods = $u->finish_mods_batch();
- return { record => $mods, status => 0, text => "OK",
- route_to => $shelving_locations->{$copy->location} };
+
+ return {
+ record => $mods,
+ status => 0,
+ text => "OK",
+ circ => $circ,
+ copy => $copy,
+ route_to => $shelving_locations->{$copy->location}
+ };
}
return 1;