Bug 15210 - Novelist throws an error if no ISBN
authorNick <nick@bywatersolutions.com>
Wed, 18 Nov 2015 16:49:15 +0000 (11:49 -0500)
committerBrendan A Gallagher <brendan@bywatersolutions.com>
Wed, 30 Dec 2015 03:54:33 +0000 (03:54 +0000)
This patch makes opac-detail.tt check for an ISBN before attempting to load Novelist content and prevents a js error which breaks other code.

To test:
1 - Enable novelist
2 - Add a visible change to OPACUserJS eg: $(document).ready(function() {$("body").css("background-color","pink");});
3 - Load a record with no ISBN
4 - Note you do not see a color change in the body and that there is an error in the console
5 - Apply patch
6 - Reload the record
7 - You should see the color change and no error in the js

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt

index 951029a..3b5c404 100644 (file)
                         </span>
                     [% END # / IF BakerTaylorContentURL %]
 
-                    [% IF ( NovelistSelectProfile ) %]
+                    [% IF ( NovelistSelectProfile && normalized_isbn ) %]
                         [% IF ( NovelistSelectView == 'above') %]
                             <span class="results_summary">
                             <span class="label">Novelist Select: </span>
                             <li id="tab_comments"><a href="#comments">Comments ( [% reviews.size || 0 %] )</a></li>
                         [% END %]
 
-                        [% IF ( NovelistSelectProfile ) %]
+                        [% IF ( NovelistSelectProfile && normalized_isbn ) %]
                             [% IF ( NovelistSelectView == 'tab') %]
                                 <li id="tab_NovelistSelect"> <a href="#NovelistSelect">Novelist Select</a></li>
                             [% END %]
                         [% END # / IF SyndeticsReviews && SYNDETICS_REVIEWS %]
                     [% END # / IF SyndeticsEnabled %]
 
-                    [% IF ( NovelistSelectProfile && NovelistSelectView == 'tab') %]
+                    [% IF ( NovelistSelectProfile && NovelistSelectView == 'tab' && normalized_isbn ) %]
                        <div id="NovelistSelect">
                             <div data-novelist-novelistselect=[% normalized_isbn %]></div>
                        </div>
                         [% END %]
                 </div> <!-- / #bibliodescriptions -->
 
-                [% IF ( NovelistSelectProfile && NovelistSelectView == 'below' ) %]
+                [% IF ( NovelistSelectProfile && NovelistSelectView == 'below' && normalized_isbn ) %]
                     <div id="NovelistSelect">
                         <h3>Novelist Select</h3>
                         <div data-novelist-novelistselect="[% normalized_isbn %]"></div>
 
                 [% INCLUDE 'opac-detail-sidebar.inc' %]
 
-                [% IF ( NovelistSelectProfile && NovelistSelectView == 'right') %]
+                [% IF ( NovelistSelectProfile && NovelistSelectView == 'right' && normalized_isbn ) %]
                     <div id="NovelistSelect">
                         <h4>Novelist Select</h4>
                         <div data-novelist-novelistselect=[% normalized_isbn %]></div>
             [% END %]
         [% END %]
 
-        [% IF ( NovelistSelectProfile ) %]
+        [% IF ( NovelistSelectProfile && normalized_isbn ) %]
             <script type="text/javascript" src="https://imageserver.ebscohost.com/novelistselect/ns2init.js"></script>
         [% END %]
 
     [% IF OPACLocalCoverImages %]
         KOHA.LocalCover.GetCoverFromBibnumber(true);
     [% END %]
-    [% IF ( NovelistSelectProfile ) %]
+    [% IF ( NovelistSelectProfile && normalized_isbn ) %]
         novSelect.loadContentForISBN('[% normalized_isbn %]','[% NovelistSelectProfile %]', '[% NovelistSelectPassword %]', function(d){});
     [% END %]