+$template->param( 'AllowOnShelfHolds' => C4::Context->preference('AllowOnShelfHolds') );
+$template->param( 'ItemsIssued' => CountItemsIssued( $biblionumber ) );
+
+my $marcflavour = C4::Context->preference("marcflavour");
+my $record = GetMarcBiblio($biblionumber);
+if ( ! $record ) {
+ print $query->redirect("/cgi-bin/koha/errors/404.pl");
+ exit;
+}
+# some useful variables for enhanced content;
+# in each case, we're grabbing the first value we find in
+# the record and normalizing it
+my $upc = GetNormalizedUPC($record,$marcflavour);
+my $ean = GetNormalizedEAN($record,$marcflavour);
+my $oclc = GetNormalizedOCLCNumber($record,$marcflavour);
+my $isbn = GetNormalizedISBN(undef,$record,$marcflavour);
+my $content_identifier_exists;
+if ( $isbn or $ean or $oclc or $upc ) {
+ $content_identifier_exists = 1;
+}
+$template->param(
+ normalized_upc => $upc,
+ normalized_ean => $ean,
+ normalized_oclc => $oclc,
+ normalized_isbn => $isbn,
+ content_identifier_exists => $content_identifier_exists,
+);
+
+#coping with subscriptions
+my $subscriptionsnumber = CountSubscriptionFromBiblionumber($biblionumber);
+my $dbh = C4::Context->dbh;
+my $dat = TransformMarcToKoha( $dbh, $record );
+
+my @subscriptions = GetSubscriptions( $dat->{title}, $dat->{issn}, undef, $biblionumber );
+my @subs;
+foreach my $subscription (@subscriptions) {
+ my %cell;
+ my $serials_to_display;
+ $cell{subscriptionid} = $subscription->{subscriptionid};
+ $cell{subscriptionnotes} = $subscription->{notes};
+ $cell{branchcode} = $subscription->{branchcode};
+
+ #get the three latest serials.
+ $serials_to_display = $subscription->{opacdisplaycount};
+ $serials_to_display = C4::Context->preference('OPACSerialIssueDisplayCount') unless $serials_to_display;
+ $cell{opacdisplaycount} = $serials_to_display;
+ $cell{latestserials} =
+ GetLatestSerials( $subscription->{subscriptionid}, $serials_to_display );
+ push @subs, \%cell;
+}
+
+$template->param(
+ subscriptions => \@subs,
+ subscriptionsnumber => $subscriptionsnumber,
+);
+
+my $norequests = 1;
+my $res = GetISBDView($biblionumber, "opac");
+my @items = GetItemsInfo( $biblionumber );
+
+my $itemtypes = GetItemTypes();
+for my $itm (@items) {
+ $norequests = 0
+ if ( (not $itm->{'wthdrawn'} )
+ && (not $itm->{'itemlost'} )
+ && ($itm->{'itemnotforloan'}<0 || not $itm->{'itemnotforloan'} )
+ && (not $itemtypes->{$itm->{'itype'}}->{notforloan} )
+ && ($itm->{'itemnumber'} ) );
+}