X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=reserve%2Fplacerequest.pl;h=3fe459c2593025ffe3eaba40fa4054db3c2604f6;hb=3c9d93112043992cd04a435edf6e96c90ffab863;hp=bc3fc74cb07cabbe69a73ced6419d4429e36636e;hpb=ede20857ea5b3744a58ba2bdd73d56a117c8e210;p=koha_fer diff --git a/reserve/placerequest.pl b/reserve/placerequest.pl index bc3fc74cb0..3fe459c259 100755 --- a/reserve/placerequest.pl +++ b/reserve/placerequest.pl @@ -35,7 +35,7 @@ use C4::Auth qw/checkauth/; my $input = CGI->new(); -my ($user, $cookie, $sesion_id, $flags) = checkauth($input, 0, { reserveforothers => 'place_holds' }, 'intranet'); +checkauth($input, 0, { reserveforothers => 'place_holds' }, 'intranet'); my @bibitems=$input->param('biblioitem'); # FIXME I think reqbib does not exist anymore, it's used in line 82, to AddReserve of contraint type 'o' @@ -44,14 +44,14 @@ my @bibitems=$input->param('biblioitem'); # and probably remove the reserveconstraint table as well, I never could fill anything in this table. my @reqbib=$input->param('reqbib'); my $biblionumber=$input->param('biblionumber'); -my $borrower=$input->param('member'); +my $borrowernumber=$input->param('borrowernumber'); my $notes=$input->param('notes'); my $branch=$input->param('pickup'); my $startdate=$input->param('reserve_date') || ''; my @rank=$input->param('rank-request'); my $type=$input->param('type'); my $title=$input->param('title'); -my $borrowernumber=GetMember('cardnumber'=>$borrower); +my $borrower=GetMember('borrowernumber'=>$borrowernumber); my $checkitem=$input->param('checkitem'); my $expirationdate = $input->param('expiration_date'); @@ -81,7 +81,7 @@ if ($checkitem ne ''){ } } -if ($type eq 'str8' && $borrowernumber ne ''){ +if ($type eq 'str8' && $borrower){ foreach my $biblionumber (keys %bibinfos) { my $count=@bibitems; @@ -98,20 +98,29 @@ if ($type eq 'str8' && $borrowernumber ne ''){ } my $const; + if ($checkitem ne ''){ + my $item = GetItem($checkitem); + if ($item->{'biblionumber'} ne $biblionumber) { + $biblionumber = $item->{'biblionumber'}; + } + } + + + if ($multi_hold) { my $bibinfo = $bibinfos{$biblionumber}; - AddReserve($branch,$borrowernumber->{'borrowernumber'},$biblionumber,'a',[$biblionumber], + AddReserve($branch,$borrower->{'borrowernumber'},$biblionumber,'a',[$biblionumber], $bibinfo->{rank},$startdate,$expirationdate,$notes,$bibinfo->{title},$checkitem,$found); } else { if ($input->param('request') eq 'any'){ # place a request on 1st available - AddReserve($branch,$borrowernumber->{'borrowernumber'},$biblionumber,'a',\@realbi,$rank[0],$startdate,$expirationdate,$notes,$title,$checkitem,$found); + AddReserve($branch,$borrower->{'borrowernumber'},$biblionumber,'a',\@realbi,$rank[0],$startdate,$expirationdate,$notes,$title,$checkitem,$found); } elsif ($reqbib[0] ne ''){ # FIXME : elsif probably never reached, (see top of the script) # place a request on a given item - AddReserve($branch,$borrowernumber->{'borrowernumber'},$biblionumber,'o',\@reqbib,$rank[0],$startdate,$expirationdate,$notes,$title,$checkitem, $found); + AddReserve($branch,$borrower->{'borrowernumber'},$biblionumber,'o',\@reqbib,$rank[0],$startdate,$expirationdate,$notes,$title,$checkitem, $found); } else { - AddReserve($branch,$borrowernumber->{'borrowernumber'},$biblionumber,'a',\@realbi,$rank[0],$startdate,$expirationdate,$notes,$title,$checkitem, $found); + AddReserve($branch,$borrower->{'borrowernumber'},$biblionumber,'a',\@realbi,$rank[0],$startdate,$expirationdate,$notes,$title,$checkitem, $found); } } } @@ -124,8 +133,10 @@ if ($type eq 'str8' && $borrowernumber ne ''){ } else { print $input->redirect("request.pl?biblionumber=$biblionumber"); } -} elsif ($borrowernumber eq ''){ +} elsif ($borrower eq ''){ print $input->header(); - print "Invalid card number please try again"; - print $input->Dump; + print "Invalid borrower number please try again"; +# Not sure that Dump() does HTML escaping. Use firebug or something to trace +# instead. +# print $input->Dump; }