View | Details | Raw Unified | Return to bug 16522
Collapse All | Expand All

(-)a/Koha/Biblio.pm (+19 lines)
Lines 813-818 sub to_api { Link Here
813
    return { %$response, %$biblioitem };
813
    return { %$response, %$biblioitem };
814
}
814
}
815
815
816
=head2 get_host_item_entries
817
818
    my @host_item_entries = $biblio->get_host_item_entries;
819
820
Returns a list of MARC::Field objects of the 773 tag which contain host item entry information.
821
Returns undef if no 773 defined.
822
823
=cut
824
825
sub get_host_item_entries {
826
    my ( $self ) = @_;
827
828
    my $record = $self->metadata->record;
829
830
    my @host_item_entries = $record->field('773');
831
832
    return ( @host_item_entries > 0 ) ? \@host_item_entries : undef;
833
}
834
816
=head3 to_api_mapping
835
=head3 to_api_mapping
817
836
818
This method returns the mapping for representing a Koha::Biblio object
837
This method returns the mapping for representing a Koha::Biblio object
(-)a/basket/basket.pl (+2 lines)
Lines 61-66 foreach my $biblionumber ( @bibs ) { Link Here
61
61
62
    my $dat              = &GetBiblioData($biblionumber);
62
    my $dat              = &GetBiblioData($biblionumber);
63
    next unless $dat;
63
    next unless $dat;
64
    my $biblio           = Koha::Biblios->find($biblionumber);
64
    my $record           = &GetMarcBiblio({ biblionumber => $biblionumber });
65
    my $record           = &GetMarcBiblio({ biblionumber => $biblionumber });
65
    my $marcnotesarray   = GetMarcNotes( $record, $marcflavour );
66
    my $marcnotesarray   = GetMarcNotes( $record, $marcflavour );
66
    my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour );
67
    my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour );
Lines 101-106 foreach my $biblionumber ( @bibs ) { Link Here
101
    $dat->{MARCSERIES}  = $marcseriesarray;
102
    $dat->{MARCSERIES}  = $marcseriesarray;
102
    $dat->{MARCURLS}    = $marcurlsarray;
103
    $dat->{MARCURLS}    = $marcurlsarray;
103
    $dat->{HASAUTHORS}  = $hasauthors;
104
    $dat->{HASAUTHORS}  = $hasauthors;
105
    $dat->{HOSTITEMENTRIES} = $biblio->get_host_item_entries;
104
106
105
    if ( C4::Context->preference("IntranetBiblioDefaultView") eq "normal" ) {
107
    if ( C4::Context->preference("IntranetBiblioDefaultView") eq "normal" ) {
106
        $dat->{dest} = "/cgi-bin/koha/catalogue/detail.pl";
108
        $dat->{dest} = "/cgi-bin/koha/catalogue/detail.pl";
(-)a/basket/sendbasket.pl (+2 lines)
Lines 72-77 if ( $email_add ) { Link Here
72
        my $record           = GetMarcBiblio({
72
        my $record           = GetMarcBiblio({
73
            biblionumber => $biblionumber,
73
            biblionumber => $biblionumber,
74
            embed_items => 1 });
74
            embed_items => 1 });
75
        my $biblio           = Koha::Biblios->find($biblionumber);
75
        my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour );
76
        my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour );
76
        my $marcsubjctsarray = GetMarcSubjects( $record, $marcflavour );
77
        my $marcsubjctsarray = GetMarcSubjects( $record, $marcflavour );
77
78
Lines 88-93 if ( $email_add ) { Link Here
88
        $dat->{HASAUTHORS}     = $hasauthors;
89
        $dat->{HASAUTHORS}     = $hasauthors;
89
        $dat->{'biblionumber'} = $biblionumber;
90
        $dat->{'biblionumber'} = $biblionumber;
90
        $dat->{ITEM_RESULTS}   = \@items;
91
        $dat->{ITEM_RESULTS}   = \@items;
92
        $dat->{HOSTITEMENTRIES} = $biblio->get_host_item_entries;
91
93
92
        $iso2709 .= $record->as_usmarc();
94
        $iso2709 .= $record->as_usmarc();
93
95
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/basket/basket.tt (+28 lines)
Lines 217-222 Link Here
217
                                        </tr>
217
                                        </tr>
218
                                    [% END %]
218
                                    [% END %]
219
219
220
                                    [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
221
                                        <tr>
222
                                            <th scope="row">Host item entries</th>
223
                                            <td>
224
                                                [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
225
                                                    <p>
226
                                                        [% IF entry.subfield('0') %]
227
                                                            <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
228
                                                        [% ELSE %]
229
                                                            [% entry.subfield('t') | html %]
230
                                                        [% END %]
231
                                                    </p>
232
                                                [% END %]
233
                                            </td>
234
                                        </tr>
235
                                    [% END %]
236
220
                                    <tr>
237
                                    <tr>
221
                                        <th scope="row">Location(s)</th>
238
                                        <th scope="row">Location(s)</th>
222
                                        <td>
239
                                        <td>
Lines 281-286 Link Here
281
                                            [% IF ( BIBLIO_RESULT.notes ) %]
298
                                            [% IF ( BIBLIO_RESULT.notes ) %]
282
                                                <p>[% BIBLIO_RESULT.notes | html %]</p>
299
                                                <p>[% BIBLIO_RESULT.notes | html %]</p>
283
                                            [% END %]
300
                                            [% END %]
301
                                            [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
302
                                                [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
303
                                                    <p>Host item entry:
304
                                                        [% IF entry.subfield('0') %]
305
                                                            <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
306
                                                        [% ELSE %]
307
                                                            [% entry.subfield('t') | html %]
308
                                                        [% END %]
309
                                                    </p>
310
                                                [% END %]
311
                                            [% END %]
284
                                            <!-- COinS / Openurl -->
312
                                            <!-- COinS / Openurl -->
285
                                            <span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.au=[% BIBLIO_RESULT.author | html %]&amp;rft.btitle=[% BIBLIO_RESULT.title |url %]&amp;rft.date=[% BIBLIO_RESULT.publicationyear | html %]&amp;rft.tpages=[% BIBLIO_RESULT.item('size') | html %]&amp;rft.isbn=[% BIBLIO_RESULT.isbn |url %]&amp;rft.aucorp=&amp;rft.place=[% BIBLIO_RESULT.place | html %]&amp;rft.pub=[% BIBLIO_RESULT.publisher |url %]&amp;rft.edition=[% BIBLIO_RESULT.edition | html %]&amp;rft.series=[% BIBLIO_RESULT.series | html %]&amp;rft.genre="></span>
313
                                            <span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.au=[% BIBLIO_RESULT.author | html %]&amp;rft.btitle=[% BIBLIO_RESULT.title |url %]&amp;rft.date=[% BIBLIO_RESULT.publicationyear | html %]&amp;rft.tpages=[% BIBLIO_RESULT.item('size') | html %]&amp;rft.isbn=[% BIBLIO_RESULT.isbn |url %]&amp;rft.aucorp=&amp;rft.place=[% BIBLIO_RESULT.place | html %]&amp;rft.pub=[% BIBLIO_RESULT.publisher |url %]&amp;rft.edition=[% BIBLIO_RESULT.edition | html %]&amp;rft.series=[% BIBLIO_RESULT.series | html %]&amp;rft.genre="></span>
286
                                        </td>
314
                                        </td>
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasket.tt (+14 lines)
Lines 126-131 Your cart Link Here
126
                LCCN: [% BIBLIO_RESULT.lccn | $raw %]
126
                LCCN: [% BIBLIO_RESULT.lccn | $raw %]
127
            </span><br/>
127
            </span><br/>
128
            [% END %]
128
            [% END %]
129
130
            [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
131
                [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
132
                    <span>Host item entry:
133
                        [% IF entry.subfield('0') %]
134
                            <a href="[% OPACBaseURL | $raw %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
135
                        [% ELSE %]
136
                            [% entry.subfield('t') | html %]
137
                        [% END %]
138
                    </span>
139
                    <br/>
140
                [% END %]
141
            [% END %]
142
129
            [% IF ( BIBLIO_RESULT.url ) %]
143
            [% IF ( BIBLIO_RESULT.url ) %]
130
            <span>
144
            <span>
131
                URL: [% BIBLIO_RESULT.url | html %]
145
                URL: [% BIBLIO_RESULT.url | html %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/sendshelf.tt (+14 lines)
Lines 132-137 Your list: [% shelfname | $raw %] Link Here
132
                LCCN: [% BIBLIO_RESULT.lccn | $raw %]
132
                LCCN: [% BIBLIO_RESULT.lccn | $raw %]
133
            </span><br/>
133
            </span><br/>
134
            [% END %]
134
            [% END %]
135
136
            [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
137
                [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
138
                    <span>Host item entry:
139
                        [% IF entry.subfield('0') %]
140
                            <a href="[% OPACBaseURL | $raw %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
141
                        [% ELSE %]
142
                            [% entry.subfield('t') | html %]
143
                        [% END %]
144
                    </span>
145
                    <br/>
146
                [% END %]
147
            [% END %]
148
135
            [% IF ( BIBLIO_RESULT.url ) %]
149
            [% IF ( BIBLIO_RESULT.url ) %]
136
            <span>
150
            <span>
137
                URL: [% BIBLIO_RESULT.url | html %]
151
                URL: [% BIBLIO_RESULT.url | html %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl (-5 / +49 lines)
Lines 920-932 Link Here
920
    </span>
920
    </span>
921
    </xsl:if>
921
    </xsl:if>
922
922
923
    <!-- 773 -->
923
    <xsl:if test="marc:datafield[@tag=773]">
924
    <xsl:if test="marc:datafield[@tag=773]">
924
        <xsl:for-each select="marc:datafield[@tag=773]">
925
        <xsl:for-each select="marc:datafield[@tag=773]">
925
            <xsl:if test="marc:subfield[@code='t']">
926
            <xsl:if test="@ind1 !=1">
926
    <span class="results_summary source">
927
                <span class="results_summary in"><span class="label">
927
    <span class="label">Source: </span>
928
                <xsl:choose>
928
            <xsl:value-of select="marc:subfield[@code='t']"/>
929
                    <xsl:when test="@ind2=' '">
929
    </span>
930
                        Source:
931
                    </xsl:when>
932
                    <xsl:when test="@ind2=8">
933
                        <xsl:if test="marc:subfield[@code='i']">
934
                            <xsl:value-of select="marc:subfield[@code='i']"/>
935
                        </xsl:if>
936
                    </xsl:when>
937
                </xsl:choose>
938
                </span>
939
                <xsl:variable name="f773">
940
                    <xsl:call-template name="chopPunctuation">
941
                        <xsl:with-param name="chopString">
942
                            <xsl:call-template name="subfieldSelect">
943
                                <xsl:with-param name="codes">a_t</xsl:with-param>
944
                            </xsl:call-template>
945
                        </xsl:with-param>
946
                    </xsl:call-template>
947
                </xsl:variable>
948
                <xsl:choose>
949
                    <xsl:when test="$UseControlNumber = '1' and marc:subfield[@code='w']">
950
                        <a><xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=Control-number:<xsl:call-template name="extractControlNumber"><xsl:with-param name="subfieldW" select="marc:subfield[@code='w']"/></xsl:call-template></xsl:attribute>
951
                        <xsl:value-of select="translate($f773, '()', '')"/>
952
                        </a>
953
                    </xsl:when>
954
                    <xsl:when test="marc:subfield[@code='0']">
955
                        <a><xsl:attribute name="href">/cgi-bin/koha/catalogue/detail.pl?biblionumber=<xsl:value-of select="str:encode-uri(marc:subfield[@code='0'], true())"/></xsl:attribute>
956
                        <xsl:value-of select="$f773"/>
957
                        </a>
958
                    </xsl:when>
959
                    <xsl:otherwise>
960
                        <a><xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=ti,phr:<xsl:value-of select="str:encode-uri(translate($f773, '()', ''), true())"/></xsl:attribute>
961
                        <xsl:value-of select="$f773"/>
962
                        </a>
963
                    </xsl:otherwise>
964
                </xsl:choose>
965
                <xsl:if test="marc:subfield[@code='g']">
966
                    <xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/>
967
                </xsl:if>
968
                </span>
969
970
                <xsl:if test="marc:subfield[@code='n']">
971
                    <span class="results_summary in_note"><xsl:value-of select="marc:subfield[@code='n']"/></span>
972
                </xsl:if>
973
930
            </xsl:if>
974
            </xsl:if>
931
        </xsl:for-each>
975
        </xsl:for-each>
932
    </xsl:if>
976
    </xsl:if>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-basket.tt (+29 lines)
Lines 227-232 Link Here
227
                                            </tr>
227
                                            </tr>
228
                                        [% END %]
228
                                        [% END %]
229
229
230
                                        [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
231
                                            <tr>
232
                                                <th scope="row">Host item entries</th>
233
                                                <td>
234
                                                    [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
235
                                                        <p>
236
                                                            [% IF entry.subfield('0') %]
237
                                                                <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
238
                                                            [% ELSE %]
239
                                                                [% entry.subfield('t') | html %]
240
                                                            [% END %]
241
                                                        </p>
242
                                                    [% END %]
243
                                                </td>
244
                                            </tr>
245
                                        [% END %]
246
230
                                        <tr>
247
                                        <tr>
231
                                            <th scope="row">Location(s) (Status)</th>
248
                                            <th scope="row">Location(s) (Status)</th>
232
                                            <td>
249
                                            <td>
Lines 278-283 Link Here
278
                                                [% IF ( TagsInputEnabled && loggedinusername ) %]
295
                                                [% IF ( TagsInputEnabled && loggedinusername ) %]
279
                                                <span id="newtag[% BIBLIO_RESULT.biblionumber | html %]_status" class="tagstatus results_summary" style="display:none">Tag status here.</span>
296
                                                <span id="newtag[% BIBLIO_RESULT.biblionumber | html %]_status" class="tagstatus results_summary" style="display:none">Tag status here.</span>
280
                                                [% END %]
297
                                                [% END %]
298
299
                                                [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
300
                                                    [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
301
                                                        <p>Host item entry:
302
                                                            [% IF entry.subfield('0') %]
303
                                                                <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
304
                                                            [% ELSE %]
305
                                                                [% entry.subfield('t') | html %]
306
                                                            [% END %]
307
                                                        </p>
308
                                                    [% END %]
309
                                                [% END %]
281
                                            </td>
310
                                            </td>
282
                                            <td>[% BIBLIO_RESULT.author | html %]</td>
311
                                            <td>[% BIBLIO_RESULT.author | html %]</td>
283
                                            <td>
312
                                            <td>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-sendbasket.tt (+14 lines)
Lines 130-135 Your cart Link Here
130
                LCCN: [% BIBLIO_RESULT.lccn | $raw %]
130
                LCCN: [% BIBLIO_RESULT.lccn | $raw %]
131
            </span><br/>
131
            </span><br/>
132
            [% END %]
132
            [% END %]
133
134
            [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
135
                [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
136
                    <span>Host item entry:
137
                        [% IF entry.subfield('0') %]
138
                            <a href="[% OPACBaseURL | $raw %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
139
                        [% ELSE %]
140
                            [% entry.subfield('t') | html %]
141
                        [% END %]
142
                    </span>
143
                    <br/>
144
                [% END %]
145
            [% END %]
146
133
            [% IF ( BIBLIO_RESULT.url ) %]
147
            [% IF ( BIBLIO_RESULT.url ) %]
134
            <span>
148
            <span>
135
                URL: [% BIBLIO_RESULT.url | html %]
149
                URL: [% BIBLIO_RESULT.url | html %]
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-sendshelf.tt (+14 lines)
Lines 133-138 Your list : [% shelfname | $raw %] Link Here
133
                LCCN: [% BIBLIO_RESULT.lccn | $raw %]
133
                LCCN: [% BIBLIO_RESULT.lccn | $raw %]
134
            </span><br/>
134
            </span><br/>
135
            [% END %]
135
            [% END %]
136
137
            [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
138
                [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
139
                    <span>Host item entry:
140
                        [% IF entry.subfield('0') %]
141
                            <a href="[% OPACBaseURL | $raw %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
142
                        [% ELSE %]
143
                            [% entry.subfield('t') | html %]
144
                        [% END %]
145
                    </span>
146
                    <br/>
147
                [% END %]
148
            [% END %]
149
136
            [% IF ( BIBLIO_RESULT.url ) %]
150
            [% IF ( BIBLIO_RESULT.url ) %]
137
            <span>
151
            <span>
138
                URL: [% BIBLIO_RESULT.url | html %]
152
                URL: [% BIBLIO_RESULT.url | html %]
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl (-5 / +49 lines)
Lines 657-669 Link Here
657
	</span>
657
	</span>
658
    </xsl:if>
658
    </xsl:if>
659
659
660
    <!-- 773 -->
660
    <xsl:if test="marc:datafield[@tag=773]">
661
    <xsl:if test="marc:datafield[@tag=773]">
661
        <xsl:for-each select="marc:datafield[@tag=773]">
662
        <xsl:for-each select="marc:datafield[@tag=773]">
662
            <xsl:if test="marc:subfield[@code='t']">
663
            <xsl:if test="@ind1 !=1">
663
    <span class="results_summary source">
664
                <span class="results_summary in"><span class="label">
664
    <span class="label">Source: </span>
665
                <xsl:choose>
665
            <xsl:value-of select="marc:subfield[@code='t']"/>
666
                    <xsl:when test="@ind2=' '">
666
    </span>
667
                        Source:
668
                    </xsl:when>
669
                    <xsl:when test="@ind2=8">
670
                        <xsl:if test="marc:subfield[@code='i']">
671
                            <xsl:value-of select="marc:subfield[@code='i']"/>
672
                        </xsl:if>
673
                    </xsl:when>
674
                </xsl:choose>
675
                </span>
676
                <xsl:variable name="f773">
677
                    <xsl:call-template name="chopPunctuation">
678
                        <xsl:with-param name="chopString">
679
                            <xsl:call-template name="subfieldSelect">
680
                                <xsl:with-param name="codes">a_t</xsl:with-param>
681
                            </xsl:call-template>
682
                        </xsl:with-param>
683
                    </xsl:call-template>
684
                </xsl:variable>
685
                <xsl:choose>
686
                    <xsl:when test="$UseControlNumber = '1' and marc:subfield[@code='w']">
687
                        <a><xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=Control-number:<xsl:call-template name="extractControlNumber"><xsl:with-param name="subfieldW" select="marc:subfield[@code='w']"/></xsl:call-template></xsl:attribute>
688
                        <xsl:value-of select="translate($f773, '()', '')"/>
689
                        </a>
690
                    </xsl:when>
691
                    <xsl:when test="marc:subfield[@code='0']">
692
                        <a><xsl:attribute name="href">/cgi-bin/koha/opac-detail.pl?biblionumber=<xsl:value-of select="str:encode-uri(marc:subfield[@code='0'], true())"/></xsl:attribute>
693
                        <xsl:value-of select="$f773"/>
694
                        </a>
695
                    </xsl:when>
696
                    <xsl:otherwise>
697
                        <a><xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=ti,phr:<xsl:value-of select="str:encode-uri(translate($f773, '()', ''), true())"/></xsl:attribute>
698
                        <xsl:value-of select="$f773"/>
699
                        </a>
700
                    </xsl:otherwise>
701
                </xsl:choose>
702
                <xsl:if test="marc:subfield[@code='g']">
703
                    <xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/>
704
                </xsl:if>
705
                </span>
706
707
                <xsl:if test="marc:subfield[@code='n']">
708
                    <span class="results_summary in_note"><xsl:value-of select="marc:subfield[@code='n']"/></span>
709
                </xsl:if>
710
667
            </xsl:if>
711
            </xsl:if>
668
        </xsl:for-each>
712
        </xsl:for-each>
669
    </xsl:if>
713
    </xsl:if>
(-)a/opac/opac-basket.pl (+2 lines)
Lines 73-78 foreach my $biblionumber ( @bibs ) { Link Here
73
73
74
    # No filtering on the item records needed for the record itself
74
    # No filtering on the item records needed for the record itself
75
    # since the only reason item information is grabbed is because of branchcodes.
75
    # since the only reason item information is grabbed is because of branchcodes.
76
    my $biblio = Koha::Biblios->find($biblionumber);
76
    my $record = &GetMarcBiblio({ biblionumber => $biblionumber });
77
    my $record = &GetMarcBiblio({ biblionumber => $biblionumber });
77
    my $framework = &GetFrameworkCode( $biblionumber );
78
    my $framework = &GetFrameworkCode( $biblionumber );
78
    $record_processor->options({
79
    $record_processor->options({
Lines 148-153 foreach my $biblionumber ( @bibs ) { Link Here
148
    $dat->{MARCSERIES}  = $marcseriesarray;
149
    $dat->{MARCSERIES}  = $marcseriesarray;
149
    $dat->{MARCURLS}    = $marcurlsarray;
150
    $dat->{MARCURLS}    = $marcurlsarray;
150
    $dat->{HASAUTHORS}  = $hasauthors;
151
    $dat->{HASAUTHORS}  = $hasauthors;
152
    $dat->{HOSTITEMENTRIES} = $biblio->get_host_item_entries;
151
153
152
    if ( C4::Context->preference("BiblioDefaultView") eq "normal" ) {
154
    if ( C4::Context->preference("BiblioDefaultView") eq "normal" ) {
153
        $dat->{dest} = "opac-detail.pl";
155
        $dat->{dest} = "opac-detail.pl";
(-)a/opac/opac-sendbasket.pl (+2 lines)
Lines 82-87 if ( $email_add ) { Link Here
82
            embed_items  => 1,
82
            embed_items  => 1,
83
            opac         => 1,
83
            opac         => 1,
84
            borcat       => $borcat });
84
            borcat       => $borcat });
85
        my $biblio = Koha::Biblios->find($biblionumber);
85
        my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour );
86
        my $marcauthorsarray = GetMarcAuthors( $record, $marcflavour );
86
        my $marcsubjctsarray = GetMarcSubjects( $record, $marcflavour );
87
        my $marcsubjctsarray = GetMarcSubjects( $record, $marcflavour );
87
88
Lines 98-103 if ( $email_add ) { Link Here
98
        $dat->{HASAUTHORS}     = $hasauthors;
99
        $dat->{HASAUTHORS}     = $hasauthors;
99
        $dat->{'biblionumber'} = $biblionumber;
100
        $dat->{'biblionumber'} = $biblionumber;
100
        $dat->{ITEM_RESULTS}   = \@items;
101
        $dat->{ITEM_RESULTS}   = \@items;
102
        $dat->{HOSTITEMENTRIES} = $biblio->get_host_item_entries;
101
103
102
        $iso2709 .= $record->as_usmarc();
104
        $iso2709 .= $record->as_usmarc();
103
105
(-)a/opac/opac-sendshelf.pl (+2 lines)
Lines 86-91 if ( $email ) { Link Here
86
            opac         => 1,
86
            opac         => 1,
87
            borcat       => $borcat });
87
            borcat       => $borcat });
88
        next unless $record;
88
        next unless $record;
89
        my $biblio           = Koha::Biblios->find($biblionumber);
89
        my $fw               = GetFrameworkCode($biblionumber);
90
        my $fw               = GetFrameworkCode($biblionumber);
90
        my $dat              = GetBiblioData($biblionumber);
91
        my $dat              = GetBiblioData($biblionumber);
91
92
Lines 100-105 if ( $email ) { Link Here
100
        $dat->{'biblionumber'} = $biblionumber;
101
        $dat->{'biblionumber'} = $biblionumber;
101
        $dat->{ITEM_RESULTS}   = \@items;
102
        $dat->{ITEM_RESULTS}   = \@items;
102
        $dat->{HASAUTHORS}     = $dat->{'author'} || @$marcauthorsarray;
103
        $dat->{HASAUTHORS}     = $dat->{'author'} || @$marcauthorsarray;
104
        $dat->{HOSTITEMENTRIES} = $biblio->get_host_item_entries;
103
105
104
        $iso2709 .= $record->as_usmarc();
106
        $iso2709 .= $record->as_usmarc();
105
107
(-)a/t/db_dependent/Koha/Biblio.t (-1 / +35 lines)
Lines 17-23 Link Here
17
17
18
use Modern::Perl;
18
use Modern::Perl;
19
19
20
use Test::More tests => 12;
20
use Test::More tests => 13;
21
21
22
use C4::Biblio;
22
use C4::Biblio;
23
use Koha::Database;
23
use Koha::Database;
Lines 551-553 subtest 'subscriptions() tests' => sub { Link Here
551
551
552
    $schema->storage->txn_rollback;
552
    $schema->storage->txn_rollback;
553
};
553
};
554
555
subtest 'get_host_item_entries() tests' => sub {
556
557
    plan tests => 2;
558
559
    $schema->storage->txn_begin;
560
561
    # Set up the host record and an item
562
    my $host_biblio = $builder->build_sample_biblio;
563
    my $host_item = $builder->build_sample_item({ biblionumber => $host_biblio->biblionumber });
564
565
    # Set up the test record
566
    my $test_biblio = $builder->build_sample_biblio;
567
    my $record = $test_biblio->metadata->record;
568
569
    # Link the host item to the test record
570
    my $field = MARC::Field->new('245','','','a' => "Test title");
571
    $record->append_fields( $field );
572
    $field = MARC::Field->new('773','0','','0' => $host_biblio->biblionumber);
573
    $record->append_fields( $field );
574
    $field = MARC::Field->new('773','0','','9' => $host_item->itemnumber);
575
    $record->append_fields( $field );
576
577
    # Re-retrieve the record
578
    C4::Biblio::ModBiblio( $record, $test_biblio->biblionumber );
579
    $test_biblio = Koha::Biblios->find( $test_biblio->biblionumber );
580
581
    my $host_items = $test_biblio->get_host_item_entries;
582
    is( @{$host_items}, 1, "Correctly retrieved number of attached host item entries" );
583
    my $test_host_biblionumber = @{$host_items}[0]->subfield('0');
584
    is( $test_host_biblionumber, $host_biblio->biblionumber, "Correctly retrieved data about host item entry");
585
586
    $schema->storage->txn_rollback;
587
};
(-)a/virtualshelves/sendshelf.pl (-1 / +2 lines)
Lines 67-72 if ($to_address) { Link Here
67
67
68
    while ( my $content = $contents->next ) {
68
    while ( my $content = $contents->next ) {
69
        my $biblionumber     = $content->biblionumber;
69
        my $biblionumber     = $content->biblionumber;
70
        my $biblio           = Koha::Biblios->find($biblionumber);
70
        my $dat              = GetBiblioData($biblionumber);
71
        my $dat              = GetBiblioData($biblionumber);
71
        my $record           = GetMarcBiblio({
72
        my $record           = GetMarcBiblio({
72
            biblionumber => $biblionumber,
73
            biblionumber => $biblionumber,
Lines 82-87 if ($to_address) { Link Here
82
        $dat->{'biblionumber'} = $biblionumber;
83
        $dat->{'biblionumber'} = $biblionumber;
83
        $dat->{ITEM_RESULTS}   = \@items;
84
        $dat->{ITEM_RESULTS}   = \@items;
84
        $dat->{HASAUTHORS}     = $dat->{'author'} || @$marcauthorsarray;
85
        $dat->{HASAUTHORS}     = $dat->{'author'} || @$marcauthorsarray;
86
        $dat->{HOSTITEMENTRIES} = $biblio->get_host_item_entries;
85
87
86
        $iso2709 .= $record->as_usmarc();
88
        $iso2709 .= $record->as_usmarc();
87
89
88
- 

Return to bug 16522