+use C4::Auth qw/checkauth/;
+use Koha::Patrons;
+
+my $input = CGI->new();
+
+checkauth($input, 0, { reserveforothers => 'place_holds' }, 'intranet');
+
+my @bibitems = $input->multi_param('biblioitem');
+my @reqbib = $input->multi_param('reqbib');
+my $biblionumber = $input->param('biblionumber');
+my $borrowernumber = $input->param('borrowernumber');
+my $notes = $input->param('notes');
+my $branch = $input->param('pickup');
+my $startdate = $input->param('reserve_date') || '';
+my @rank = $input->multi_param('rank-request');
+my $type = $input->param('type');
+my $title = $input->param('title');
+my $checkitem = $input->param('checkitem');
+my $expirationdate = $input->param('expiration_date');
+my $itemtype = $input->param('itemtype') || undef;
+
+my $borrower = Koha::Patrons->find( $borrowernumber );
+$borrower = $borrower->unblessed if $borrower;
+
+my $multi_hold = $input->param('multi_hold');
+my $biblionumbers = $multi_hold ? $input->param('biblionumbers') : ($biblionumber . '/');
+my $bad_bibs = $input->param('bad_bibs');
+my $holds_to_place_count = $input->param('holds_to_place_count') || 1;
+
+my %bibinfos = ();
+my @biblionumbers = split '/', $biblionumbers;
+foreach my $bibnum (@biblionumbers) {
+ my %bibinfo = ();
+ $bibinfo{title} = $input->param("title_$bibnum");
+ $bibinfo{rank} = $input->param("rank_$bibnum");
+ $bibinfos{$bibnum} = \%bibinfo;
+}