ca3733f806976ae7e2b5cd9d8a0e4ad78d67e897
[koha-equinox.git] / koha-tmpl / intranet-tmpl / prog / en / modules / catalogue / results.tt
1 [% USE raw %]
2 [% USE Asset %]
3 [% USE Koha %]
4 [% USE Biblio %]
5 [% USE KohaDates %]
6 [% PROCESS 'i18n.inc' %]
7 [% SET footerjs = 1 %]
8 [% USE AuthorisedValues %]
9 [% SET AdlibrisEnabled = Koha.Preference('AdlibrisCoversEnabled') %]
10 [% SET AdlibrisURL = Koha.Preference('AdlibrisCoversURL') %]
11 [% IF BiblioDefaultViewmarc %]
12     [% SET DetailPage="MARCdetail.pl" %]
13 [% ELSIF BiblioDefaultViewlabeled_marc %]
14     [% SET DetailPage="labeledMARCdetail.pl" %]
15 [% ELSIF BiblioDefaultViewisbd %]
16     [% SET DetailPage="ISBDdetail.pl" %]
17 [% ELSE %]
18     [% SET DetailPage="detail.pl" %]
19 [% END %]
20 [% INCLUDE 'doc-head-open.inc' %]
21 <title>Koha &rsaquo; Catalog &rsaquo; [% IF ( searchdesc ) %]Results of search [% IF ( query_desc ) %]for '[% query_desc | html %]'[% END %][% IF ( limit_desc ) %]&nbsp;with limit(s):&nbsp;'[% limit_desc | html %]'[% END %][% ELSE %]You did not specify any search criteria[% END %]</title>
22 [% INCLUDE 'doc-head-close.inc' %]
23 </head>
24
25 <body id="catalog_results" class="catalog">
26 [% INCLUDE 'header.inc' %]
27 [% INCLUDE 'cat-search.inc' %]
28
29 <div id="breadcrumbs">
30          <a href="/cgi-bin/koha/mainpage.pl">Home</a>
31 &rsaquo; <a href="/cgi-bin/koha/catalogue/search.pl">Catalog</a>
32 &rsaquo; Search [% IF ( query_desc ) %]for '[% query_desc | html %]'[% END %][% IF ( limit_desc ) %]&nbsp;with limit(s):&nbsp;'[% limit_desc | html %]'[% END %]
33 </div>
34
35 <div class="main container-fluid">
36     <div class="row">
37         <div class="col-sm-10 col-sm-push-2">
38             <main>
39
40     [% IF ( outer_sup_results_loop ) %]
41         <div class="row">
42             <div class="col-sm-8">
43     [% END %]
44
45     [% IF ( koha_spsuggest ) %]
46         <div style="font-size: 12px;">Did you mean:
47             <ul style="list-style: none;">
48             [% FOREACH SPELL_SUGGES IN SPELL_SUGGEST %]
49             <li>
50                 <a href="/cgi-bin/koha/catalogue/search.pl?q=[% SPELL_SUGGES.spsuggestion | uri %]">[% SPELL_SUGGES.spsuggestion | html %]</a>
51             </li>
52             [% END %]
53             </ul>
54         </div>
55     [% END %]
56
57     [% IF ( total ) %]
58
59         <h3>
60             [% total | html %] result(s) found [% IF ( query_desc ) %]for <span class="results_query_desc">'[% query_desc | html %]'</span>[% END %][% IF limit_desc  %]&nbsp;with limit(s): <span class="results_limit_desc">'[% limit_desc | html %]'</span>[% END %][% IF ( LibraryName ) %] in [% LibraryName | html %] Catalog[% END %].
61         </h3>
62
63         <div id="searchheader">
64
65             <div id="selection_ops">
66                 <a href="#" id="select_all"><i class="fa fa-check"></i> Select all</a>
67                 |
68                 <a href="#" id="clear_all"><i class="fa fa-remove"></i> Clear all</a>
69                 |
70                 <a href="#" class="highlight_toggle" id="highlight_toggle_off">Unhighlight</a>
71                 <a href="#" class="highlight_toggle" id="highlight_toggle_on">Highlight</a>
72                 |
73
74             [% IF ( intranetbookbag ) %]
75                 <div class="btn-group">
76                     <a id="cartsubmit" class="btn btn-default btn-xs" href="#"><i class="fa fa-shopping-cart"></i> Add to cart</a>
77                 </div>
78             [% END %]
79
80             [% IF Koha.Preference('virtualshelves') %]
81                 <div class="btn-group">
82                     <button type="button" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
83                         <i class="fa fa-list"></i> Add to list <span class="caret"></span>
84                     </button>
85                     <ul class="dropdown-menu">
86                         [% IF add_to_some_private_shelves.count %]
87                             <li class="dropdown-header">Your lists</li>
88                             [% SET number_of_private_shelves = 0 %]
89                             [% FOREACH s IN add_to_some_private_shelves %]
90                                 [% IF shelfnumber != s.shelfnumber %]
91                                     <li>
92                                         <a href="#" class="addtolist" data-shelfnumber="[% s.shelfnumber | html %]">[% s.shelfname | html %]</a>
93                                     </li>
94                                     [% SET number_of_private_shelves = number_of_private_shelves + 1 %]
95                                     [% IF number_of_private_shelves == 10 %][% LAST %][% END %]
96                                 [% END %]
97                             [% END %]
98                         [% END %]
99                         [% IF add_to_some_public_shelves.count %]
100                             <li class="dropdown-header">Public lists</li>
101                             [% SET number_of_public_shelves = 0 %]
102                             [% FOREACH s IN add_to_some_public_shelves %]
103                                 [% IF shelfnumber != s.shelfnumber %]
104                                     <li>
105                                         <a href="#" data-shelfnumber="[% s.shelfnumber | html %]" class="addtolist">[% s.shelfname | html %]</a>
106                                     </li>
107                                     [% SET number_of_public_shelves = number_of_public_shelves + 1 %]
108                                     [% IF number_of_public_shelves == 10 %][% LAST %][% END %]
109                                 [% END %]
110                             [% END %]
111                         [% END %]
112                         <li role="separator" class="divider"></li>
113                         [% IF add_to_some_private_shelves.count > 10 or add_to_some_public_shelves.count > 10 %]
114                             <li>
115                                 <a href="#" class="addtolist morelists">More lists</a>
116                             </li>
117                         [% END %]
118                         <li>
119                             <a href="#" class="addtolist newlist">New list</a>
120                         </li>
121                     </ul>
122                 </div>
123             [% END %]
124
125
126                 [% IF ( CAN_user_reserveforothers_place_holds && DisplayMultiPlaceHold ) %]
127                 [% IF ( holdfor ) %]
128                     <div id="placeholdc" class="btn-group">
129                         <button class="btn btn-default btn-xs placehold"><i class="fa fa-sticky-note-o"></i> Place hold</button>
130                         <button class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown">
131                         <span class="caret"></span>
132                         </button>
133                         <ul class="dropdown-menu">
134                             <li><a href="#" class="placehold">Place hold</a></li>
135                             <li><a href="#" class="placeholdfor">Place hold for [% holdfor_firstname | html %] [% holdfor_surname | html %] ([% holdfor_cardnumber | html %])</a></li>
136                             <li class="divider"></li>
137                             <li><a href="#" id="forgetholdfor">Forget  [% holdfor_firstname | html %] [% holdfor_surname | html %] ([% holdfor_cardnumber | html %])</a></li>
138                         </ul>
139                     </div>
140                 [% ELSE %]
141                     <div id="placeholdc" class="btn-group"><a class="btn btn-default btn-xs placehold" href="#"><i class="fa fa-sticky-note-o"></i> Place hold</a></div>
142                 [% END %]
143                 [% END %]
144                 [% IF Koha.Preference('BrowseResultSelection') %]
145                     <div id="browse_selection" class="btn-group"><a class="btn btn-default btn-xs browse_selection" href="#"><i class="fa fa-sticky-note-o"></i> Browse selected records</a></div>
146                 [% END %]
147
148                 [% IF ( CAN_user_editcatalogue_edit_catalogue ) %] <div class="btn-group"><a class="btn btn-default btn-xs" id="z3950submit" href="#"><i class="fa fa-search"></i> Z39.50/SRU search</a></div>[% END %]
149
150             [% IF ( searchdesc ) %]
151                 [% BLOCK sort_search_query ~%]
152                     [%~ FOREACH QUERY_INPUT IN QUERY_INPUTS ~%]
153                         &amp;[% QUERY_INPUT.input_name | html %]=[% QUERY_INPUT.input_value | html %]
154                     [%~ END ~%]
155                     [%~ FOREACH LIMIT_INPUT IN LIMIT_INPUTS ~%]
156                         &amp;[% LIMIT_INPUT.input_name | html %]=[% LIMIT_INPUT.input_value | html %]
157                     [%~ END ~%]
158                 [%~ END %]
159             [% END %]
160
161             <div class="btn-group">
162                 <button type="button" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
163                     Sort <span class="caret"></span>
164                 </button>
165                 <ul class="dropdown-menu">
166                     [% IF ( sort_by == "relevance_dsc" ) %]
167                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=relevance[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Relevance</a></li>
168                     [% ELSE %]
169                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=relevance[% PROCESS sort_search_query %]">Relevance</a></li>
170                     [% END %]
171                     <li class="dropdown-header">Popularity</li>
172                     [% IF ( sort_by == "popularity_dsc" ) %]
173                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=popularity_dsc[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Popularity (most to least)</a></li>
174                     [% ELSE %]
175                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=popularity_dsc[% PROCESS sort_search_query %]">Popularity (most to least)</a></li>
176                     [% END %]
177
178                     [% IF ( sort_by == "popularity_asc" ) %]
179                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=popularity_asc[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Popularity (least to most)</a></li>
180                     [% ELSE %]
181                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=popularity_asc[% PROCESS sort_search_query %]">Popularity (least to most)</a></li>
182                     [% END %]
183
184                     <li class="dropdown-header">Author</li>
185
186                     [% IF ( sort_by == "author_az" || sort_by == "author_asc" ) %]
187                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=author_a[% PROCESS sort_search_query %]z"><i class="fa fa-check"></i> Author (A-Z)</a></li>
188                     [% ELSE %]
189                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=author_az[% PROCESS sort_search_query %]">Author (A-Z)</a></li>
190                     [% END %]
191
192                     [% IF ( sort_by == "author_za" || sort_by == "author_dsc" ) %]
193                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=author_za[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Author (Z-A)</a></li>
194                     [% ELSE %]
195                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=author_za[% PROCESS sort_search_query %]">Author (Z-A)</a></li>
196                     [% END %]
197
198                     <li class="dropdown-header">Call number</li>
199
200                     [% IF ( sort_by == "call_number_asc" ) %]
201                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=call_number_asc[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Call Number (0-9 to A-Z)</a></li>
202                     [% ELSE %]
203                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=call_number_asc[% PROCESS sort_search_query %]">Call Number (0-9 to A-Z)</a></li>
204                     [% END %]
205
206                     [% IF ( sort_by == "call_number_dsc" ) %]
207                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=call_number_dsc[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Call number (Z-A to 9-0)</a></li>
208                     [% ELSE %]
209                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=call_number_dsc[% PROCESS sort_search_query %]">Call number (Z-A to 9-0)</a></li>
210                     [% END %]
211
212                     <li class="dropdown-header">Dates</li>
213                     [% IF ( sort_by == "pubdate_dsc" ) %]
214                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=pubdate_dsc[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Publication/Copyright date: newest to oldest</a></li>
215                     [% ELSE %]
216                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=pubdate_dsc[% PROCESS sort_search_query %]">Publication/Copyright date: newest to oldest</a></li>
217                     [% END %]
218
219                     [% IF ( sort_by == "pubdate_asc" ) %]
220                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=pubdate_asc[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Publication/Copyright date: oldest to newest</a></li>
221                     [% ELSE %]
222                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=pubdate_asc[% PROCESS sort_search_query %]">Publication/Copyright date: oldest to newest</a></li>
223                     [% END %]
224
225                     [% IF ( sort_by == "acqdate_dsc" ) %]
226                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=acqdate_dsc[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Acquisition date: newest to oldest</a></li>
227                     [% ELSE %]
228                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=acqdate_dsc[% PROCESS sort_search_query %]">Acquisition date: newest to oldest</a></li>
229                     [% END %]
230
231                     [% IF ( sort_by == "acqdate_asc" ) %]
232                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=acqdate_asc[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Acquisition date: oldest to newest</a></li>
233                     [% ELSE %]
234                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=acqdate_asc[% PROCESS sort_search_query %]">Acquisition date: oldest to newest</a></li>
235                     [% END %]
236
237                     <li class="dropdown-header">Title</li>
238                     [% IF ( sort_by == "title_az" || sort_by == "title_asc" ) %]
239                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=title_az[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Title (A-Z)</a></li>
240                     [% ELSE %]
241                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=title_az[% PROCESS sort_search_query %]">Title (A-Z)</a></li>
242                     [% END %]
243
244                     [% IF ( sort_by == "title_za" || sort_by == "title_dsc" ) %]
245                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=title_za[% PROCESS sort_search_query %]"><i class="fa fa-check"></i> Title (Z-A)</a></li>
246                     [% ELSE %]
247                         <li><a href="/cgi-bin/koha/catalogue/search.pl?sort_by=title_za[% PROCESS sort_search_query %]">Title (Z-A)</a></li>
248                     [% END %]
249                 </ul>
250             </div>
251             </div>
252
253         </div>
254     [% ELSE %]
255         <div id="searchheader">
256                         <form method="post" name="fz3950" class="fz3950bigrpad">
257                 <button class="btn btn-default" type="button" id="z3950submit"><i class="fa fa-search"></i> Z39.50/SRU search</button>
258                         </form>
259             <h3>No results found</h3>
260         [% IF ( searchdesc ) %]
261             <p>
262                 No results match your search [% IF ( query_desc ) %]for <span style="font-weight: bold;">'[% query_desc | html %]'</span>[% END %][% IF ( limit_desc ) %]&nbsp;with limit(s): <span style="font-weight: bold;">'[% limit_desc | html %]'</span>[% END %][% IF ( LibraryName ) %] in [% LibraryName | html %] Catalog[% END %].
263             </p>
264         [% ELSE %]
265             <p>You did not specify any search criteria.</p>
266         [% END %]
267                 </div>
268     [% END %]
269
270     [% IF ( query_error ) %]
271         <div class="dialog alert"><p><strong>Error:</strong> [% query_error | html %]</p></div>
272     [% END %]
273
274     <!-- Search Results Table -->
275     [% IF ( total ) %]
276         [% IF ( scan ) %]
277             <h1>Scan index:</h1>
278             <form action="/cgi-bin/koha/catalogue/search.pl" method="get">
279             <table>
280                 <tr>
281                     <td>
282                         [% IF ( scan_search_term_to_use ) %]
283                             Scan Index for: <input type="text" name="q" id="scan-index" size="35" value="[% scan_search_term_to_use | html %]" />
284                         [% ELSE %]
285                             Scan Index for: <input type="text" name="q" id="scan-index" size="35" value="" />
286                         [% END %]
287                     </td>
288                 </tr>
289                 <tr>
290                     <td>
291                         <label for="scan-index">Indexed in:</label>
292                         <select name="idx" id="scan-index">
293                             <option value="">Any word</option>
294                             [% IF ( ms_anycommaphr) %]<option selected="selected" value="any,phr">Any phrase</option>
295                             [% ELSE %]<option value="any,phr">Any phrase</option>[% END %]
296                             [% IF ( ms_ti ) %]<option selected="selected" value="ti">Title</option>
297                             [% ELSE %]<option value="ti">Title</option>[% END %]
298                             [% IF ( ms_ticommaphr ) %]<option selected="selected" value="ti,phr">Title phrase</option>
299                             [% ELSE %]<option value="ti,phr">Title phrase</option>[% END %]
300                             [% IF ( ms_aucommaphr ) %]<option selected="selected" value="au,phr">Author</option>
301                             [% ELSE %]<option value="au,phr">Author</option>[% END %]
302                             [% IF ( ms_su ) %]<option selected="selected" value="su">Subject</option>
303                             [% ELSE %]<option value="su">Subject</option>[% END %]
304                             [% IF ( ms_sucommaphr ) %]<option selected="selected" value="su,phr">Subject phrase</option>
305                             [% ELSE %]<option value="su,phr">Subject phrase</option>[% END %]
306                             [% IF ( ms_se ) %]<option selected="selected" value="se">Series</option>
307                             [% ELSE %]<option value="su">Series</option>[% END %]
308                             [% IF ( ms_pb ) %]<option selected="selected" value="pb">Publisher</option>
309                             [% ELSE %]<option value="pb">Publisher</option>[% END %]
310                             [% IF ( ms_nt ) %]<option selected="selected" value="nt">Notes</option>
311                             [% ELSE %]<option value="nt">Notes</option>[% END %]
312                             [% IF ( ms_sn ) %]<option selected="selected" value="sn">ISBN</option>
313                             [% ELSE %]<option value="sn">ISBN</option>[% END %]
314                             [% IF ( ms_ss ) %]<option selected="selected" value="ss">ISSN</option>
315                             [% ELSE %]<option value="ss">ISSN</option>[% END %]
316                         </select>
317                         <input type="hidden" name="scan" value="1" />
318                     </td>
319                 </tr>
320             </table>
321             </form>
322
323             <form action="/cgi-bin/koha/catalogue/search.pl" method="get">
324             <table>
325                 <tr>
326                     <th>Term/Phrase</th>
327                     <th>Count</th>
328                 </tr>
329                 [% FOREACH SEARCH_RESULT IN SEARCH_RESULTS %]
330                     <tr>
331                         <td>
332                             <a href="/cgi-bin/koha/catalogue/search.pl?idx=[% scan_index_to_use | uri %]&amp;q=[% SEARCH_RESULT.scan_use |url %]&quot;[% SEARCH_RESULT.title | uri %]&quot;">[% SEARCH_RESULT.title | html %]</a>
333                         </td>
334                         <td>
335                             [% SEARCH_RESULT.author | html %]
336                         </td>
337                     </tr>
338                 [% END %]
339             </table>
340             </form>
341         [% ELSE %]
342
343             <div id="searchresults">
344                 [% INCLUDE 'page-numbers.inc' %]
345
346                 <form action="/cgi-bin/koha/catalogue/search.pl" method="get" name="bookbag_form" id="bookbag_form">
347                 [% IF ( searchdesc ) %]
348                 [% FOREACH QUERY_INPUT IN QUERY_INPUTS %]
349                 <input type="hidden" name="[% QUERY_INPUT.input_name | html %]" value="[% QUERY_INPUT.input_value | html %]"/>
350                 [% END %]
351                 [% FOREACH LIMIT_INPUT IN LIMIT_INPUTS %]
352                 <input type="hidden" name="[% LIMIT_INPUT.input_name | html %]" value="[% LIMIT_INPUT.input_value | html %]"/>
353                 [% END %]
354                 [% END %]
355
356                     <!-- TABLE RESULTS START -->
357                 <table>
358                     <tr>
359                         [% IF ( AmazonCoverImages || LocalCoverImages || AdlibrisEnabled ) %]<th>&nbsp;</th>[% END %]
360                         <th colspan="2">Results</th>
361                         <th>Location</th>
362                     </tr>
363                         <!-- Actual Search Results -->
364                         [% SET MaxSearchResultsItemsPerRecordStatusCheck = Koha.Preference('MaxSearchResultsItemsPerRecordStatusCheck') %]
365                         [% FOREACH SEARCH_RESULT IN SEARCH_RESULTS %]
366                          <tr>
367                             [% IF ( AmazonCoverImages || LocalCoverImages || AdlibrisEnabled ) %]
368                                 <td>
369                                     [% IF ( LocalCoverImages) %]
370                                         <a class="p1" href="/cgi-bin/koha/catalogue/[% DetailPage | html %]?biblionumber=[% SEARCH_RESULT.biblionumber |url %]">
371                                         <span title="[% SEARCH_RESULT.biblionumber |url %]" class="[% SEARCH_RESULT.biblionumber | html %]" id="local-thumbnail[% loop.count | html %]"></span>
372                                         </a>
373                                     [% END %]
374                                     [% IF ( AdlibrisEnabled && SEARCH_RESULT.normalized_isbn ) %]
375                                         <a href="[% AdlibrisURL | url %]?isbn=[% SEARCH_RESULT.normalized_isbn | uri %]"><img src="[% AdlibrisURL | url %]?isbn=[% SEARCH_RESULT.normalized_isbn | uri %]" class="adlibris-cover" alt="Adlibris cover image" /></a>
376                                     [% END %]
377                                     [% IF ( AmazonCoverImages ) %]
378                                         [% IF ( SEARCH_RESULT.normalized_isbn ) %]
379                                             <a class="p1" href="/cgi-bin/koha/catalogue/[% DetailPage | html %]?biblionumber=[% SEARCH_RESULT.biblionumber |url %]">
380                                             <img src="https://images-na.ssl-images-amazon.com/images/P/[% SEARCH_RESULT.normalized_isbn | html %].01.TZZZZZZZ.jpg" alt="" class="thumbnail" />
381                                         [% ELSIF ( !LocalCoverImages ) %]
382                                             <a class="p1 no-amazon-cover" href="/cgi-bin/koha/catalogue/[% DetailPage | html %]?biblionumber=[% SEARCH_RESULT.biblionumber |url %]">
383                                             <img src="https://images-na.ssl-images-amazon.com/images/G/01/x-site/icons/no-img-sm.gif" alt="" class="thumbnail" />
384                                         [% END %]
385                                         </a>
386                                     [% END %]
387                                 </td>
388                             [% END %]
389                             <td>
390                                 <input type="checkbox" class="selection" id="bib[% SEARCH_RESULT.biblionumber | html %]" name="biblionumber" value="[% SEARCH_RESULT.biblionumber | html %]" style="display:none" />
391                             </td>
392                             <td>
393
394                                 [% UNLESS ( item_level_itypes ) %]
395                                     <div class="result-biblio-itemtype">
396                                         [% IF !noItemTypeImages && SEARCH_RESULT.imageurl %]
397                                             <img src="[% SEARCH_RESULT.imageurl | html %]" alt="[% SEARCH_RESULT.description | html %]" />
398                                         [% END %]
399                                         [% SEARCH_RESULT.description | html %]
400                                     </div>
401                                 [% END %]
402
403                 [% SEARCH_RESULT.result_number | html %].
404                 [% SEARCH_RESULT.XSLTResultsRecord | $raw %]
405
406                                   <p class="hold">
407
408                             [% IF ( SEARCH_RESULT.norequests ) %]
409                                 <span class="noholdstext">No holds allowed</span>
410                             [% ELSE %]
411                                 [% IF CAN_user_reserveforothers_place_holds %]
412                                     <a id="reserve_[% SEARCH_RESULT.biblionumber | html %]" href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% SEARCH_RESULT.biblionumber | html %]">Holds ([% Biblio.HoldsCount( SEARCH_RESULT.biblionumber ) | html %])</a>
413                                     [% IF ( holdfor ) %] <span class="holdforlink">| <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% SEARCH_RESULT.biblionumber | uri %]&amp;findborrower=[% holdfor_cardnumber | uri %]">Place hold for [% holdfor_firstname | html %] [% holdfor_surname | html %] ([% holdfor_cardnumber | html %])</a></span>[% END %]
414                                 [% ELSE %]
415                                     Holds ([% Biblio.HoldsCount( SEARCH_RESULT.biblionumber ) | html %])
416                                 [% END %]
417                             [% END %]
418
419                                 [% IF Koha.Preference('intranetbookbag') == 1 %]
420                                     [% IF ( SEARCH_RESULT.incart ) %]
421                                         | <a class="addtocart" id="cart[% SEARCH_RESULT.biblionumber | html %]" href="#">In your cart</a> <a class="cartRemove" id="cartR[% SEARCH_RESULT.biblionumber | html %]" href="#">(remove)</a>
422                                     [% ELSE %]
423                                         | <a class="addtocart" id="cart[% SEARCH_RESULT.biblionumber | html %]" href="#">Add to cart</a> <a style="display:none;" class="cartRemove" id="cartR[% SEARCH_RESULT.biblionumber | html %]" href="#">(remove)</a>
424                                     [% END %]
425                                 [% END # / IF intranetbookbag %]
426
427                           [% IF Koha.Preference('ArticleRequests') %]
428                               | <a id="requst_article_[% SEARCH_RESULT.biblionumber | html %]" href="/cgi-bin/koha/circ/request-article.pl?biblionumber=[% SEARCH_RESULT.biblionumber | html %]">Request article</a>
429                           [% END %]
430
431                           [% IF ( CAN_user_editcatalogue_edit_catalogue ) %]
432                           | <a href="/cgi-bin/koha/cataloguing/addbiblio.pl?biblionumber=[% SEARCH_RESULT.biblionumber | uri %]">Edit record</a>
433                           [% END %]
434                           [% IF ( CAN_user_editcatalogue_edit_items ) %]
435                           | <a href="/cgi-bin/koha/cataloguing/additem.pl?biblionumber=[% SEARCH_RESULT.biblionumber | uri %]">Edit items</a>
436                           [% END %]
437
438                           [% IF ( OPACBaseURL ) %]
439                               <span class="view-in-opac">
440                                 | <a href="[% Koha.Preference('OPACBaseURL') | url %]/cgi-bin/koha/opac-detail.pl?biblionumber=[% SEARCH_RESULT.biblionumber | uri %]" target="_blank">OPAC view</a>
441                               </span>
442                           [% END %]
443
444                                 </p>
445                                 </td>
446
447                                 <td><div class="availability">
448                                     [% IF ( SEARCH_RESULT.items_count ) %]
449                                         <strong>
450                                             [% IF MaxSearchResultsItemsPerRecordStatusCheck && SEARCH_RESULT.items_count > MaxSearchResultsItemsPerRecordStatusCheck %]
451                                                 <span class="blocker inaccurate-item-statuses" title="Item statuses may be inaccurate. Please view the record details for accurate item statuses">
452                                             [% END %]
453
454                                             [% tnx('{count} item', '{count} items', SEARCH_RESULT.items_count, {count = SEARCH_RESULT.items_count}) | html %][% IF ( SEARCH_RESULT.availablecount ) %], [% SEARCH_RESULT.availablecount | html %] available:[% ELSE %], None available[% END %]
455
456                                             [% IF MaxSearchResultsItemsPerRecordStatusCheck && SEARCH_RESULT.items_count > MaxSearchResultsItemsPerRecordStatusCheck %]
457                                                 </span>
458                                             [% END %]
459                                         </strong>
460
461                                     [% IF ( SEARCH_RESULT.availablecount ) %]
462                                     <ul>
463                                     [% FOREACH available_items_loo IN SEARCH_RESULT.available_items_loop %]
464
465                                         [% IF item_level_itypes && !noItemTypeImages && available_items_loo.imageurl %]
466                                         <li style="list-style: none; list-style-type: none;">
467                                           <img src="[% available_items_loo.imageurl | html %]" title="[% available_items_loo.description | html %]" alt="[% available_items_loo.description | html %]" />
468                                         [% ELSE %]
469                                         <li>
470                                         [% END %]
471                                         [% IF ( available_items_loo.branchname ) %][% available_items_loo.branchname | html %][% END %]
472                                         [% IF ( available_items_loo.location ) %]<span class="shelvingloc">[% available_items_loo.location | html %]</span>[% END %]
473                                         [% IF ( available_items_loo.itemcallnumber ) %][<a href="/cgi-bin/koha/catalogue/search.pl?idx=callnum&amp;q=%22[% available_items_loo.itemcallnumber |uri %]%22">[% available_items_loo.itemcallnumber | html %]</a>][% END %]
474                                         ([% available_items_loo.count | html %])
475                                         [% IF item_level_itypes && available_items_loo.description %]
476                                         <br/>[% available_items_loo.description | html %]
477                                         [% END %]
478                                         </li>
479                                     [% END %]
480                                     </ul>
481                                     [% END %]
482
483                                    [% IF ( SEARCH_RESULT.onloancount ) %]
484                                    <span class="status">[% SEARCH_RESULT.onloancount | html %] on loan:</span>
485                                     <ul>
486                                     [% FOREACH onloan_items_loo IN SEARCH_RESULT.onloan_items_loop %]
487                                         [% IF item_level_itypes && !noItemTypeImages && onloan_items_loo.imageurl %]
488                                         <li style="list-style: none; list-style-type: none;">
489                                           <img src="[% onloan_items_loo.imageurl | html %]" title="[% onloan_items_loo.description | html %]" alt="[% onloan_items_loo.description | html %]" />
490                                         [% ELSE %]
491                                         <li>
492                                         [% END %]
493                                         [% IF ( onloan_items_loo.branchname ) %][% onloan_items_loo.branchname | html %][% END %]
494                                         [% IF ( onloan_items_loo.location ) %]<span class="shelvingloc">[% onloan_items_loo.location | html %]</span>[% END %]
495                                         [% IF ( onloan_items_loo.itemcallnumber ) %][<a href="/cgi-bin/koha/catalogue/search.pl?idx=callnum&amp;q=%22[% onloan_items_loo.itemcallnumber |uri %]%22">[% onloan_items_loo.itemcallnumber | html %]</a>][% END %]
496                                         ([% onloan_items_loo.count | html %][% IF ( onloan_items_loo.longoverdue ) %], [% onloan_items_loo.longoverdue | html %] long overdue[% END %]) date due: [% onloan_items_loo.due_date | $KohaDates %]
497                                         [% IF item_level_itypes && onloan_items_loo.description %]
498                                         <br/>[% onloan_items_loo.description | html %]
499                                         [% END %]
500                                         </li>
501                                     [% END %]
502                                     </ul>
503                                     [% END %]
504
505                                     [% IF ( SEARCH_RESULT.othercount ) %]
506                                     <span class="unavailable">[% SEARCH_RESULT.othercount | html %] unavailable:</span>
507                                     <ul>
508                                     [% FOREACH other_items_loo IN SEARCH_RESULT.other_items_loop %]
509                                         [% IF item_level_itypes && !noItemTypeImages && other_items_loo.imageurl %]
510                                         <li style="list-style: none; list-style-type: none;">
511                                           <img src="[% other_items_loo.imageurl | html %]" title="[% other_items_loo.description | html %]" alt="[% other_items_loo.description | html %]" />
512                                         [% ELSE %]
513                                         <li>
514                                         [% END %]
515                                         [% IF ( other_items_loo.branchname ) %][% other_items_loo.branchname | html %][% END %]
516                                         [% IF ( other_items_loo.location ) %]<span class="shelvingloc">[% other_items_loo.location | html %]</span>[% END %]
517                                         [% IF ( other_items_loo.itemcallnumber ) %][<a href="/cgi-bin/koha/catalogue/search.pl?idx=callnum&amp;q=%22[% other_items_loo.itemcallnumber |uri %]%22">[% other_items_loo.itemcallnumber | html %]</a>][% END %]
518                                         [% IF ( other_items_loo.withdrawn ) %]([% AuthorisedValues.GetByCode( 'WITHDRAWN', other_items_loo.withdrawn ) | html %])[% END %]
519                                         [% IF ( other_items_loo.itemlost ) %]([% AuthorisedValues.GetByCode( 'LOST', other_items_loo.itemlost ) | html %])[% END %]
520                                         [% IF ( other_items_loo.damaged ) %]([% AuthorisedValues.GetByCode( 'DAMAGED', other_items_loo.damaged ) | html %])[% END %]
521                                         [% IF ( other_items_loo.intransit ) %](In transit)[% END %]
522                                         [% IF ( other_items_loo.onhold ) %](On hold)[% END %]
523                                         [% IF ( other_items_loo.notforloan ) %][% other_items_loo.notforloan | html %][% END %]
524                                         ([% other_items_loo.count | html %])
525                                         [% IF item_level_itypes && other_items_loo.description %]
526                                         <br/>[% other_items_loo.description | html %]
527                                         [% END %]
528                                         </li>
529                                     [% END %]
530                                     </ul>
531                                     [% END %]
532                                     [% ELSE %]
533                                     [% IF ( SEARCH_RESULT.ALTERNATEHOLDINGS.count ) %]
534                                     <strong id="altholdings_heading">Other holdings:</strong>
535                                     <ul>
536                                     [% FOREACH ALTERNATEHOLDING IN SEARCH_RESULT.ALTERNATEHOLDINGS %]
537                                     <li id="alternateholdings">[% ALTERNATEHOLDING.holding | html %]</li>
538                                     [% END %]
539                                     </ul>
540                                     [% ELSE %]
541                                     <span class="unavailable">No items</span>
542                                     [% END %]
543                                     [% END %] <!-- /items count -->
544                                     </div></td>
545
546                             </tr>
547                         [% END %]
548                 </table>
549                 </form>
550                 </div>
551         [% END %]
552         [% INCLUDE 'page-numbers.inc' %]
553     [% ELSE %]
554     <!-- No Results Found -->
555     [% END %]
556 [% IF ( outer_sup_results_loop ) %]
557 </div>
558 <div class="col-sm-4">
559 [% FOREACH outer_sup_results_loo IN outer_sup_results_loop %]
560 <!-- <div class="yui-b"> -->
561     [% IF ( outer_sup_results_loo.inner_sup_results_loop ) %]
562         [% outer_sup_results_loo.servername | html %]
563         [% FOREACH inner_sup_results_loo IN outer_sup_results_loo.inner_sup_results_loop %]
564         <div><a href="/cgi-bin/koha/catalogue/search.pl?[% inner_sup_results_loo.query_cgi | $raw %][% inner_sup_results_loo.limit_cgi | $raw %][% inner_sup_results_loo.sort_by | uri %][% inner_sup_results_loo.link | uri %]">[% inner_sup_results_loo.title | html %]</a></div>
565         [% END %]
566     [% END %]
567 <!-- </div> -->
568 [% END %]
569 </div>
570 </div>
571 [% END %]
572
573 <form id="hold_form" method="get" action="/cgi-bin/koha/reserve/request.pl">
574     <!-- Value will be set here by placeHold() -->
575     <input id="hold_form_biblios" type="hidden" name="biblionumbers" value="" />
576     <input type="hidden" name="findborrower" id="holdFor" value="" />
577     <input type="hidden" name="multi_hold" value="1"/>
578 </form>
579
580 <form id="list_form" method="get" action="/cgi-bin/koha/reserve/request.pl">
581     <!-- Value will be set here by addToList() -->
582     <input id="list_form_biblios" type="hidden" name="biblionumbers" value="" />
583     <input type="hidden" name="multi_listadd" value="1"/>
584 </form>
585
586             </main>
587         </div> <!-- /.col-sm-10.col-sm-push-2 -->
588
589         <div class="col-sm-2 col-sm-pull-10">
590             <aside>
591                 [% INCLUDE 'facets.inc' %]
592             </aside>
593         </div> <!-- /.col-sm-2.col-sm-pull-10 -->
594      </div> <!-- /.row -->
595
596 [% MACRO jsinclude BLOCK %]
597     [% INCLUDE 'browser-strings.inc' %]
598     [% Asset.js("js/browser.js") | $raw %]
599     [% Asset.js("lib/hc-sticky.js") | $raw %]
600     [% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %]
601     <script>
602         var MSG_NO_ITEM_SELECTED = _("Nothing is selected.");
603         var MSG_NON_RESERVES_SELECTED = _("One or more selected items cannot be placed on hold.");
604         var q_array = new Array();  // will hold search terms, if present
605         [% IF ( AmazonCoverImages ) %]
606             // http://www.oreillynet.com/pub/a/javascript/2003/10/21/amazonhacks.html
607             function verify_images() {
608                 $("img").each(function(i){
609                     if ((this.src.indexOf('images-amazon.com') >= 0) || (this.src.indexOf('images.amazon.com') >=0)) {
610                         w = this.width;
611                         h = this.height;
612                         if ((w == 1) || (h == 1)) {
613                             this.src = 'https://images-na.ssl-images-amazon.com/images/G/01/x-site/icons/no-img-sm.gif';
614                         } else if ((this.complete != null) && (!this.complete)) {
615                             this.src = 'https://images-na.ssl-images-amazon.com/images/G/01/x-site/icons/no-img-sm.gif';
616                         }
617                     }
618                 });
619             }
620
621             $(window).load(function() {
622                 verify_images();
623             });
624         [% END %]
625         var Sticky;
626         $(document).ready(function() {
627             Sticky = $("#searchheader");
628             Sticky.hcSticky({
629                 stickTo: "main",
630                 stickyClass: "floating"
631             });
632
633             $("#cartsubmit").click(function(e){
634                 e.preventDefault();
635                 addMultiple();
636             });
637
638             $(".addtolist").on("click",function(e){
639                 e.preventDefault();
640                 var shelfnumber = $(this).data("shelfnumber");
641                 var vshelf = vShelfAdd();
642                 if( vshelf ){
643                     if( $(this).hasClass("morelists") ){
644                         openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?' + vshelf);
645                     } else if( $(this).hasClass("newlist") ){
646                         openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?newshelf=1&' + vshelf);
647                     } else {
648                         openWindow('/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?shelfnumber='+shelfnumber+'&confirm=1&' + vshelf);
649                     }
650                 }
651             });
652
653             $("#z3950submit").click(function(){
654                 PopupZ3950();
655                 return false;
656             });
657
658             $("#searchheader").on("click", ".browse_selection", function(){
659                 browse_selection();
660                 return false;
661             });
662
663             $("#searchheader").on("click",".placehold", function(){
664                 $("#holdFor").val("");
665                 placeHold();
666                 $(".btn-group").removeClass("open");
667                 return false;
668             });
669
670             $(".placeholdfor").click(function(){
671                 holdForPatron();
672                 $(".btn-group").removeClass("open");
673                 return false;
674             });
675
676             $("#forgetholdfor").click(function(){
677                 forgetPatron();
678                 $(".btn-group").removeClass("open");
679                 return false;
680             });
681
682             $("#tagsel_span").html("<input id=\"tagsel_tag\" class=\"submit\" type=\"submit\" value=\"Tag\"/>");
683
684             $(".selection").show();
685
686             [% IF ( query_desc ) %]
687                 toHighlight = $("p,span.results_summary,a.title");
688                 var query_desc = "[% query_desc |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') | html %]";
689                 q_array = query_desc.split(" ");
690                 // ensure that we don't have "" at the end of the array, which can
691                 // break the highlighter
692                 while (q_array.length > 0 && q_array[q_array.length-1] == "") {
693                     q_array = q_array.splice(0,-1);
694                 }
695                 highlightOn();
696                 $("#highlight_toggle_on" ).hide().click(function(e) {
697                     e.preventDefault();
698                      highlightOn();
699                 });
700                 $("#highlight_toggle_off").show().click(function(e) {
701                     e.preventDefault();
702                     highlightOff();
703                 });
704             [% END %]
705
706             [% IF (SEARCH_RESULTS) %]
707                 var newresults = [
708                     [%- FOREACH result IN SEARCH_RESULTS -%]
709                         [%- result.biblionumber | html %],
710                     [%- END -%]
711                 ];
712                 var browser = KOHA.browser('[% searchid | html %]', parseInt('[% biblionumber | html %]', 10));
713                 browser.create([% SEARCH_RESULTS.first.result_number | html %], '[% query_cgi | html %]', '[% limit_cgi | html %]','[% sort_cgi | html %]',
714                        newresults, '[% total | html %]');
715             [% END %]
716
717             [% IF (gotoPage && gotoNumber) %]
718                 [% IF (gotoNumber == 'first') %]
719                     window.location = '/cgi-bin/koha/catalogue/[% gotoPage | html %]?biblionumber=' + [% SEARCH_RESULTS.first.biblionumber | html %] + '&searchid=[% searchid | html %]';
720                 [% ELSIF (gotoNumber == 'last') %]
721                     window.location = '/cgi-bin/koha/catalogue/[% gotoPage | html %]?biblionumber=' + [% SEARCH_RESULTS.last.biblionumber | html %] + '&searchid=[% searchid | html %]';
722                 [% END %]
723             [% END %]
724
725             [% IF LocalCoverImages %]
726                 KOHA.LocalCover.LoadResultsCovers();
727             [% END %]
728
729             $("#select_all").on("click",function(e){
730                 e.preventDefault();
731                 selectAll();
732             });
733
734             $("#clear_all").on("click",function(e){
735                 e.preventDefault();
736                 clearAll();
737             });
738
739             $("#searchresults").on("click",".addtocart",function(e){
740                 e.preventDefault();
741                 var selection_id = this.id;
742                 var biblionumber = selection_id.replace("cart","");
743                 addRecord(biblionumber);
744             });
745
746             $("#searchresults").on("click",".cartRemove",function(e){
747                 e.preventDefault();
748                 var selection_id = this.id;
749                 var biblionumber = selection_id.replace("cartR","");
750                 delSingleRecord(biblionumber);
751             });
752
753             [% UNLESS Koha.Preference('BrowseResultSelection') %]
754                 resetSearchContext();
755             [% END %]
756             $(".selection").change(function(){
757                 if ( $(this).is(':checked') == true ) {
758                   addBibToContext( $(this).val() );
759                 } else {
760                   delBibToContext( $(this).val() );
761                 }
762             });
763             $("#bookbag_form").ready(function(){
764                 $("#bookbag_form").unCheckCheckboxes();
765                 var bibnums = getContextBiblioNumbers();
766                 if (bibnums) {
767                     for (var i=0; i < bibnums.length; i++) {
768                         var id = ('#bib' + bibnums[i]);
769                         if ($(id)) {
770                             $(id).attr('checked', true);
771                         }
772                     }
773                 }
774             });
775
776         });
777
778
779         [% IF ( query_desc ) %]
780             function highlightOff() {
781                 toHighlight.removeHighlight();
782                 $(".highlight_toggle").toggle();
783             }
784             function highlightOn() {
785                 var x;
786                 for (x in q_array) {
787                     q_array[x] = q_array[x].toLowerCase();
788                     var myStopwords = "[% Koha.Preference('NotHighlightedWords') | html %]".toLowerCase().split('|');
789                     if ( (q_array[x].length > 0) && ($.inArray(q_array[x], myStopwords) == -1) ) {
790                         toHighlight.highlight(q_array[x]);
791                     }
792                 }
793                 $(".highlight_toggle").toggle();
794             }
795         [% END %]
796
797         function selectAll () {
798             $("#bookbag_form").checkCheckboxes();
799             $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
800                 $(this).change();
801             } );
802             return false;
803         }
804         function clearAll () {
805             $("#bookbag_form").unCheckCheckboxes();
806             $("#bookbag_form").find("input[type='checkbox'][name='biblionumber']").each(function(){
807                 $(this).change();
808             } );
809             return false;
810         }
811         function placeHold () {
812             var checkedItems = $(".selection:checked");
813             if ($(checkedItems).size() == 0) {
814                 alert(MSG_NO_ITEM_SELECTED);
815                 return false;
816             }
817             var bibs = "";
818             var badBibs = false;
819             $(checkedItems).each(function() {
820                 var bib = $(this).val();
821                 if ($("#reserve_" + bib).size() == 0) {
822                     alert(MSG_NON_RESERVES_SELECTED);
823                     badBibs = true;
824                     return false;
825                 }
826                 bibs += bib + "/";
827             });
828             if (badBibs) {
829                 return false;
830             }
831             $("#hold_form_biblios").val(bibs);
832             $("#hold_form").submit();
833             return false;
834         }
835
836         function forgetPatron(){
837             $.removeCookie("holdfor", { path: '/' });
838             $(".holdforlink").remove();
839             $("#placeholdc").html("<a class=\"btn btn-default btn-xs placehold\" href=\"#\"><i class=\"fa fa-sticky-note-o\"></i> "+_("Place hold")+"</a>");
840         }
841
842         function browse_selection () {
843             var bibnums = getContextBiblioNumbers();
844             if ( bibnums && bibnums.length > 0 ) {
845                 var browser = KOHA.browser('', parseInt('[% biblionumber | html %]', 10));
846                 browser.create(1, '[% query_cgi | html %]', '[% limit_cgi | html %]','[% sort_cgi | html %]', bibnums, bibnums.length);
847                 window.location = '/cgi-bin/koha/catalogue/detail.pl?biblionumber=' + bibnums[0] + '&searchid='+browser.searchid;
848             } else {
849                 alert(MSG_NO_ITEM_SELECTED);
850             }
851             return false;
852         }
853
854         function addToList () {
855             var checkedItems = $(".selection:checked");
856             if ($(checkedItems).size() == 0) {
857                 alert(MSG_NO_ITEM_SELECTED);
858                 return false;
859             }
860             var bibs = "";
861             $(checkedItems).each(function() {
862                 bibs += $(this).val() + "/";
863             });
864
865             var url = "/cgi-bin/koha/virtualshelves/addbybiblionumber.pl?biblionumbers=" + bibs;
866             window.open(url, 'Add_to_virtualshelf', 'width=500, height=400, toolbar=false, scrollbars=yes');
867             return false;
868         }
869
870         /* this function open a popup to search on z3950 server.  */
871         function PopupZ3950() {
872             var strQuery = GetZ3950Terms();
873             if(strQuery){
874                 window.open("/cgi-bin/koha/cataloguing/z3950_search.pl?biblionumber=[% biblionumber | html %]"+strQuery,"z3950search",'width=740,height=450,location=yes,toolbar=no,scrollbars=yes,resize=yes');
875             }
876         }
877         /* provide Z3950 search points */
878         function GetZ3950Terms(){
879             var strQuery="&frameworkcode=";
880             [% FOREACH z3950_search_param IN z3950_search_params %]
881                 strQuery += "&" + "[% z3950_search_param.name |uri %]" + "=" + "[% z3950_search_param.value |uri %]";
882             [% END %]
883             return strQuery;
884         }
885
886         function holdfor(){
887             $("#holdFor").val("");
888             placeHold();
889         }
890
891         function holdForPatron() {
892             $("#holdFor").val("[% holdfor_cardnumber | html %]");
893             placeHold();
894         }
895     </script>
896 [% END %]
897
898 [% INCLUDE 'intranet-bottom.inc' %]