@@ -, +, @@ --- catalogue/detail.pl | 20 +++++++++++++++++++ .../prog/en/modules/catalogue/detail.tt | 18 +++++++++++++++++ 2 files changed, 38 insertions(+) --- a/catalogue/detail.pl +++ a/catalogue/detail.pl @@ -210,6 +210,26 @@ foreach my $subscription (@subscriptions) { push @subs, \%cell; } +# Get component parts details +my $showcomp = C4::Context->preference('ShowComponentRecords'); +if ( $showcomp eq 'both' || $showcomp eq 'staff' ) { + if ( my $components = $biblio->get_marc_analytics(300) ) { + my $xslparts = C4::Context->preference('XSLTResultsDisplay') || "default"; + if ( $xslparts ) { + my $parts; + for my $part ( @{$components} ) { + $part = MARC::Record->new_from_xml( $part, 'UTF-8' ); + + push @{$parts}, + XSLTParse4Display( 1, $part, "XSLTResultsDisplay", 1, + undef, $sysxml, $xslparts, $lang, ); + } + $template->param( + ComponentParts => $parts + ); + } + } +} # Get acquisition details if ( C4::Context->preference('AcquisitionDetails') ) { --- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt @@ -278,6 +278,7 @@ [% END %] [% IF ( MARCNOTES || notes ) %]
  • Descriptions ([% ( MARCNOTES.size || 1 ) | html %])
  • [% END %] +[% IF ( ComponentParts ) %]
  • Components ([% ( ComponentParts.size || 1 ) %])
  • [% END %] [% IF ( subscriptionsnumber ) %]
  • Subscriptions
  • [% END %] [% IF Koha.Preference('AcquisitionDetails') %]
  • Acquisition details
  • [% END %] [% IF suggestions.count %]
  • Suggestion details
  • [% END %] @@ -683,6 +684,23 @@ Note that permanent location is a code, and location may be an authval. [% END %] +[% IF ComponentParts.size %] +
    +
    + + [% FOR PART IN ComponentParts %] + + + + [% END %] +
    + [% PART | $raw %] +
    +
    +
    + +[% END %] + [% IF ( subscriptionsnumber ) %]
    --