From: Mike Rylander Date: Tue, 1 Mar 2011 17:11:03 +0000 (-0500) Subject: merge uber-hold reworking X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=2f062bd41912719f3fcfba3daf364e6c700b3100;p=evergreen%2Fequinox.git merge uber-hold reworking --- 2f062bd41912719f3fcfba3daf364e6c700b3100 diff --cc Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm index c64e8050c5,74957f1845..428b986ff4 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm @@@ -2832,29 -2687,33 +2831,34 @@@ sub uber_hold_impl my $user = $hold->usr; $hold->usr($user->id); - my $card = $e->retrieve_actor_card($user->card) - or return $e->event; - my( $mvr, $volume, $copy, $issuance, $part ) = find_hold_mvr($e, $hold); - my( $mvr, $volume, $copy, $issuance, $bre ) = find_hold_mvr($e, $hold, $args->{suppress_mvr}); ++ my( $mvr, $volume, $copy, $issuance, $part, $bre ) = find_hold_mvr($e, $hold, $args->{suppress_mvr}); - flesh_hold_notices([$hold], $e); - flesh_hold_transits([$hold]); + flesh_hold_notices([$hold], $e) unless $args->{suppress_notices}; + flesh_hold_transits([$hold]) unless $args->{suppress_transits}; my $details = retrieve_hold_queue_status_impl($e, $hold); - return { + my $resp = { hold => $hold, -- copy => $copy, -- volume => $volume, - issuance => $issuance, - part => $part, - mvr => $mvr, - patron_first => $user->first_given_name, - patron_last => $user->family_name, - patron_barcode => $card->barcode, - patron_alias => $user->alias, ++ ($copy ? (copy => $copy) : ()), ++ ($volume ? (volume => $volume) : ()), ++ ($issuance ? (issuance => $issuance) : ()), ++ ($part ? (part => $part) : ()), ++ ($args->{include_bre} ? (bre => $bre) : ()), ++ ($args->{suppress_mvr} ? () : (mvr => $mvr)), %$details }; + - $resp->{mvr} = $mvr unless $args->{suppress_mvr}; + unless($args->{suppress_patron_details}) { + my $card = $e->retrieve_actor_card($user->card) or return $e->event; + $resp->{patron_first} = $user->first_given_name, + $resp->{patron_last} = $user->family_name, + $resp->{patron_barcode} = $card->barcode, + $resp->{patron_alias} = $user->alias, + }; + - $resp->{bre} = $bre if $args->{include_bre}; - + return $resp; } @@@ -2922,7 -2772,7 +2926,7 @@@ sub find_hold_mvr # TODO return metarcord mvr for M holds my $title = $e->retrieve_biblio_record_entry($tid); - return ( $U->record_to_mvr($title), $volume, $copy, $issuance, $part ); - return ( ($no_mvr) ? undef : $U->record_to_mvr($title), $volume, $copy, $issuance, $title ); ++ return ( ($no_mvr) ? undef : $U->record_to_mvr($title), $volume, $copy, $issuance, $part, $title ); } __PACKAGE__->register_method(