Bug 5287: Add floating toolbar to search results in OPAC
[koha-equinox.git] / koha-tmpl / opac-tmpl / bootstrap / en / modules / opac-results.tt
1 [% USE raw %]
2 [% USE Asset %]
3 [% USE Koha %]
4 [% SET TagsShowEnabled = ( ( Koha.Preference( 'TagsEnabled' ) == 1 ) && TagsShowOnList ) %]
5 [% SET TagsInputEnabled = ( ( Koha.Preference( 'opacuserlogin' ) == 1 ) && ( Koha.Preference( 'TagsEnabled' ) == 1 ) && TagsInputOnList ) %]
6 [% SET AdlibrisEnabled = Koha.Preference('AdlibrisCoversEnabled') %]
7 [% SET AdlibrisURL = Koha.Preference('AdlibrisCoversURL') %]
8
9 [% IF firstPage %]
10      [% SET OverDriveEnabled = Koha.Preference('OverDriveClientKey') && Koha.Preference('OverDriveClientSecret') %]
11      [% SET RecordedBooksEnabled = Koha.Preference('RecordedBooksLibraryID') && Koha.Preference('RecordedBooksClientSecret') %]
12 [% END %]
13
14 [% INCLUDE 'doc-head-open.inc' %]
15 <title>[% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog &rsaquo;
16 [% IF ( searchdesc ) %]
17     [% IF ( ms_value ) %]
18         Results of search for '[% ms_value | html %]'
19     [% ELSE %]
20         Search results
21     [% END %]
22 [% ELSE %]
23     You did not specify any search criteria.
24 [% END %]</title>
25 [% INCLUDE 'doc-head-close.inc' %]
26
27 <link rel="alternate" type="application/rss+xml" title="[% LibraryName | html %] Search RSS feed" href="[% OPACBaseURL | url %]/cgi-bin/koha/opac-search.pl?[% query_cgi | $raw %][% limit_cgi | $raw %]&amp;count=[% countrss |uri %]&amp;sort_by=acqdate_dsc&amp;format=rss2" />
28 </head>
29 [% BLOCK cssinclude %][% END %]
30 [% INCLUDE 'bodytag.inc' bodyid='results' bodyclass='scrollto' %]
31 [% INCLUDE 'masthead.inc' %]
32
33     <div class="main">
34         <ul class="breadcrumb">
35             <li><a href="/cgi-bin/koha/opac-main.pl">Home</a> <span class="divider">&rsaquo;</span></li>
36                 [% IF ( searchdesc ) %]
37                     [% IF ( ReturnPath ) %]
38                         <li>
39                             <a href="[% ReturnPath | url %]">Advanced search</a> <span class="divider">&rsaquo;</span>
40                         </li>
41                     [% END %]
42                     <li>
43                         [% IF ( ms_value ) %]
44                             <a href="#" title="You searched [% IF ( query_desc ) %] for '[% query_desc | html %]'[% END %][% IF ( limit_desc ) %] with limit(s): '[% limit_desc | html %]'[% END %]">Results of search for '[% ms_value | html %]'</a>
45                         [% ELSE %]
46                             <a href="#" title="You searched [% IF ( query_desc ) %] for '[% query_desc | html %]'[% END %][% IF ( limit_desc ) %] with limit(s): '[% limit_desc | html %]'[% END %]">Search results</a>
47                         [% END %]
48                     </li>
49                 [% ELSE %]
50                     <li>
51                         <a href="#">You did not specify any search criteria</a>
52                     </li>
53                 [% END %]
54         </ul>
55
56         [% UNLESS ( total ) %]
57             <div class="container-fluid maincontent">
58                 <div class="row-fluid">
59                     <div class="span12">
60                         <strong>No results found!</strong>
61                         <p>
62                             [% IF ( searchdesc ) %]
63                                 No results found for that in [% LibraryName | html %] catalog.
64                                 <a href="[% OPACBaseURL | url %]/cgi-bin/koha/opac-search.pl?[% query_cgi | $raw %][% limit_cgi | $raw %]&amp;format=rss2" class="rsssearchlink noprint">
65                                     <i class="fa fa-rss rsssearchicon" title="Subscribe to this search"></i>
66                                 </a>
67                             [% ELSE %]
68                                 You did not specify any search criteria.
69                             [% END %]
70                         </p>
71                         [% IF ( ReturnPath ) %]
72                            <div class="returntosearch">
73                                 <p><a href="[% ReturnPath | url %]">Return to the last advanced search</a></p>
74                             </div>
75                         [% END %]
76                         [% IF ( OPACNoResultsFound ) %]
77                             <div id="noresultsfound">
78                                 [% OPACNoResultsFound | $raw %]
79                             </div>
80                         [% END %]
81                     </div> <!-- / .span12 -->
82                 </div> <!-- / .row-fluid -->
83             </div> <!-- / .container-fluid -->
84         [% END # / UNLESS searchdesc %]
85
86         <div id="maincontent" class="container-fluid">
87             <div class="row-fluid">
88                 [% IF ( opacfacets && total ) %]
89                     <div class="span2">
90                         <div id="facetcontainer">
91                             <!-- FACETS START -->
92                             [% INCLUDE 'opac-facets.inc' %]
93                             <!-- FACETS END -->
94                         </div>
95                     </div>
96                 [% END %]
97
98                 [% IF ( opacfacets && total ) %]<div class="span10 maincontent">[% ELSE %]<div class="span12 maincontent">[% END %]
99
100                 [% IF ( searchdesc ) %]
101                     <p id="numresults">
102                     [% IF ( total ) %]<strong>Your search returned [% total | html %] results.</strong>
103                         [% IF ( related ) %]
104                             (related searches:
105                                 [% FOREACH relate IN related %]
106                                     [% relate.related_search | html %]
107                                 [% END %]
108                             ).
109                         [% END %]
110                         <a href="[% OPACBaseURL | url %]/cgi-bin/koha/opac-search.pl?[% query_cgi | $raw %][% limit_cgi | $raw %]&amp;format=rss2" class="rsssearchlink noprint">
111                             <i class="fa fa-rss rsssearchicon" title="Subscribe to this search"></i>
112                         </a>
113                     [% END # / IF total %]
114                     </p>
115                 [% END # / IF searchdesc %]
116
117                 <div id="userresults">
118                     [% IF ( DidYouMean ) %]
119                         <div id="didyoumean">Not what you expected? Check for <a href="/cgi-bin/koha/svc/suggestion?render=standalone&amp;q=[% querystring |uri %]">suggestions</a></div>
120                     [% END %]
121
122                     [% IF ( koha_spsuggest ) %]
123                         Did you mean:
124                         <ul style="list-style: none;">
125                             [% FOREACH SPELL_SUGGES IN SPELL_SUGGEST %]
126                             <li>
127                                 <a href="/cgi-bin/koha/opac-search.pl?q=[% SPELL_SUGGES.spsuggestion | uri %]">[% SPELL_SUGGES.spsuggestion | html %]</a>
128                             </li>
129                             [% END %]
130                         </ul>
131                     [% END # / IF koha_spsuggest%]
132                     [% IF ( total ) %]
133                         [% IF ( ReturnPath ) %]
134                             <div class="returntosearch">
135                                 <p><a href="[% ReturnPath | url %]">Return to the last advanced search</a></p>
136                             </div>
137                         [% END %]
138                     [% END %]
139                     [% IF ( query_error ) %]
140                         <div class="dialog alert">
141                             <h4>Error:</h4>
142                             [% query_error | html %]
143                         </div>
144                     [% END %]
145
146                     <!-- Search Results Table -->
147                     [% IF ( total ) %]
148
149                         <div class="searchresults">
150                             <form action="/cgi-bin/koha/opac-search.pl" method="get" name="bookbag_form" id="bookbag_form" class="checkboxed">
151                                 [% IF ( searchdesc ) %]
152                                     [% FOREACH QUERY_INPUT IN QUERY_INPUTS %]
153                                         <input type="hidden" name="[% QUERY_INPUT.input_name | html %]" value="[% QUERY_INPUT.input_value | html %]"/>
154                                     [% END %]
155                                     [% FOREACH LIMIT_INPUT IN LIMIT_INPUTS %]
156                                         <input type="hidden" name="[% LIMIT_INPUT.input_name | html %]" value="[% LIMIT_INPUT.input_value | html %]"/>
157                                     [% END %]
158                                 [% END # IF /searchdesc %]
159
160                                 <div id="floating">
161                                     <div id="toolbar" class="toolbar clearfix">
162                                         <div id="top-pages" class="pull-left">[% INCLUDE 'page-numbers.inc' %]</div>
163                                         [% UNLESS tag %]
164                                             <div class="sort_by pull-right">
165                                                 <select id="sort_by" class="resort" name="sort_by"> [% INCLUDE 'resort_form.inc' %] </select>
166                                                 <input type="submit" class="btn btn-small clearfix" id="sortsubmit" value="Go" />
167                                             </div>
168                                         [% END %]
169                                     </div> <!-- / #toolbar -->
170
171                                     <div id="selections-toolbar" class="toolbar noprint">
172                                         [% IF ( OpacHighlightedWords ) %]
173                                             <div class="highlight_controls noprint">
174                                                 <a href="#" class="highlight_toggle" id="highlight_toggle_off">Unhighlight</a>
175                                                 <a href="#" class="highlight_toggle" id="highlight_toggle_on">Highlight</a>
176                                             </div>
177                                             <span class="sep">|</span>
178                                         [% END %]
179                                         <!-- checkall, clearall are now needed for placehold -->
180                                         <span class="checkall"></span>
181                                         <span class="clearall"></span> <span class="sep">|</span>
182
183                                             <span class="links">
184                                                 [% IF ( ( Koha.Preference( 'opacbookbag' ) == 1 ) || ( Koha.Preference( 'virtualshelves' ) == 1 ) ) %]
185                                                     <span class="addto"></span>
186                                                 [% END %]
187                                                 <span id="placehold"><!-- input class="submit" type="submit" value="Place Hold"/ --></span>
188
189                                                 [% IF ( TagsInputEnabled && loggedinusername ) %]
190                                                     <span id="tagsel_span">
191                                                         <input id="tagsel_tag" class="disabled" type="submit" value="Tag"/>
192                                                     </span>
193                                                     <div id="tagsel_form" style="display:none">
194                                                         <label for="tagsel_new">New tag:</label>
195                                                         <input type="text" name="tagsel_new" id="tagsel_new" maxlength="100" />
196                                                         <input id="tagsel_button" name="tagsel_button" class="tagsel_button btn btn-small" title="Add" type="submit" value="Add" />
197                                                         <a href="#" id="tagsel_cancel">(done)</a>
198                                                     </div>
199                                                     <div id="tagsel_status" class="tagsel_tatus" style="display:none;">
200                                                         Tag status here.
201                                                     </div>
202                                                 [% END %]
203                                             </span> <!-- / .links -->
204                                     </div> <!-- / #selections-toolbar -->
205                                 </div> <!-- /#floating -->
206
207                                 <!-- TABLE RESULTS START -->
208                                 <table class="table table-striped">
209
210                                     <!-- Actual Search Results -->
211                                     [% FOREACH SEARCH_RESULT IN SEARCH_RESULTS %]
212                                         <tr>
213                                             [% # Cell 1: Checkbox %]
214                                             <td class="select selectcol">
215                                                 [% IF Koha.Preference( 'opacbookbag' ) == 1 %]
216                                                     <input type="checkbox" class="cb" id="bib[% SEARCH_RESULT.biblionumber | html %]" name="biblionumber" value="[% SEARCH_RESULT.biblionumber | html %]" /> <label for="bib[% SEARCH_RESULT.biblionumber | html %]"></label>
217                                                 [% ELSE %]
218                                                     [% IF Koha.Preference( 'virtualshelves' ) == 1 %]
219                                                         <input type="checkbox" class="cb" id="bib[% SEARCH_RESULT.biblionumber | html %]" name="biblionumber" value="[% SEARCH_RESULT.biblionumber | html %]" /> <label for="bib[% SEARCH_RESULT.biblionumber | html %]"></label>
220                                                     [% ELSE %]
221                                                         [% IF Koha.Preference( 'RequestOnOpac' ) == 1 %]
222                                                             [% UNLESS ( SEARCH_RESULT.norequests ) %]
223                                                                 [% IF Koha.Preference( 'opacuserlogin' ) == 1 %]<input type="checkbox" class="cb" id="bib[% SEARCH_RESULT.biblionumber | html %]" name="biblionumber" value="[% SEARCH_RESULT.biblionumber | html %]" /> <label for="bib[% SEARCH_RESULT.biblionumber | html %]"></label>
224                                                                 [% END %]
225                                                             [% END %]
226                                                         [% END # IF RequestOnOpac %]
227                                                     [% END # IF virtualshelves %]
228                                                 [% END # IF opacbookbag%]
229                                             </td>
230                                             [% # Cell 2: Show result number if OpacHiddenItems is empty %]
231                                             <td class="select selectcol">
232                                                 [% UNLESS suppress_result_number %]
233                                                     [% SEARCH_RESULT.result_number | html %].
234                                                 [% END %]
235                                             </td>
236
237                                             [% IF ( !item_level_itypes && !noItemTypeImages ) %]
238                                                 [% # Cell 3: Show item type image %]
239                                                 <td class="itypecol">
240                                                     [% IF ( SEARCH_RESULT.imageurl ) %]
241                                                         <img src="[% SEARCH_RESULT.imageurl | html %]" title="[% SEARCH_RESULT.description | html %]" alt="[% SEARCH_RESULT.description | html %]" />
242                                                     [% END %]
243                                                     [% IF ( SEARCH_RESULT.score_avg ) %]
244                                                         <img src="[% themelang | html %]/../images/bonus.png" title="bonus" style="max-height: 35px;"/>
245                                                     [% END %]
246                                                 </td>
247                                             [% END %]
248
249                                             [% # Cell 4: Search result details and controls %]
250                                             <td class="bibliocol">
251                                                 <div class="coverimages itemtype_[% SEARCH_RESULT.itemtype | html %]">
252                                                     <a class="p1" href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% SEARCH_RESULT.biblionumber | html %]">
253                                                         [% IF ( OPACLocalCoverImages ) %]
254                                                             <span title="[% SEARCH_RESULT.biblionumber |url %]" class="[% SEARCH_RESULT.biblionumber | html %]" id="local-thumbnail[% loop.count | html %]"></span>
255                                                         [% END %]
256
257                                                         [% IF ( AdlibrisEnabled && SEARCH_RESULT.normalized_isbn ) %]
258                                                             <span title="[% SEARCH_RESULT.biblionumber | html %]" id="adlibris-thumbnail[% loop.count | html %]">
259                                                                 <img src="[% AdlibrisURL | html %]?isbn=[% SEARCH_RESULT.normalized_isbn | html %]"
260                                                                      alt="Adlibris thumbnail for ISBN: [% SEARCH_RESULT.normalized_isbn | html %]" class="adlibris-cover" />
261                                                             </span>
262                                                         [% END %]
263                                                         [% IF ( OPACAmazonCoverImages ) %]
264                                                             [% IF ( SEARCH_RESULT.normalized_isbn ) %]
265                                                                     <span title="[% SEARCH_RESULT.biblionumber | html %]" id="amazon-thumbnail[% loop.count | html %]"><img src="https://images-na.ssl-images-amazon.com/images/P/[% SEARCH_RESULT.normalized_isbn | html %].01.TZZZZZZZ.jpg" alt="" class="item-thumbnail" /></span>
266                                                             [% ELSE %]
267                                                                 <span class="no-image">No cover image available</span>
268                                                             [% END %]
269                                                         [% END %]
270
271                                                         [% IF ( SyndeticsEnabled && SyndeticsCoverImages ) %]
272                                                             [% IF ( SEARCH_RESULT.normalized_isbn || SEARCH_RESULT.normalized_upc || SEARCH_RESULT.normalized_oclc ) %]
273                                                                     <span title="[% SEARCH_RESULT.biblionumber | html %]" id="syndetics-thumbnail[% loop.count | html %]"><img src="https://secure.syndetics.com/index.aspx?isbn=[% SEARCH_RESULT.normalized_isbn | html %]/SC.GIF&amp;client=[% SyndeticsClientCode | html %]&amp;type=xw10&amp;upc=[% SEARCH_RESULT.normalized_upc | html %]&amp;oclc=[% SEARCH_RESULT.normalized_oclc | html %]" alt="" class="item-thumbnail" /></span>
274                                                             [% ELSE %]
275                                                                 <span class="no-image">No cover image available</span>
276                                                             [% END %]
277                                                         [% END %]
278
279                                                         [% IF ( GoogleJackets ) %]
280                                                             [% IF ( SEARCH_RESULT.normalized_isbn ) %]
281                                                                 <span title="[% SEARCH_RESULT.biblionumber |url %]" class="[% SEARCH_RESULT.normalized_isbn | html %]" id="gbs-thumbnail[% loop.count | html %]"></span>
282                                                             [% ELSE %]
283                                                                 <span class="no-image">No cover image available</span>
284                                                             [% END %]
285                                                         [% END %]
286
287                                                         [% IF ( Koha.Preference('Coce') && Koha.Preference('CoceProviders') ) %]
288                                                           [% coce_id = SEARCH_RESULT.normalized_ean || SEARCH_RESULT.normalized_isbn %]
289                                                           [% IF ( coce_id ) %]
290                                                             <span title="[% SEARCH_RESULT.biblionumber |url %]" class="[% coce_id | html %]" id="coce-thumbnail[% loop.count | html %]"></span>
291                                                           [% ELSE %]
292                                                             <span class="no-image">No cover image available</span>
293                                                           [% END %]
294                                                         [% END %]
295
296                                                         [% IF OpenLibraryCovers %]
297                                                             [% IF SEARCH_RESULT.normalized_isbn %]
298                                                                 <span title="[% SEARCH_RESULT.biblionumber | html %]" class="[% SEARCH_RESULT.normalized_isbn | html %]" id="openlibrary-thumbnail[% loop.count | html %]"></span>
299                                                             [% ELSE %]
300                                                                 <span class="no-image">No cover image available</span>
301                                                             [% END %]
302                                                         [% END %]
303
304                                                         [% IF ( BakerTaylorEnabled && !BakerTaylorBookstoreURL ) %]
305                                                             [% bt_id = ( SEARCH_RESULT.normalized_upc || SEARCH_RESULT.normalized_isbn ) %]
306                                                             [% IF ( bt_id ) %]
307                                                                 <img alt="See Baker &amp; Taylor" src="[% BakerTaylorImageURL | html %][% bt_id | html %]" />
308                                                             [% ELSE %]
309                                                                 <span class="no-image">No cover image available</span>
310                                                             [% END %]
311                                                         [% END %]
312                                                     </a>
313
314                                                     [% IF ( BakerTaylorEnabled && BakerTaylorBookstoreURL ) %]
315                                                         [% bt_id = ( SEARCH_RESULT.normalized_upc || SEARCH_RESULT.normalized_isbn ) %]
316                                                         [% IF ( bt_id ) %]
317                                                             <a href="https://[% BakerTaylorBookstoreURL | uri %][% bt_id | uri %]">
318                                                                 <img alt="See Baker &amp; Taylor" src="[% BakerTaylorImageURL | html %][% bt_id | html %]" />
319                                                             </a>
320                                                         [% ELSE %]
321                                                             <span class="no-image">No cover image available</span>
322                                                         [% END %]
323                                                     [% END %]
324
325                                                     [% IF ( IDreamBooksResults && SEARCH_RESULT.normalized_isbn ) %]
326                                                         <div class="idbresult" style="display: none;">
327                                                             [% IF ( IDreamBooksReviews ) %]
328                                                                 <a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% SEARCH_RESULT.biblionumber | uri %]#idb_critic_reviews">
329                                                             [% ELSE %]
330                                                                 <a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% SEARCH_RESULT.biblionumber | uri %]">
331                                                             [% END %]
332                                                             [% SEARCH_RESULT.normalized_isbn | html %]</a>
333                                                         </div>
334                                                     [% END %]
335                                                 </div>
336                                                 [% IF ( COinSinOPACResults && SEARCH_RESULT.coins ) %]
337                                                     <!-- COinS / Openurl -->
338                                                     <span class="Z3988" title="[% SEARCH_RESULT.coins | html %]"></span>
339                                                 [% END %]
340
341                                                 [% IF ( OPACXSLTResultsDisplay ) %]
342                                                     [% SEARCH_RESULT.XSLTResultsRecord | $raw %]
343                                                 [% ELSE %]
344                                                     [% IF ( BiblioDefaultViewmarc ) %]
345                                                         <a class="title" href="/cgi-bin/koha/opac-MARCdetail.pl?biblionumber=[% SEARCH_RESULT.biblionumber |url %]" title="View details for this title">
346                                                     [% ELSE %]
347                                                         [% IF ( BiblioDefaultViewisbd ) %]
348                                                             <a class="title" href="/cgi-bin/koha/opac-ISBDdetail.pl?biblionumber=[% SEARCH_RESULT.biblionumber |url %]" title="View details for this title">
349                                                         [% ELSE %]
350                                                             <a class="title" href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% SEARCH_RESULT.biblionumber |url %]" title="View details for this title">
351                                                         [% END %]
352                                                     [% END %]
353
354                                                     [% IF ( SEARCH_RESULT.title ) %]
355                                                         [% SEARCH_RESULT.title | html %]
356                                                     [% ELSE %]
357                                                         No title
358                                                     [% END %]
359
360                                                     [% FOREACH subtitl IN SEARCH_RESULT.subtitle %]
361                                                         , [% subtitl.subfield | html %]
362                                                     [% END %]</a>
363
364                                                     [% IF ( SEARCH_RESULT.author ) %]
365                                                         by <a href="/cgi-bin/koha/opac-search.pl?q=au:[% SEARCH_RESULT.author |url %]" title="Search for works by this author" class="author">[% SEARCH_RESULT.author | html %]</a>
366                                                     [% ELSE %]
367                                                         &nbsp;
368                                                     [% END %]
369
370                                                     <span class="results_summary publisher">
371                                                         <span class="label">Publication:</span>
372                                                             [% IF ( SEARCH_RESULT.place ) %][% SEARCH_RESULT.place | html %] [% END %]
373                                                             [% IF ( SEARCH_RESULT.publishercode ) %][% SEARCH_RESULT.publishercode | html %][% END %]
374                                                             [% IF ( SEARCH_RESULT.publicationyear ) %]
375                                                                 [% SEARCH_RESULT.publicationyear | html %]
376                                                             [% ELSE %]
377                                                                 [% IF ( SEARCH_RESULT.copyrightdate ) %]
378                                                                     [% SEARCH_RESULT.copyrightdate | html %]
379                                                                 [% END %]
380                                                             [% END %]
381                                                             [% IF ( SEARCH_RESULT.pages ) %]. [% SEARCH_RESULT.pages | html %][% END %]
382                                                             [% IF ( SEARCH_RESULT.notes ) %], [% SEARCH_RESULT.notes | html %][% END %]
383                                                             [% IF ( SEARCH_RESULT.size ) %] [% SEARCH_RESULT.size | html %][% END %]
384                                                             [% IF ( SEARCH_RESULT.timestamp ) %] <i>(modified on [% SEARCH_RESULT.timestamp | html %])</i>[% END %]
385                                                     </span>
386
387                                                     [% IF ( SEARCH_RESULT.summary ) %]
388                                                         <span class="result_summary">
389                                                             [% SEARCH_RESULT.summary | html %]
390                                                         </span>
391                                                     [% END %]
392
393                                                     [% IF ( SEARCH_RESULT.copyrightdate ) %]
394                                                         <span class="results_summary date">
395                                                             <span class="label">Date:</span>
396                                                             [% SEARCH_RESULT.copyrightdate | html %]
397                                                         </span>
398                                                     [% END %]
399
400                                                     <span class="results_summary">
401                                                         <span class="label">Availability:</span>
402                                                             [% IF ( SEARCH_RESULT.available_items_loop.size() ) %]
403                                                                 <span class="available"><strong>Items available:</strong>
404                                                                     [% FOREACH available_items_loo IN SEARCH_RESULT.available_items_loop %]
405                                                                         [% IF available_items_loo.this_branch %]
406                                                                             <span class="highlight-row-results">
407                                                                         [% ELSE %]
408                                                                             <span>
409                                                                         [% END %]
410
411                                                                         [% IF ( singleBranchMode ) %]
412                                                                             <span class="shelvingloc">[% available_items_loo.location | html %]</span>
413                                                                         [% ELSE %]
414                                                                             [% available_items_loo.branchname | html %]
415                                                                         [% END %]
416
417                                                                         [% IF ( OPACItemsResultsDisplay ) %]
418                                                                             [% UNLESS ( singleBranchMode ) %]<span class="shelvingloc">[% available_items_loo.location | html %]</span>[% END %]
419                                                                             [% IF ( available_items_loo.itemcallnumber ) %][<a href="/cgi-bin/koha/opac-search.pl?q=callnum:%22[% available_items_loo.itemcallnumber |url %]%22">[% available_items_loo.itemcallnumber | html %]</a>][% END %]
420                                                                         [% END %]
421                                                                         ([% available_items_loo.count | html %]),
422                                                                         </span>
423                                                                     [% END # / FOREACH available_items_loo %]
424                                                                 </span>
425                                                             [% ELSE %]
426                                                                 [% IF ( SEARCH_RESULT.ALTERNATEHOLDINGS ) %]
427                                                                     [% FOREACH ALTERNATEHOLDING IN SEARCH_RESULT.ALTERNATEHOLDINGS %]
428                                                                         &nbsp;<span id="alternateholdings">[% ALTERNATEHOLDING.holding | html %]</span>,
429                                                                     [% END %]
430                                                                 [% ELSE %]
431                                                                     <span class="unavailable">No items available:</span>
432                                                                 [% END %]
433                                                             [% END # / IF SEARCH_RESULT.available_items_loop.size %]
434
435                                                             <span class="unavailable">
436                                                                 [% IF ( SEARCH_RESULT.onloancount ) %] Checked out ([% SEARCH_RESULT.onloancount | html %]), [% END %]
437                                                                 [% IF ( SEARCH_RESULT.withdrawncount ) %] Withdrawn ([% SEARCH_RESULT.withdrawncount | html %]), [% END %]
438                                                                 [% UNLESS ( SEARCH_RESULT.hidelostitems ) %][% IF ( SEARCH_RESULT.itemlostcount ) %] Lost ([% SEARCH_RESULT.itemlostcount | html %]),[% END %][% END %]
439                                                                 [% IF ( SEARCH_RESULT.damagedcount ) %] Damaged ([% SEARCH_RESULT.damagedcount | html %]),[% END %]
440                                                                 [% IF ( SEARCH_RESULT.orderedcount ) %] On order ([% SEARCH_RESULT.orderedcount | html %]),[% END %]
441                                                                 [% IF ( SEARCH_RESULT.onholdcount ) %] On hold ([% SEARCH_RESULT.onholdcount | html %]),[% END %]
442                                                                 [% IF ( SEARCH_RESULT.intransitcount ) %] In transit ([% SEARCH_RESULT.intransitcount | html %]),[% END %]
443                                                             </span>
444                                                     </span> <!-- / .results_summary -->
445                                                 [% END # / IF OPACXSLTResultsDisplay %]
446
447                                                 [% IF ( SEARCH_RESULT.score_avg ) %]
448                                                     <div class="results_summary">
449                                                         [% FOREACH i  IN [ 1 2 3 4 5  ] %]
450                                                             [% IF ( SEARCH_RESULT.score_int >= i ) %]
451                                                                 <div class="star-rating rater-[% i | html %] star star-rating-applied star-rating-readonly star-rating-on"><a title="[% i | html %]">[% i | html %]</a></div>
452                                                             [% ELSE   %]
453                                                                 <div class="star-rating rater-[% i | html %] star star-rating-applied star-rating-readonly"><a title="[% i | html %]">[% i | html %]</a></div>
454                                                             [% END %]
455                                                         [% END %]
456                                                         <span id="babeltheque-rating_total_[% SEARCH_RESULT.biblionumber | html %]">&nbsp;&nbsp; [% SEARCH_RESULT.score_avg | html %] / 5 (on [% SEARCH_RESULT.num_scores | html %] rates)</span>
457
458                                                         [% IF ( SEARCH_RESULT.num_critics ) %]
459                                                             <span class="social_data">[% SEARCH_RESULT.num_critics | html %] Internet user critics</span>
460                                                         [% END %]
461                                                         [% IF ( SEARCH_RESULT.num_critics_pro ) %]
462                                                             <span class="social_data">[% SEARCH_RESULT.num_critics_pro | html %] Professional critics</span>
463                                                         [% END %]
464                                                         [% IF ( SEARCH_RESULT.num_videos ) %]
465                                                             <span class="social_data">[% SEARCH_RESULT.num_videos | html %] Video extracts</span>
466                                                         [% END %]
467                                                         [% IF ( SEARCH_RESULT.num_quotations ) %]
468                                                             <span class="social_data">[% SEARCH_RESULT.num_quotations | html %] Quotations</span>
469                                                         [% END %]
470                                                     </div> <!-- / .results_summary -->
471                                                 [% END # / IF SEARCH_RESULT.score_avg %]
472
473                                                 [% IF ( LibraryThingForLibrariesID ) %]
474                                                     <div class="ltfl_reviews"></div>
475                                                 [% END %]
476
477                                                 [% IF ( TagsShowEnabled && SEARCH_RESULT.TagLoop.size ) %]
478                                                     <div class="results_summary tags">
479                                                         <span class="label">Tags:</span>
480                                                         <ul>
481                                                             [% FOREACH TagLoo IN SEARCH_RESULT.TagLoop %]
482                                                                 <li>
483                                                                     <a href="/cgi-bin/koha/opac-search.pl?tag=[% TagLoo.term |url %]&amp;q=[% TagLoo.term |url %]">[% TagLoo.term | html %]</a>
484                                                                     <span class="weight">([% TagLoo.weight_total | html %])</span>
485                                                                 </li>
486                                                             [% END %]
487                                                         </ul>
488                                                     </div>
489                                                 [% END %]
490
491                                                 [% IF Koha.Preference('virtualshelves') AND SEARCH_RESULT.shelves.count %]
492                                                     <div class="results_summary shelves">
493                                                         <span class="label">Lists:</span>
494                                                         <ul>
495                                                             [% FOREACH shelf IN SEARCH_RESULT.shelves %]
496                                                                 <li>
497                                                                     <a href="/cgi-bin/koha/opac-shelves.pl?op=view&amp;shelfnumber=[% shelf.shelfnumber | uri %]">[% shelf.shelfname | html %]</a>
498                                                                     [%~ UNLESS loop.last %], [% ELSE %].[% END ~%]
499                                                                 </li>
500                                                             [% END %]
501                                                         </ul>
502                                                     </div>
503                                                 [% END %]
504
505                                                 [% IF ( SEARCH_RESULT.searchhighlightblob ) %]
506                                                     <span class="results_summary">
507                                                         <span class="label">Match:</span>
508                                                         [% SEARCH_RESULT.searchhighlightblob | html %]
509                                                     </span>
510                                                 [% END %]
511
512                                                 [% IF ( OpacStarRatings == 'all' ) %]
513                                                     <div class="results_summary ratings">
514                                                         [% SET rating_avg = SEARCH_RESULT.ratings.get_avg_rating() %]
515                                                         [% rating_avg_int = BLOCK %][% rating_avg | format("%.0f") %][% END %]
516                                                         <div class="br-wrapper br-theme-fontawesome-stars">
517                                                             <div class="br-widget br-readonly">
518                                                                 [% FOREACH i IN [ 1 2 3 4 5  ] %]
519                                                                     [% IF rating_avg_int == i %]
520                                                                         <a href="#" class="br-selected br-current"></a>
521                                                                     [% ELSIF rating_avg_int > i %]
522                                                                         <a href="#" class="br-selected"></a>
523                                                                     [% ELSE %]
524                                                                         <a href="#"></a>
525                                                                     [% END %]
526                                                                 [% END %]
527                                                             </div>
528                                                         </div>
529
530                                                         [% IF SEARCH_RESULT.ratings.count > 0  %]
531                                                             <span id="rating_total_[% SEARCH_RESULT.biblionumber | html %]">&nbsp;&nbsp;([% SEARCH_RESULT.ratings.count | html %] votes)</span>
532                                                         [% ELSE %]
533                                                             <br />
534                                                         [% END %]
535                                                     </div> <!-- / .results_summary -->
536                                                 [% END # / IF OpacStarRatings %]
537
538                                                 <div class="actions-menu noprint">
539                                                         [% IF Koha.Preference( 'RequestOnOpac' ) == 1 %]
540                                                             [% UNLESS ( SEARCH_RESULT.norequests ) %]
541                                                                 [% IF ( Koha.Preference( 'opacuserlogin' ) == 1 ) %]
542                                                                     <span class="actions"><a class="hold" href="/cgi-bin/koha/opac-reserve.pl?biblionumber=[% SEARCH_RESULT.biblionumber | html %]">Place hold</a></span><!-- add back when available 0 holds in queue-->
543                                                                 [% END # / IF opacuserlogin && holdable %]
544                                                             [% END # UNLESS SEARCH_RESULT.norequests %]
545                                                         [% END # IF RequestOnOpac %]
546
547                                                         [% IF ( Koha.Preference( 'opacuserlogin' ) == 1 ) %]
548                                                             [% IF SEARCH_RESULT.artreqpossible %]
549                                                                 <span class="actions"><a class="article_request" href="/cgi-bin/koha/opac-request-article.pl?biblionumber=[% SEARCH_RESULT.biblionumber | html %]">Request article</a></span>
550                                                             [% END %]
551                                                         [% END %]
552
553                                                         [% IF ( TagsInputEnabled ) %]
554                                                             [% IF ( loggedinusername ) %]
555                                                                 <span class="actions"><a class="tag_add" id="tag_add[% SEARCH_RESULT.biblionumber | html %]" href="#">Add tag</a></span>
556                                                                 <div id="tagform[% SEARCH_RESULT.biblionumber | html %]" class="tag_results_input" style="display:none;">
557                                                                         <label for="newtag[% SEARCH_RESULT.biblionumber | html %]">New tag(s), separated by a comma:</label>
558                                                                         <input type="text" name="newtag[% SEARCH_RESULT.biblionumber | html %]" id="newtag[% SEARCH_RESULT.biblionumber | html %]" class="newtag" maxlength="100" />
559                                                                         <input name="tagbutton" class="btn btn-small tagbutton" title="[% SEARCH_RESULT.biblionumber | html %]" type="submit" value="Add" />
560                                                                         <a class="cancel_tag_add" id="cancel[% SEARCH_RESULT.biblionumber | html %]" href="#">(done)</a>
561                                                                 </div>
562                                                                 <span id="newtag[% SEARCH_RESULT.biblionumber | html %]_status" class="tagstatus" style="display:none;">
563                                                                     Tag status here.
564                                                                 </span>
565                                                             [% ELSIF ( loop.first ) %]
566                                                                 <span class="actions"><span id="login4tags">Log in to add tags.</span></span>
567                                                             [% END # IF loggedinusername %]
568                                                         [% END # if TagsInputEnabled %]
569
570                                                         [% IF ( ( Koha.Preference( 'opacuserlogin' ) == 1 ) && loggedinusername && ( Koha.Preference( 'virtualshelves' ) == 1 ) ) %]
571                                                             <span class="actions"><a class="addtoshelf" href="/cgi-bin/koha/opac-addbybiblionumber.pl?biblionumber=[% SEARCH_RESULT.biblionumber | html %]" onclick="Dopop('opac-addbybiblionumber.pl?biblionumber=[% SEARCH_RESULT.biblionumber | html %]'); return false;">Save to lists</a></span>
572                                                         [% END %]
573
574                                                         [% IF Koha.Preference( 'opacbookbag' ) == 1 %]
575                                                             [% IF ( SEARCH_RESULT.incart ) %]
576                                                                 <span class="actions"><a data-biblionumber="[% SEARCH_RESULT.biblionumber | html %]" class="addtocart cart[% SEARCH_RESULT.biblionumber | html %]" href="#">In your cart</a> <a data-biblionumber="[% SEARCH_RESULT.biblionumber | html %]" class="cartRemove cartR[% SEARCH_RESULT.biblionumber | html %]" href="#">(remove)</a></span>
577                                                             [% ELSE %]
578                                                                 <span class="actions"><a data-biblionumber="[% SEARCH_RESULT.biblionumber | html %]" class="addtocart cart[% SEARCH_RESULT.biblionumber | html %]" href="#">Add to your cart</a> <a style="display:none;" data-biblionumber="[% SEARCH_RESULT.biblionumber | html %]" class="cartRemove cartR[% SEARCH_RESULT.biblionumber | html %]" href="#">(remove)</a></span>
579                                                             [% END %]
580                                                         [% END # / IF opacbookbag %]
581                                                 </div>
582
583                                                 [% INCLUDE "openlibrary-readapi.inc" bib = SEARCH_RESULT %]
584
585                                             </td>
586                                         </tr>
587                                     [% END # / FOREACH SEARCH_RESULT %]
588                                 </table>
589                             </form> <!-- / #bookbag_form -->
590
591                             <form id="hold_form" name="hold_form" method="get" action="/cgi-bin/koha/opac-reserve.pl">
592                                 <!-- The value will be set by holdBiblioNums() in basket.js -->
593                                 <input id="hold_form_biblios" type="hidden" name="biblionumbers" value=""/>
594                             </form>
595                         </div> <!-- / .searchresults -->
596
597                         <div id="bottom-pages">[% INCLUDE 'page-numbers.inc' %]</div>
598
599                     [% END # / IF total %]
600
601                     [% IF Koha.Preference( 'suggestion' ) == 1 && ( Koha.Preference( 'AnonSuggestions' ) == 1 || loggedinusername || Koha.Preference( 'ILLModule' ) == 1 )   %]
602                         <div class="suggestion">
603                             Not finding what you're looking for?
604                             <ul>
605                                 [% IF Koha.Preference( 'AnonSuggestions' ) == 1 %]
606                                     <li>Make a <a href="/cgi-bin/koha/opac-suggestions.pl?op=add">purchase suggestion</a></li>
607                                 [% ELSE %]
608                                     [% IF ( loggedinusername ) %]
609                                         <li>Make a <a href="/cgi-bin/koha/opac-suggestions.pl?op=add">purchase suggestion</a></li>
610                                     [% END %]
611                                 [% END %]
612                                 [% IF Koha.Preference( 'ILLModule' ) == 1 && loggedinusername %]
613                                     <li>Make an <a href="/cgi-bin/koha/opac-illrequests.pl?op=create">Interlibrary loan request</a></li>
614                                 [% END %]
615                             </ul>
616                         </div>
617                     [% END %]
618                     </div> <!-- / #userresults -->
619                 </div> <!-- /.span10/12 -->
620             </div> <!-- / .row-fluid -->
621         </div> <!-- / .container-fluid -->
622     </div><!-- / .main -->
623
624 [% INCLUDE 'opac-bottom.inc' %]
625 [% BLOCK jsinclude %]
626 [% IF ( LibraryThingForLibrariesID ) %]
627     <script src="https://ltfl.librarything.com/forlibraries/widget.js?id=[% LibraryThingForLibrariesID | html %]&amp;systype=koha"></script>
628 [% END %]
629 [% IF ( OverDriveEnabled ) %][% Asset.js("js/overdrive.js") | $raw %][% END %]
630 [% IF ( RecordedBooksEnabled ) %][% Asset.js("js/recordedbooks.js") | $raw %][% END %]
631 [% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %]
632 [% Asset.js("js/authtoresults.js") | $raw %]
633 [% Asset.js("lib/hc-sticky.js") | $raw %]
634 [% IF ( OpacHighlightedWords ) %][% Asset.js("lib/jquery/plugins/jquery.highlight-3.js") | $raw %]
635 [% END %]<script>
636 //<![CDATA[
637 [% IF ( Koha.Preference( 'opacuserlogin' ) == 1 ) && ( Koha.Preference( 'RequestOnOpac' ) == 1 ) %]
638 function holdMultiple() {
639     var checkedBiblioNums = ""; // Separated by "/"
640     var checkedCount = 0;
641     if(document.bookbag_form.biblionumber.length > 0) {
642         for (var i=0; i < document.bookbag_form.biblionumber.length; i++) {
643             if (document.bookbag_form.biblionumber[i].checked) {
644                 checkedBiblioNums += (document.bookbag_form.biblionumber[i].value + "/");
645                 checkedCount++;
646             }
647         }
648     }
649
650     if (checkedCount > 0) {
651         holdBiblioNums(checkedBiblioNums);
652     } else {
653         alert(MSG_NO_RECORD_SELECTED);
654     }
655 }
656
657 function holdBiblioNums(numList) {
658     // numList: biblio numbers separated by "/"
659     $("#hold_form_biblios").attr("value", numList);
660     $("#hold_form").submit();
661 }[% END %]
662
663 [% IF ( TagsInputEnabled && loggedinusername ) %]
664 function tagSelected() {
665     var checkedBoxes = $(".searchresults :checkbox:checked");
666     if ($(checkedBoxes).size() == 0) {
667         alert(MSG_NO_RECORD_SELECTED);
668     } else {
669         $("#tagsel_tag").hide();
670         $(".resort").hide();
671         $("#tagsel_form").show();
672     }
673 }
674
675 function tagCanceled() {
676     $("#tagsel_form").hide();
677     $("#tagsel_tag").show();
678     $(".resort").show();
679     $("#tagsel_new").val("");
680     $("#tagsel_status, .tagstatus").empty().hide();
681 }
682
683 function tagAdded() {
684     var checkedBoxes = $(".searchresults :checkbox:checked");
685     if ($(checkedBoxes).size() == 0) {
686         alert(MSG_NO_RECORD_SELECTED);
687         return false;
688     }
689
690     var tag = $("#tagsel_new").val();
691     if (!tag || (tag == "")) {
692         alert(MSG_NO_TAG_SPECIFIED);
693         return false;
694     }
695
696     var bibs = [];
697     for (var i = 0; i < $(checkedBoxes).size(); i++) {
698         var box = $(checkedBoxes).get(i);
699         bibs[i] = $(box).val();
700     }
701
702     KOHA.Tags.add_multitags_button(bibs, tag);
703     return false;
704 }[% END %]
705
706
707 function enableCheckboxActions(){
708     // Enable/disable controls if checkboxes are checked
709     var checkedBoxes = $(".checkboxed input:checkbox:checked");
710     var controls = $("#selections-toolbar .links a, #selections-toolbar .links input, #selections-toolbar .links select, , #selections-toolbar .links label")
711     if ($(checkedBoxes).size()) {
712       $("#selections").html(_("With selected titles: "));
713       $(controls).removeClass("disabled");
714     } else {
715       $("#selections").html(_("Select titles to: "));
716       $(controls).addClass("disabled");
717     }
718 }
719
720 [% IF ( OpacHighlightedWords ) %]
721 var q_array = new Array();  // holds search terms if available
722
723 function highlightOff() {
724     $("td").removeHighlight();
725     $(".highlight_toggle").toggle();
726 }
727 function highlightOn() {
728     var x;
729     for (x in q_array) {
730         q_array[x] = q_array[x].replace(/\w*:([\w])/, "$1");
731         q_array[x] = q_array[x].toLowerCase();
732         var myStopwords = "[% Koha.Preference('NotHighlightedWords') | html %]".toLowerCase().split('|');
733         if ( (q_array[x].length > 0) && ($.inArray(q_array[x], myStopwords) == -1) ) {
734             $(".title").highlight(q_array[x]);
735             $(".author").highlight(q_array[x]);
736             $(".results_summary").highlight(q_array[x]);
737         }
738     }
739     $(".highlight_toggle").toggle();
740 }
741 [% END %]
742 $(document).ready(function(){
743     [% IF ( OpacHighlightedWords ) %]
744         $('a.title').each(function() {
745             $(this).attr("href", $(this).attr("href") + "&query_desc=[% query_desc | uri %]");
746         });
747     [% END %]
748
749     $(".cb").click(function(){
750       enableCheckboxActions();
751     });
752     enableCheckboxActions();
753
754     $(".br-readonly a").on("click", function(e){
755         e.preventDefault();
756     });
757
758     [% IF ( IDreamBooksResults ) %]
759         $('.idbresult').each(function() {
760             var isbn = $(this).children('a').text().replace(/\s*/,'');
761             var element = this;
762
763             if ($.browser.msie && parseInt($.browser.version, 10) >= 8 && window.XDomainRequest) {
764             // Use Microsoft XDR for IE version 8 or above
765                 var xdr = new XDomainRequest();
766                 xdr.open("get", "https://idreambooks.com/newbooks/api.json?q="+encodeURIComponent(isbn)+"&key=8bf66516232d1b72f3e47df939653e1e");
767                 xdr.onload = function() {
768                     json = 'json = '+xdr.responseText; // the string now looks like..  json = { ... };
769                     eval(json); // json is now a regular JSON object
770                     if(json.total_results > 0 && json.book.rating > 0){
771                         $(element).children('a').html("<img src='"+json.book.to_read_or_not_small+"' alt='"+json.book.title+_(" by ")+json.book.author+"' title='"+_("Rating based on reviews of ")+json.book.title+"'>"+json.book.rating+"%");
772                         $(element).show();
773                     } else {
774                         $(element).remove();
775                     }
776                 }
777                 xdr.send();
778             } else {
779                 $.getJSON("https://idreambooks.com/newbooks/api.json?q="+encodeURIComponent(isbn)+"&key=8bf66516232d1b72f3e47df939653e1e", function(json){
780                     if(json.total_results > 0 && json.book.rating > 0){
781                         $(element).children('a').html("<img src='"+json.book.to_read_or_not_small+"' alt='"+json.book.title+_(" by ")+json.book.author+"' title='"+_("Rating based on reviews of ")+json.book.title+"'>"+json.book.rating+"%");
782                         $(element).show();
783                     } else {
784                         $(element).remove();
785                     }
786                 });
787             }
788         });
789     [% END %]
790
791     var param1 = "";
792     [% IF ( ( Koha.Preference( 'opacbookbag' ) == 1 ) || ( Koha.Preference( 'virtualshelves' ) == 1 ) || loggedinusername ) %]
793     param1 += "<span id=\"selections\">"+_("Select titles to: ")+"</span>";
794     [% END %]
795
796 [% IF Koha.Preference( 'opacbookbag' ) == 1 OR Koha.Preference('virtualshelves') %]
797     param1 += "<select class=\"disabled\" name=\"addto\" id=\"addto\"><option>"+_("Add to...")+"</option>";
798
799     [% IF Koha.Preference( 'opacbookbag' ) == 1 %]
800         param1 += "<option value=\"addtocart\">"+_("Cart")+"<\/option>";
801     [% END %]
802     [% IF Koha.Preference('virtualshelves') %]
803         [% IF loggedinusername AND add_to_some_private_shelves.count %]
804             param1 += "<optgroup label=\""+_("Your lists:")+"\">";
805             [% SET number_of_private_shelves = 0 %]
806             [% FOREACH s IN add_to_some_private_shelves %]
807                 [% IF shelfnumber != s.shelfnumber %]
808                     param1 += "<option id=\"s[% s.shelfnumber | html %]\" value=\"addtolist\">[% s.shelfname | html %]<\/option>";
809                     [% SET number_of_private_shelves = number_of_private_shelves + 1 %]
810                     [% IF number_of_private_shelves == 10 %][% LAST %][% END %]
811                 [% END %]
812             [% END %]
813             param1 += "<\/optgroup>";
814         [% END %]
815         [% IF add_to_some_public_shelves.count %]
816             param1 += "<optgroup label=\""+_("Public lists:")+"\">";
817             [% SET number_of_public_shelves = 0 %]
818             [% FOREACH s IN add_to_some_public_shelves %]
819                 [% IF shelfnumber != s.shelfnumber %]
820                     param1 += "<option id=\"s[% s.shelfnumber | html %]\" value=\"addtolist\">[% s.shelfname | html %]<\/option>";
821                     [% SET number_of_public_shelves = number_of_public_shelves + 1 %]
822                     [% IF number_of_public_shelves == 10 %][% LAST %][% END %]
823                 [% END %]
824             [% END %]
825             param1 += "<\/optgroup>";
826         [% END %]
827         [% IF ( add_to_some_private_shelves and add_to_some_private_shelves.count > 10 ) or ( add_to_some_public_shelves and add_to_some_public_shelves.count > 10 ) %]
828             param1 += "<option value=\"morelists\">[ "+_("More lists")+" ]<\/option>";
829         [% END %]
830         param1 +="<option value=\"newlist\">"+_("[ New list ]")+"<\/option>"
831     [% END %]
832     param1 += "<\/select> <input type=\"submit\" class=\"btn btn-small\" value=\""+_("Save")+"\" />";
833 [% END %]
834
835     $('#sortsubmit').hide();
836     $('.resort').change(function() {
837         $('#bookbag_form').submit();
838     });
839     $("span.clearall").html("<a id=\"CheckNone\" href=\"#\">"+_("Clear all")+"<\/a>");
840     $("span.checkall").html("<a id=\"CheckAll\" href=\"#\">"+_("Select all")+"<\/a>");
841
842 [% IF Koha.Preference( 'opacbookbag' ) == 1 %]
843     $("span.addto").html(param1);
844 [% ELSE %]
845     [% IF ( ( Koha.Preference( 'virtualshelves' ) == 1 ) && loggedinusername ) %]
846         $("span.addto").html(param1);
847     [% END %]
848 [% END %]
849
850 [% IF ( ( Koha.Preference( 'opacbookbag' ) == 1 ) || ( Koha.Preference( 'virtualshelves' ) == 1 ) ) %]
851     [% IF Koha.Preference( 'virtualshelves' ) == 1 %]
852         $("#addto").on("change",function(){
853             cartList();
854         });
855         $(".addto").find("input:submit").click(function(){
856             cartList();
857             return false;
858         });
859     [% ELSE %]
860         $("#addto").on("click",function(){
861             cartList();
862             return false;
863         });
864     [% END %]
865 [% END %]
866
867     function cartList(){
868         addtoOption = $("#addto").find("option:selected");
869         addtoval = addtoOption.val();
870         if(addtoval == "addtolist"){
871             var shelfnumber = addtoOption.attr("id").replace("s","");
872             if (vShelfAdd()) {
873                 Dopop('/cgi-bin/koha/opac-addbybiblionumber.pl?selectedshelf='+shelfnumber+'&' + vShelfAdd());
874             }
875             return false;
876         } else if(addtoval == "newlist"){
877             [% IF ( loggedinusername ) %]if (vShelfAdd()) {
878                 Dopop('/cgi-bin/koha/opac-addbybiblionumber.pl?newshelf=1&' + vShelfAdd());
879             }[% ELSE %]
880                 alert(_("You must be logged in to create or add to lists"));
881             [% END %]
882             return false;
883         } else if(addtoval == "morelists"){
884             [% IF ( loggedinusername ) %]
885                 if (vShelfAdd()) {
886                     Dopop('/cgi-bin/koha/opac-addbybiblionumber.pl?' + vShelfAdd());
887                 }
888             [% ELSE %]
889                 alert(_("You must be logged in to create or add to lists"));
890             [% END %]
891             return false;
892         }
893         if(addtoval == "addtocart" || $("#addto").attr("class") == "addtocart"){
894             addMultiple();
895             return false;
896          }
897     }
898     $("#CheckAll").click(function(){
899         $("#bookbag_form").checkCheckboxes();
900         enableCheckboxActions();
901         return false;
902     });
903     $("#CheckNone").click(function(){
904         $("#bookbag_form").unCheckCheckboxes();
905         enableCheckboxActions();
906         return false;
907     });
908
909 [% IF ( ( Koha.Preference( 'RequestOnOpac' ) == 1 ) && ( Koha.Preference( 'opacuserlogin' ) == 1 ) && DisplayMultiPlaceHold ) %]
910     $("#placehold").html("<input class=\"hold disabled\" type=\"submit\" value=\""+_("Place hold")+"\"/>");
911     $("#placehold").find("input:submit").click(function(){
912         holdMultiple();
913         return false;
914     });
915 [% END %]
916
917 [% IF ( query_desc ) %]
918     var query_desc = "[% query_desc |replace("'", "\'") |replace('\n', '\\n') |replace('\r', '\\r') | html %]";
919     var querystring = "[% querystring |replace("'", "\'") |replace('\n', '\\n') |replace('\r', '\\r') | html %]";
920     [% IF ( OpacHighlightedWords ) %]
921         q_array = query_desc.split(" ");
922         // ensure that we don't have "" at the end of the array, which can
923         // break the highlighter
924         while (q_array.length > 0 && q_array[q_array.length-1] == "") {
925             q_array = q_array.splice(0,-1);
926         }
927         highlightOn();
928         $("#highlight_toggle_on" ).hide().click(function() {highlightOn() ;});
929         $("#highlight_toggle_off").show().click(function() {highlightOff();});
930     [% END %]
931     [% IF ( OverDriveEnabled ) %]
932         var $overdrive_results = $( '<div id="overdrive-results">' + MSG_SEARCHING.format('OverDrive') + ' <img class="throbber" src="[% interface | html %]/lib/jquery/plugins/themes/classic/throbber.gif" /></div>' );
933         $( '#numresults' ) .append( ' ' )
934             .append( $overdrive_results );
935         KOHA.OverDrive.Search( "[% Koha.Preference('OverDriveLibraryID') | html %]", querystring, 1, 0, function( data ) {
936             if ( data.error ) {
937                 $overdrive_results.html( MSG_ERROR_SEARCHING_COLLECTION.format('OverDrive') );
938                 return;
939             }
940
941             if ( data.totalItems ) {
942                 $overdrive_results.html( '<a href="/cgi-bin/koha/opac-overdrive-search.pl?q=' + escape( querystring ) + '">' + MSG_RESULTS_FOUND_IN_COLLECTION.format(data.totalItems, 'OverDrive') + '</a>' );
943             } else {
944                 $overdrive_results.remove();
945             }
946         } );
947     [% END %]
948     [% IF ( RecordedBooksEnabled ) %]
949         var $recordedbooks_results = $( '<div id="recordedbooks-results">' + MSG_SEARCHING.format('RecordedBooks') + ' <img class="throbber" src="[% interface | html %]/lib/jquery/plugins/themes/classic/throbber.gif" /></div>' );
950         $( '#numresults' ) .append( ' ' )
951             .append( $recordedbooks_results );
952         KOHA.RecordedBooks.search( querystring, [% OPACnumSearchResults || "null" | html %], null, function( data ) {
953             if ( data.error ) {
954                 $recordedbooks_results.html( MSG_ERROR_SEARCHING_COLLECTION.format('RecordedBooks')  + ': ' + data.error);
955                 return;
956             }
957
958             // data.total can be either 42 or "60+"
959             if ( typeof(data.total) === 'string' && data.total.charAt(0) > 0 || typeof(data.total) === 'number' && data.total > 0 ) {
960                 $recordedbooks_results.html( '<a href="/cgi-bin/koha/opac-recordedbooks-search.pl?q=' + escape( querystring ) + '">' + MSG_RESULTS_FOUND_IN_COLLECTION.format(data.total, 'RecordedBooks') + '</a>' );
961             } else {
962                 $recordedbooks_results.remove();
963             }
964         } );
965     [% END %]
966     [% IF ( OpenLibrarySearch ) %]
967         var $openlibrary_results = $( '<div id="openlibrary-results">' + MSG_SEARCHING.format('OpenLibrary' ) + ' <img class="throbber" src="[% interface | html %]/lib/jquery/plugins/themes/classic/throbber.gif" /></div>' );
968         $( '#numresults' ) .append( ' ' )
969             .append( $openlibrary_results );
970         KOHA.OpenLibrary.search( querystring, null, function( data ) {
971             if ( data.error ) {
972                 $openlibrary_results.html( MSG_ERROR_SEARCHING_COLLECTION.format('OpenLibrary') );
973                 return;
974             }
975
976             if ( data.numFound > 0 ) {
977                 $openlibrary_results.html( '<a href="' + KOHA.OpenLibrary.searchUrl(querystring) + '" target="openlibrary">'  + MSG_RESULTS_FOUND_IN_COLLECTION.format(data.numFound, 'OpenLibrary') + '</a>' );
978             } else {
979                 $openlibrary_results.remove();
980             }
981         } );
982     [% END %]
983 [% END %]
984
985 [% IF ( TagsInputEnabled && loggedinusername ) %]
986     $("#tagsel_tag").click(function(){
987         tagSelected();
988         return false;
989     });
990     $("#tagsel_cancel").click(function(){
991         tagCanceled();
992         return false;
993     });
994     $("#tagsel_button").click(function(){
995         tagAdded();
996         return false;
997     });
998
999     $(".tag_add").click(function(){
1000         var thisid = $(this).attr("id");
1001         thisid = thisid.replace("tag_add","");
1002         $(this).addClass("hidden");
1003         $("#tagform"+thisid).show();
1004         $("#newtag"+thisid).focus();
1005         $("#newtag"+thisid+"_status").empty().hide();
1006         return false;
1007     });
1008     $(".cancel_tag_add").click(function(){
1009         var thisid = $(this).attr("id");
1010         thisid = thisid.replace("cancel","");
1011         $("#tagform"+thisid).hide();
1012         $("#tag_add"+thisid).removeClass("hidden");
1013         $("#newtag"+thisid).val("");
1014         $("#newtag"+thisid+"_status").empty().hide();
1015         return false;
1016     });
1017     $(".tagbutton").click(function(){
1018         var thisid = $(this).attr("title");
1019         var tag = $("#newtag"+thisid).val();
1020         if (!tag || (tag == "")) {
1021             alert(MSG_NO_TAG_SPECIFIED);
1022             return false;
1023         }
1024         KOHA.Tags.add_tag_button(thisid, tag);
1025         return false;
1026     });
1027 [% END %]
1028
1029 [% IF OpenLibraryCovers %]KOHA.OpenLibrary.GetCoverFromIsbn();[% END %]
1030 [% IF OPACLocalCoverImages %]KOHA.LocalCover.GetCoverFromBibnumber(false);[% END %]
1031 [% IF ( GoogleJackets ) %]KOHA.Google.GetCoverFromIsbn();[% END %]
1032 [% IF ( Koha.Preference('Coce') && Koha.Preference('CoceProviders') ) %]
1033     KOHA.coce.getURL('[% Koha.Preference('CoceHost') | html %]', '[% Koha.Preference('CoceProviders') | html %]');
1034 [% END %]
1035
1036 [% IF ( DidYouMean ) %]
1037     $("#didyoumean").load("/cgi-bin/koha/svc/suggestion?render=stub&q=[% querystring |uri %]",
1038         function() {
1039             $(this).addClass("dym-loaded");
1040         });
1041 [% END %]
1042
1043 $("input.newtag").on('keydown', function(e){
1044     if (e.keyCode == 13) { e.preventDefault(); }
1045 });
1046
1047     Sticky = $("#floating");
1048     Sticky.hcSticky({
1049         stickTo: ".searchresults",
1050         stickyClass: "floating"
1051     });
1052
1053 });
1054 //]]>
1055 </script>
1056 [% END %]