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

(-)a/Koha/Biblio.pm (+4 lines)
Lines 757-770 sub custom_cover_image_url { Link Here
757
    my $url = C4::Context->preference('CustomCoverImagesURL');
757
    my $url = C4::Context->preference('CustomCoverImagesURL');
758
    if ( $url =~ m|{isbn}| ) {
758
    if ( $url =~ m|{isbn}| ) {
759
        my $isbn = $self->biblioitem->isbn;
759
        my $isbn = $self->biblioitem->isbn;
760
        return unless $isbn;
760
        $url =~ s|{isbn}|$isbn|g;
761
        $url =~ s|{isbn}|$isbn|g;
761
    }
762
    }
762
    if ( $url =~ m|{normalized_isbn}| ) {
763
    if ( $url =~ m|{normalized_isbn}| ) {
763
        my $normalized_isbn = C4::Koha::GetNormalizedISBN($self->biblioitem->isbn);
764
        my $normalized_isbn = C4::Koha::GetNormalizedISBN($self->biblioitem->isbn);
765
        return unless $normalized_isbn;
764
        $url =~ s|{normalized_isbn}|$normalized_isbn|g;
766
        $url =~ s|{normalized_isbn}|$normalized_isbn|g;
765
    }
767
    }
766
    if ( $url =~ m|{issn}| ) {
768
    if ( $url =~ m|{issn}| ) {
767
        my $issn = $self->biblioitem->issn;
769
        my $issn = $self->biblioitem->issn;
770
        return unless $issn;
768
        $url =~ s|{issn}|$issn|g;
771
        $url =~ s|{issn}|$issn|g;
769
    }
772
    }
770
773
Lines 774-779 sub custom_cover_image_url { Link Here
774
        my $subfield = $+{subfield};
777
        my $subfield = $+{subfield};
775
        my $marc_record = $self->metadata->record;
778
        my $marc_record = $self->metadata->record;
776
        my $value = $marc_record->subfield($field, $subfield);
779
        my $value = $marc_record->subfield($field, $subfield);
780
        return unless $value;
777
        $url =~ s|$re|$value|;
781
        $url =~ s|$re|$value|;
778
    }
782
    }
779
783
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt (-6 / +9 lines)
Lines 213-224 Link Here
213
                    [% END %]
213
                    [% END %]
214
214
215
                    [% IF Koha.Preference('CustomCoverImages') && Koha.Preference('CustomCoverImagesURL') %]
215
                    [% IF Koha.Preference('CustomCoverImages') && Koha.Preference('CustomCoverImagesURL') %]
216
                        <div class="cover-image" id="custom-coverimg">
216
                        [% SET custom_cover_image_url = biblio.custom_cover_image_url %]
217
                            <a class="custom_cover_image" href="[% biblio.custom_cover_image_url | url %]">
217
                        [% IF custom_cover_image_url %]
218
                                <img id="custom-img" alt="Custom cover image" src="[% biblio.custom_cover_image_url | url %]" />
218
                            <div class="cover-image" id="custom-coverimg">
219
                            </a>
219
                                <a class="custom_cover_image" href="[% custom_cover_image_url | url %]">
220
                            <div class="hint">Custom cover image</div>
220
                                    <img id="custom-img" alt="Custom cover image" src="[% custom_cover_image_url | url %]" />
221
                        </div>
221
                                </a>
222
                                <div class="hint">Custom cover image</div>
223
                            </div>
224
                        [% END %]
222
                    [% END %]
225
                    [% END %]
223
                </div> <!-- /.cover-slider -->
226
                </div> <!-- /.cover-slider -->
224
            </div> <!-- /.bookcoverimg.col-xs-3 -->
227
            </div> <!-- /.bookcoverimg.col-xs-3 -->
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/results.tt (-1 / +4 lines)
Lines 453-459 Link Here
453
                                                    [% END %]
453
                                                    [% END %]
454
454
455
                                                    [% IF Koha.Preference('CustomCoverImages') && Koha.Preference('CustomCoverImagesURL') %]
455
                                                    [% IF Koha.Preference('CustomCoverImages') && Koha.Preference('CustomCoverImagesURL') %]
456
                                                        <a class="custom_cover_image" href="[% SEARCH_RESULT.biblio_object.custom_cover_image_url | url %]"><img alt="Cover image" src="[% SEARCH_RESULT.biblio_object.custom_cover_image_url | url %]" />
456
                                                        [% SET custom_cover_image_url = SEARCH_RESULT.biblio_object.custom_cover_image_url %]
457
                                                        [% IF custom_cover_image_url %]
458
                                                            <a class="custom_cover_image" href="[% custom_cover_image_url | url %]"><img alt="Cover image" src="[% custom_cover_image_url | url %]" />
459
                                                        [% END %]
457
                                                    [% END %]
460
                                                    [% END %]
458
                                                </td>
461
                                                </td>
459
                                            [% END # /IF( AmazonCoverImages || LocalCoverImages || AdlibrisEnabled || IntranetCoce )%]
462
                                            [% END # /IF( AmazonCoverImages || LocalCoverImages || AdlibrisEnabled || IntranetCoce )%]
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/includes/shelfbrowser.inc (-3 / +6 lines)
Lines 71-79 Link Here
71
                                        [% END %]
71
                                        [% END %]
72
                                    [% END %]
72
                                    [% END %]
73
                                    [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
73
                                    [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
74
                                        <span class="custom_cover_image">
74
                                        [% SET custom_cover_image_url = item.biblio_object.custom_cover_image_url %]
75
                                            <img alt="Cover image" src="[% item.biblio_object.custom_cover_image_url | url %]" />
75
                                        [% IF custom_cover_image_url %]
76
                                        </span>
76
                                            <span class="custom_cover_image">
77
                                                <img alt="Cover image" src="[% custom_cover_image_url | url %]" />
78
                                            </span>
79
                                        [% END %]
77
                                    [% END %]
80
                                    [% END %]
78
81
79
                                </a>
82
                                </a>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt (-4 / +7 lines)
Lines 113-122 Link Here
113
                            [% END %]
113
                            [% END %]
114
                        [% END %]
114
                        [% END %]
115
                        [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
115
                        [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
116
                            [% IF ( OPACURLOpenInNewWindow ) %]
116
                            [% SET custom_cover_image_url = biblio.custom_cover_image_url %]
117
                                <a class="custom_cover_image" href="[% biblio.custom_cover_image_url | url %]" target="_blank" rel="noreferrer"><img alt="Cover image" src="[% biblio.custom_cover_image_url | url %]" /></a>
117
                            [% IF custom_cover_image_url %]
118
                            [% ELSE %]
118
                                [% IF ( OPACURLOpenInNewWindow ) %]
119
                                <a class="custom_cover_image" href="[% biblio.custom_cover_image_url | url %]"><img alt="Cover image" src="[% biblio.custom_cover_image_url | url %]" /></a>
119
                                    <a class="custom_cover_image" href="[% custom_cover_image_url | url %]" target="_blank" rel="noreferrer"><img alt="Cover image" src="[% custom_cover_image_url | url %]" /></a>
120
                                [% ELSE %]
121
                                    <a class="custom_cover_image" href="[% custom_cover_image_url | url %]"><img alt="Cover image" src="[% custom_cover_image_url | url %]" /></a>
122
                                [% END %]
120
                            [% END %]
123
                            [% END %]
121
                        [% END %]
124
                        [% END %]
122
                    </div><!-- / #bookcover -->
125
                    </div><!-- / #bookcover -->
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-opensearch.tt (-1 / +4 lines)
Lines 66-72 Link Here
66
[% IF ( BakerTaylorEnabled ) %][% IF bt_id %]<a href="https://[% BakerTaylorBookstoreURL |url %][% bt_id | uri %]"><img alt="See Baker &amp; Taylor" src="[% BakerTaylorImageURL |url %][% bt_id | uri %]" /></a>[% END %][% END %]
66
[% IF ( BakerTaylorEnabled ) %][% IF bt_id %]<a href="https://[% BakerTaylorBookstoreURL |url %][% bt_id | uri %]"><img alt="See Baker &amp; Taylor" src="[% BakerTaylorImageURL |url %][% bt_id | uri %]" /></a>[% END %][% END %]
67
67
68
[% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
68
[% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
69
    <img alt="Cover image" src="[% SEARCH_RESULT.biblio_object.custom_cover_image_url | url %]" />
69
    [% SET custom_cover_image_url = SEARCH_RESULT.biblio_object.custom_cover_image_url %]
70
    [% IF custom_cover_image_url %]
71
        <img alt="Cover image" src="[% custom_cover_image_url | url %]" />
72
    [% END %]
70
[% END %]
73
[% END %]
71
74
72
	   <p>[% IF ( SEARCH_RESULT.author ) %]By [% SEARCH_RESULT.author | html %]. [% END %]
75
	   <p>[% IF ( SEARCH_RESULT.author ) %]By [% SEARCH_RESULT.author | html %]. [% END %]
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-results.tt (-4 / +7 lines)
Lines 371-380 Link Here
371
                                                    [% END %]
371
                                                    [% END %]
372
372
373
                                                    [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
373
                                                    [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
374
                                                         [% IF ( OPACURLOpenInNewWindow ) %]
374
                                                        [% SET custom_cover_image_url = SEARCH_RESULT.biblio_object.custom_cover_image_url %]
375
                                                            <a class="custom_cover_image" href="[% SEARCH_RESULT.biblio_object.custom_cover_image_url | url %]" target="_blank" rel="noreferrer"><img alt="Cover image" src="[% SEARCH_RESULT.biblio_object.custom_cover_image_url | url %]" /></a>
375
                                                        [% IF custom_cover_image_url %]
376
                                                        [% ELSE %]
376
                                                            [% IF ( OPACURLOpenInNewWindow ) %]
377
                                                            <a class="custom_cover_image" href="[% SEARCH_RESULT.biblio_object.custom_cover_image_url | url %]"><img alt="Cover image" src="[% SEARCH_RESULT.biblio_object.custom_cover_image_url | url %]" /></a>
377
                                                                <a class="custom_cover_image" href="[% custom_cover_image_url | url %]" target="_blank" rel="noreferrer"><img alt="Cover image" src="[% custom_cover_image_url | url %]" /></a>
378
                                                            [% ELSE %]
379
                                                                <a class="custom_cover_image" href="[% custom_cover_image_url | url %]"><img alt="Cover image" src="[% custom_cover_image_url | url %]" /></a>
380
                                                            [% END %]
378
                                                        [% END %]
381
                                                        [% END %]
379
                                                    [% END %]
382
                                                    [% END %]
380
383
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt (-7 / +10 lines)
Lines 453-468 Link Here
453
                                                            [% END %]
453
                                                            [% END %]
454
454
455
                                                            [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
455
                                                            [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
456
                                                                [% IF ( itemsloo.BiblioDefaultViewmarc ) %]
456
                                                                [% SET custom_cover_image_url = itemsloo.biblio_object.custom_cover_image_url %]
457
                                                                    <a class="custom_cover_image" href="/cgi-bin/koha/opac-MARCdetail.pl?biblionumber=[% itemsloo.biblionumber |url %]">
457
                                                                [% IF custom_cover_image_url %]
458
                                                                [% ELSE %]
458
                                                                    [% IF ( itemsloo.BiblioDefaultViewmarc ) %]
459
                                                                    [% IF ( itemsloo.BiblioDefaultViewisbd ) %]
459
                                                                        <a class="custom_cover_image" href="/cgi-bin/koha/opac-MARCdetail.pl?biblionumber=[% itemsloo.biblionumber |url %]">
460
                                                                        <a class="custom_cover_image" href="/cgi-bin/koha/opac-ISBDdetail.pl?biblionumber=[% itemsloo.biblionumber |url %]">
461
                                                                    [% ELSE %]
460
                                                                    [% ELSE %]
462
                                                                        <a class="custom_cover_image" href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% itemsloo.biblionumber |url %]">
461
                                                                        [% IF ( itemsloo.BiblioDefaultViewisbd ) %]
462
                                                                            <a class="custom_cover_image" href="/cgi-bin/koha/opac-ISBDdetail.pl?biblionumber=[% itemsloo.biblionumber |url %]">
463
                                                                        [% ELSE %]
464
                                                                            <a class="custom_cover_image" href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% itemsloo.biblionumber |url %]">
465
                                                                        [% END %]
463
                                                                    [% END %]
466
                                                                    [% END %]
467
                                                                    <img alt="Cover image" src="[% custom_cover_image_url | url %]" /></a>
464
                                                                [% END %]
468
                                                                [% END %]
465
                                                                <img alt="Cover image" src="[% itemsloo.biblio_object.custom_cover_image_url | url %]" /></a>
466
                                                            [% END %]
469
                                                            [% END %]
467
470
468
                                                        </div>
471
                                                        </div>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-showreviews-rss.tt (-1 / +4 lines)
Lines 25-31 Link Here
25
[% IF ( BakerTaylorEnabled && bt_id ) %]<a href="https://[% BakerTaylorBookstoreURL | uri %][% bt_id | uri %]"><img alt="See Baker &amp; Taylor" src="[% BakerTaylorImageURL | html %][% bt_id | html %]" /></a>[% END %]
25
[% IF ( BakerTaylorEnabled && bt_id ) %]<a href="https://[% BakerTaylorBookstoreURL | uri %][% bt_id | uri %]"><img alt="See Baker &amp; Taylor" src="[% BakerTaylorImageURL | html %][% bt_id | html %]" /></a>[% END %]
26
26
27
[% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
27
[% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
28
    <a href="[% review.biblio_object.custom_cover_image_url | url %]"><img alt="Cover image" src="[% review.biblio_object.custom_cover_image_url | url %]" /></a>
28
    [% SET custom_cover_image_url = review.biblio_object.custom_cover_image_url %]
29
    [% IF custom_cover_image_url %]
30
        <a href="[% custom_cover_image_url | url %]"><img alt="Cover image" src="[% custom_cover_image_url | url %]" /></a>
31
    [% END %]
29
[% END %]
32
[% END %]
30
33
31
        [% IF ( review.author ) %]<p>By [% review.author | html %].</p> [% END %]
34
        [% IF ( review.author ) %]<p>By [% review.author | html %].</p> [% END %]
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-showreviews.tt (-1 / +4 lines)
Lines 158-164 Link Here
158
                                        [% END %]
158
                                        [% END %]
159
159
160
                                        [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
160
                                        [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
161
                                            <a class="custom_cover_image" href="[% review.biblio_object.custom_cover_image_url | url %]"><img alt="Cover image" src="[% review.biblio_object.custom_cover_image_url | url %]" /></a>
161
                                            [% SET custom_cover_image_url = review.biblio_object.custom_cover_image_url %]
162
                                            [% IF custom_cover_image_url %]
163
                                                <a class="custom_cover_image" href="[% custom_cover_image_url | url %]"><img alt="Cover image" src="[% custom_cover_image_url | url %]" /></a>
164
                                            [% END %]
162
                                        [% END %]
165
                                        [% END %]
163
166
164
                                    </td>
167
                                    </td>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt (-1 / +4 lines)
Lines 292-298 Link Here
292
                                                    [% END %]
292
                                                    [% END %]
293
293
294
                                                    [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
294
                                                    [% IF Koha.Preference('OPACCustomCoverImages') AND Koha.Preference('CustomCoverImagesURL') %]
295
                                                        <a class="custom_cover_image" href="[% ISSUE.biblio_object.custom_cover_image_url | url %]"><img alt="Cover image" src="[% ISSUE.biblio_object.custom_cover_image_url | url %]" /></a>
295
                                                        [% SET custom_cover_image_url = ISSUE.biblio_object.custom_cover_image_url %]
296
                                                        [% IF custom_cover_image_url %]
297
                                                            <a class="custom_cover_image" href="[% custom_cover_image_url | url %]"><img alt="Cover image" src="[% custom_cover_image_url | url %]" /></a>
298
                                                        [% END %]
296
                                                    [% END %]
299
                                                    [% END %]
297
300
298
                                                    [% IF ( SyndeticsEnabled && SyndeticsCoverImages ) %]
301
                                                    [% IF ( SyndeticsEnabled && SyndeticsCoverImages ) %]
(-)a/t/db_dependent/Koha/Biblios.t (-2 / +5 lines)
Lines 189-195 subtest 'can_be_transferred' => sub { Link Here
189
};
189
};
190
190
191
subtest 'custom_cover_image_url' => sub {
191
subtest 'custom_cover_image_url' => sub {
192
    plan tests => 3;
192
    plan tests => 4;
193
193
194
    t::lib::Mocks::mock_preference( 'CustomCoverImagesURL', 'https://my_url/{isbn}_{issn}.png' );
194
    t::lib::Mocks::mock_preference( 'CustomCoverImagesURL', 'https://my_url/{isbn}_{issn}.png' );
195
195
Lines 213-218 subtest 'custom_cover_image_url' => sub { Link Here
213
    t::lib::Mocks::mock_preference( 'CustomCoverImagesURL', 'https://my_url/{normalized_isbn}.png' );
213
    t::lib::Mocks::mock_preference( 'CustomCoverImagesURL', 'https://my_url/{normalized_isbn}.png' );
214
    my $normalized_isbn = C4::Koha::GetNormalizedISBN($isbn);
214
    my $normalized_isbn = C4::Koha::GetNormalizedISBN($isbn);
215
    is( $biblio->custom_cover_image_url, "https://my_url/$normalized_isbn.png" );
215
    is( $biblio->custom_cover_image_url, "https://my_url/$normalized_isbn.png" );
216
217
    $biblio->biblioitem->isbn('')->store;
218
    is( $biblio->custom_cover_image_url, undef, "Don't generate the url if the biblio does not have the value needed to generate it" );
219
216
};
220
};
217
221
218
$schema->storage->txn_rollback;
222
$schema->storage->txn_rollback;
219
- 

Return to bug 26921