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

(-)a/Koha/Biblio.pm (+19 lines)
Lines 869-874 sub to_api { Link Here
869
    return { %$response, %$biblioitem };
869
    return { %$response, %$biblioitem };
870
}
870
}
871
871
872
=head2 get_host_item_entries
873
874
    my @host_item_entries = $biblio->get_host_item_entries;
875
876
Returns a list of MARC::Field objects of the 773 tag which contain host item entry information.
877
Returns undef if no 773 defined.
878
879
=cut
880
881
sub get_host_item_entries {
882
    my ( $self ) = @_;
883
884
    my $record = $self->metadata->record;
885
886
    my @host_item_entries = $record->field('773');
887
888
    return ( @host_item_entries > 0 ) ? \@host_item_entries : undef;
889
}
890
872
=head3 to_api_mapping
891
=head3 to_api_mapping
873
892
874
This method returns the mapping for representing a Koha::Biblio object
893
This method returns the mapping for representing a Koha::Biblio object
(-)a/basket/basket.pl (+1 lines)
Lines 103-108 foreach my $biblionumber ( @bibs ) { Link Here
103
    $dat->{MARCSERIES}  = $marcseriesarray;
103
    $dat->{MARCSERIES}  = $marcseriesarray;
104
    $dat->{MARCURLS}    = $marcurlsarray;
104
    $dat->{MARCURLS}    = $marcurlsarray;
105
    $dat->{HASAUTHORS}  = $hasauthors;
105
    $dat->{HASAUTHORS}  = $hasauthors;
106
    $dat->{HOSTITEMENTRIES} = $biblio->get_host_item_entries;
106
107
107
    if ( C4::Context->preference("IntranetBiblioDefaultView") eq "normal" ) {
108
    if ( C4::Context->preference("IntranetBiblioDefaultView") eq "normal" ) {
108
        $dat->{dest} = "/cgi-bin/koha/catalogue/detail.pl";
109
        $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 933-945 Link Here
933
    </span>
933
    </span>
934
    </xsl:if>
934
    </xsl:if>
935
935
936
    <!-- 773 -->
936
    <xsl:if test="marc:datafield[@tag=773]">
937
    <xsl:if test="marc:datafield[@tag=773]">
937
        <xsl:for-each select="marc:datafield[@tag=773]">
938
        <xsl:for-each select="marc:datafield[@tag=773]">
938
            <xsl:if test="marc:subfield[@code='t']">
939
            <xsl:if test="@ind1 !=1">
939
    <span class="results_summary source">
940
                <span class="results_summary in"><span class="label">
940
    <span class="label">Source: </span>
941
                <xsl:choose>
941
            <xsl:value-of select="marc:subfield[@code='t']"/>
942
                    <xsl:when test="@ind2=' '">
942
    </span>
943
                        Source:
944
                    </xsl:when>
945
                    <xsl:when test="@ind2=8">
946
                        <xsl:if test="marc:subfield[@code='i']">
947
                            <xsl:value-of select="marc:subfield[@code='i']"/>
948
                        </xsl:if>
949
                    </xsl:when>
950
                </xsl:choose>
951
                </span>
952
                <xsl:variable name="f773">
953
                    <xsl:call-template name="chopPunctuation">
954
                        <xsl:with-param name="chopString">
955
                            <xsl:call-template name="subfieldSelect">
956
                                <xsl:with-param name="codes">a_t</xsl:with-param>
957
                            </xsl:call-template>
958
                        </xsl:with-param>
959
                    </xsl:call-template>
960
                </xsl:variable>
961
                <xsl:choose>
962
                    <xsl:when test="$UseControlNumber = '1' and marc:subfield[@code='w']">
963
                        <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>
964
                        <xsl:value-of select="translate($f773, '()', '')"/>
965
                        </a>
966
                    </xsl:when>
967
                    <xsl:when test="marc:subfield[@code='0']">
968
                        <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>
969
                        <xsl:value-of select="$f773"/>
970
                        </a>
971
                    </xsl:when>
972
                    <xsl:otherwise>
973
                        <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>
974
                        <xsl:value-of select="$f773"/>
975
                        </a>
976
                    </xsl:otherwise>
977
                </xsl:choose>
978
                <xsl:if test="marc:subfield[@code='g']">
979
                    <xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/>
980
                </xsl:if>
981
                </span>
982
983
                <xsl:if test="marc:subfield[@code='n']">
984
                    <span class="results_summary in_note"><xsl:value-of select="marc:subfield[@code='n']"/></span>
985
                </xsl:if>
986
943
            </xsl:if>
987
            </xsl:if>
944
        </xsl:for-each>
988
        </xsl:for-each>
945
    </xsl:if>
989
    </xsl:if>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-basket.tt (+29 lines)
Lines 228-233 Link Here
228
                                            </tr>
228
                                            </tr>
229
                                        [% END %]
229
                                        [% END %]
230
230
231
                                        [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
232
                                            <tr>
233
                                                <th scope="row">Host item entries</th>
234
                                                <td>
235
                                                    [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
236
                                                        <p>
237
                                                            [% IF entry.subfield('0') %]
238
                                                                <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
239
                                                            [% ELSE %]
240
                                                                [% entry.subfield('t') | html %]
241
                                                            [% END %]
242
                                                        </p>
243
                                                    [% END %]
244
                                                </td>
245
                                            </tr>
246
                                        [% END %]
247
231
                                        <tr>
248
                                        <tr>
232
                                            <th scope="row">Location(s) (Status)</th>
249
                                            <th scope="row">Location(s) (Status)</th>
233
                                            <td>
250
                                            <td>
Lines 279-284 Link Here
279
                                                [% IF ( TagsInputEnabled && loggedinusername ) %]
296
                                                [% IF ( TagsInputEnabled && loggedinusername ) %]
280
                                                <span id="newtag[% BIBLIO_RESULT.biblionumber | html %]_status" class="tagstatus results_summary" style="display:none">Tag status here.</span>
297
                                                <span id="newtag[% BIBLIO_RESULT.biblionumber | html %]_status" class="tagstatus results_summary" style="display:none">Tag status here.</span>
281
                                                [% END %]
298
                                                [% END %]
299
300
                                                [% IF BIBLIO_RESULT.HOSTITEMENTRIES %]
301
                                                    [% FOREACH entry IN BIBLIO_RESULT.HOSTITEMENTRIES %]
302
                                                        <p>Host item entry:
303
                                                            [% IF entry.subfield('0') %]
304
                                                                <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% entry.subfield('0') | uri %]">[% entry.subfield('t') | html %]</a>
305
                                                            [% ELSE %]
306
                                                                [% entry.subfield('t') | html %]
307
                                                            [% END %]
308
                                                        </p>
309
                                                    [% END %]
310
                                                [% END %]
282
                                            </td>
311
                                            </td>
283
                                            <td>[% BIBLIO_RESULT.author | html %]</td>
312
                                            <td>[% BIBLIO_RESULT.author | html %]</td>
284
                                            <td>
313
                                            <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 659-671 Link Here
659
	</span>
659
	</span>
660
    </xsl:if>
660
    </xsl:if>
661
661
662
    <!-- 773 -->
662
    <xsl:if test="marc:datafield[@tag=773]">
663
    <xsl:if test="marc:datafield[@tag=773]">
663
        <xsl:for-each select="marc:datafield[@tag=773]">
664
        <xsl:for-each select="marc:datafield[@tag=773]">
664
            <xsl:if test="marc:subfield[@code='t']">
665
            <xsl:if test="@ind1 !=1">
665
    <span class="results_summary source">
666
                <span class="results_summary in"><span class="label">
666
    <span class="label">Source: </span>
667
                <xsl:choose>
667
            <xsl:value-of select="marc:subfield[@code='t']"/>
668
                    <xsl:when test="@ind2=' '">
668
    </span>
669
                        Source:
670
                    </xsl:when>
671
                    <xsl:when test="@ind2=8">
672
                        <xsl:if test="marc:subfield[@code='i']">
673
                            <xsl:value-of select="marc:subfield[@code='i']"/>
674
                        </xsl:if>
675
                    </xsl:when>
676
                </xsl:choose>
677
                </span>
678
                <xsl:variable name="f773">
679
                    <xsl:call-template name="chopPunctuation">
680
                        <xsl:with-param name="chopString">
681
                            <xsl:call-template name="subfieldSelect">
682
                                <xsl:with-param name="codes">a_t</xsl:with-param>
683
                            </xsl:call-template>
684
                        </xsl:with-param>
685
                    </xsl:call-template>
686
                </xsl:variable>
687
                <xsl:choose>
688
                    <xsl:when test="$UseControlNumber = '1' and marc:subfield[@code='w']">
689
                        <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>
690
                        <xsl:value-of select="translate($f773, '()', '')"/>
691
                        </a>
692
                    </xsl:when>
693
                    <xsl:when test="marc:subfield[@code='0']">
694
                        <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>
695
                        <xsl:value-of select="$f773"/>
696
                        </a>
697
                    </xsl:when>
698
                    <xsl:otherwise>
699
                        <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>
700
                        <xsl:value-of select="$f773"/>
701
                        </a>
702
                    </xsl:otherwise>
703
                </xsl:choose>
704
                <xsl:if test="marc:subfield[@code='g']">
705
                    <xsl:text> </xsl:text><xsl:value-of select="marc:subfield[@code='g']"/>
706
                </xsl:if>
707
                </span>
708
709
                <xsl:if test="marc:subfield[@code='n']">
710
                    <span class="results_summary in_note"><xsl:value-of select="marc:subfield[@code='n']"/></span>
711
                </xsl:if>
712
669
            </xsl:if>
713
            </xsl:if>
670
        </xsl:for-each>
714
        </xsl:for-each>
671
    </xsl:if>
715
    </xsl:if>
(-)a/opac/opac-basket.pl (+2 lines)
Lines 75-80 foreach my $biblionumber ( @bibs ) { Link Here
75
75
76
    # No filtering on the item records needed for the record itself
76
    # No filtering on the item records needed for the record itself
77
    # since the only reason item information is grabbed is because of branchcodes.
77
    # since the only reason item information is grabbed is because of branchcodes.
78
    my $biblio = Koha::Biblios->find($biblionumber);
78
    my $record = &GetMarcBiblio({ biblionumber => $biblionumber });
79
    my $record = &GetMarcBiblio({ biblionumber => $biblionumber });
79
    my $framework = &GetFrameworkCode( $biblionumber );
80
    my $framework = &GetFrameworkCode( $biblionumber );
80
    $record_processor->options({
81
    $record_processor->options({
Lines 150-155 foreach my $biblionumber ( @bibs ) { Link Here
150
    $dat->{MARCSERIES}  = $marcseriesarray;
151
    $dat->{MARCSERIES}  = $marcseriesarray;
151
    $dat->{MARCURLS}    = $marcurlsarray;
152
    $dat->{MARCURLS}    = $marcurlsarray;
152
    $dat->{HASAUTHORS}  = $hasauthors;
153
    $dat->{HASAUTHORS}  = $hasauthors;
154
    $dat->{HOSTITEMENTRIES} = $biblio->get_host_item_entries;
153
155
154
    if ( C4::Context->preference("BiblioDefaultView") eq "normal" ) {
156
    if ( C4::Context->preference("BiblioDefaultView") eq "normal" ) {
155
        $dat->{dest} = "opac-detail.pl";
157
        $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 / +33 lines)
Lines 17-23 Link Here
17
17
18
use Modern::Perl;
18
use Modern::Perl;
19
19
20
use Test::More tests => 14;
20
use Test::More tests => 15;
21
21
22
use C4::Biblio;
22
use C4::Biblio;
23
use Koha::Database;
23
use Koha::Database;
Lines 614-619 subtest 'get_marc_notes() UNIMARC tests' => sub { Link Here
614
    is( $notes->[0]->{marcnote}, 'Note1', 'First note' );
614
    is( $notes->[0]->{marcnote}, 'Note1', 'First note' );
615
    is( $notes->[1]->{marcnote}, 'Note2', 'Second note' );
615
    is( $notes->[1]->{marcnote}, 'Note2', 'Second note' );
616
    is( @$notes, 2, 'No more notes' );
616
    is( @$notes, 2, 'No more notes' );
617
};
618
619
subtest 'get_host_item_entries() tests' => sub {
620
621
    plan tests => 2;
622
623
    $schema->storage->txn_begin;
624
625
    # Set up the host record and an item
626
    my $host_biblio = $builder->build_sample_biblio;
627
    my $host_item = $builder->build_sample_item({ biblionumber => $host_biblio->biblionumber });
628
629
    # Set up the test record
630
    my $test_biblio = $builder->build_sample_biblio;
631
    my $record = $test_biblio->metadata->record;
632
633
    # Link the host item to the test record
634
    my $field = MARC::Field->new('245','','','a' => "Test title");
635
    $record->append_fields( $field );
636
    $field = MARC::Field->new('773','0','','0' => $host_biblio->biblionumber);
637
    $record->append_fields( $field );
638
    $field = MARC::Field->new('773','0','','9' => $host_item->itemnumber);
639
    $record->append_fields( $field );
640
641
    # Re-retrieve the record
642
    C4::Biblio::ModBiblio( $record, $test_biblio->biblionumber );
643
    $test_biblio = Koha::Biblios->find( $test_biblio->biblionumber );
644
645
    my $host_items = $test_biblio->get_host_item_entries;
646
    is( @{$host_items}, 1, "Correctly retrieved number of attached host item entries" );
647
    my $test_host_biblionumber = @{$host_items}[0]->subfield('0');
648
    is( $test_host_biblionumber, $host_biblio->biblionumber, "Correctly retrieved data about host item entry");
617
649
618
    $schema->storage->txn_rollback;
650
    $schema->storage->txn_rollback;
619
};
651
};
(-)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