3 [% USE AuthorisedValues %]
9 [% INCLUDE 'doc-head-open.inc' %]
10 <title>Koha › Serials [% biblionumber | html %]</title>
11 [% INCLUDE 'doc-head-close.inc' %]
12 <style>input.dt-filter { width : 100%; font-size : 85%; }</style>
15 <body id="ser_serials-home" class="ser">
16 [% INCLUDE 'header.inc' %]
17 [% INCLUDE 'serials-search.inc' %]
19 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › [% IF ( done_searched ) %]<a href="/cgi-bin/koha/serials/serials-home.pl">Serials</a> › Search results[% ELSE %]Serials [% END %] </div>
22 [% FOREACH param IN CGI.params.pairs %]
23 [% escaped_value = BLOCK %][% param.value | uri %][% END %]
24 [% url_params.push(param.key _ '=' _ escaped_value) | html %]
26 [% SET referrer = '/cgi-bin/koha/serials/serials-search.pl?' %]
27 [% referrer = BLOCK %][% referrer | url %][% url_params.join("&") |uri %][% END %]
28 [% SET edit_action_link = '/cgi-bin/koha/serials/subscription-batchedit.pl?referrer=' _ referrer %]
30 [% BLOCK subscriptions_table %]
34 [% SET tab = 'closed' %]
36 [% SET tab = 'opened' %]
38 [% IF CAN_user_serials_edit_subscription %]
40 <a class="select-all" href="#" data-tab="[% tab | html %]"><i class="fa fa-check"></i> Select all</a>
42 <a class="clear-all" href="#" data-tab="[% tab | html %]"><i class="fa fa-remove"></i> Clear all</a>
43 <span class="itemselection_actions">
45 <a class="itemselection_action_modify"><i class="fa fa-pencil"></i> Edit selected serials</a>
54 <th class="anti-the">Title</th>
60 <th class="title-string">Expiration date</th>
62 [% FOR field IN additional_fields_for_subscription %]
63 <th>[% field.name | html %]</th>
65 <th class="NoSort">Actions</th>
71 <td><input type="text" class="dt-filter" data-column_num="0" placeholder="Search ISSN" /></td>
72 <td><input type="text" class="dt-filter" data-column_num="1" placeholder="Search title" /></td>
73 <td><input type="text" class="dt-filter" data-column_num="2" placeholder="Search notes" /></td>
74 <td><input type="text" class="dt-filter" data-column_num="3" placeholder="Search library" /></td>
75 <td><input type="text" class="dt-filter" data-column_num="4" placeholder="Search location" /></td>
76 <td><input type="text" class="dt-filter" data-column_num="5" placeholder="Search callnumber" /></td>
78 <td><input type="text" class="dt-filter" data-column_num="6" placeholder="Search expiration date" /></td>
80 [% FOR field IN additional_fields_for_subscription %]
81 <td><input type="text" class="dt-filter" data-column_num="[% loop.count + 6 | html %]" placeholder="Search [% field.name | html %]" /></td>
87 [% FOREACH subscription IN subscriptions %]
88 [% UNLESS subscription.cannotdisplay %]
91 [% UNLESS subscription.cannotedit %]
92 <input type="checkbox" name="subscriptionid" value="[% subscription.subscriptionid | html %]" />
94 <input type="checkbox" name="subscriptionid" value="[% subscription.subscriptionid | html %]" disabled="disabled" title="You cannot edit this subscription" />
98 [% IF ( subscription.issn ) %][% subscription.issn | html %]
101 <td><a href="/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=[% subscription.subscriptionid | uri %]" class="button" title="subscription detail">[% subscription.title | html %]</a>
103 <td>[% IF ( subscription.publicnotes ) %][% subscription.publicnotes | html %][% END %]
104 [% IF ( subscription.internalnotes ) %]([% subscription.internalnotes | html %])[% END %]
107 [% IF ( subscription.branchcode ) %][% Branches.GetName( subscription.branchcode ) | html %][% END %]
110 [% IF ( subscription.location ) %][% AuthorisedValues.GetByCode( 'LOC', subscription.location ) | html %][% END %]
113 [% IF ( subscription.callnumber ) %][% subscription.callnumber | html %][% END %]
117 [% IF ( subscription.enddate ) %]
118 <span title="[% subscription.enddate | html %]">[% subscription.enddate | $KohaDates %]</span>
120 <span title="0000-00-00"></span>
125 [% FOR field IN additional_fields_for_subscription %]
126 [% IF field.authorised_value_category %]
127 <td>[% AuthorisedValues.GetByCode( field.authorised_value_category, subscription.additional_fields.${field.name} ) | html %]</td>
129 <td>[% subscription.additional_fields.${field.name} | html %]</td>
134 <div class="dropdown">
136 <a class="btn btn-default btn-xs dropdown-toggle" id="closedsubactions[% subscription.subscriptionid | html %]" role="button" data-toggle="dropdown" href="#">
137 Actions <b class="caret"></b>
139 <ul class="dropdown-menu pull-right" role="menu" aria-labelledby="closedsubactions[% subscription.subscriptionid | html %]">
141 [% IF ( routing && CAN_user_serials_routing ) %]
142 [% UNLESS ( subscription.cannotedit ) %]
144 <a href="/cgi-bin/koha/serials/serials-search.pl?subscriptionid=[% subscription.subscriptionid | uri %]&op=reopen&routing=[% subscription.routing | uri %]&searched=1&title_filter=[% title_filter | uri %]&ISSN_filter=[% ISSN_filter | uri %]&EAN_filter=[% EAN_filter | uri %]&published_filter=[% publisher_filter | uri %]&bookseller_filter=[% bookseller_filter | uri %]&branch_filter=[% branch_filter | uri %]" id="reopensub"> <i class="fa fa-repeat"></i> Reopen</a>
147 [% END # IF ( routing && CAN_user_serials_routing ) %]
150 <a href="/cgi-bin/koha/serials/serials-collection.pl?subscriptionid=[% subscription.subscriptionid | uri %]"><i class="fa fa-list-alt"></i> Issue history</a>
155 <div class="btn-group">
156 [% IF ( CAN_user_serials_receive_serials ) %]
157 [%# There should be no space between these two buttons, it would render badly %]
158 <a class="btn btn-default btn-xs" role="button"
159 href="/cgi-bin/koha/serials/serials-edit.pl?subscriptionid=[% subscription.subscriptionid | html %]&serstatus=1,3,7"><i
160 class="fa fa-inbox"></i> Serial receive</a><a
161 class="btn btn-default btn-xs dropdown-toggle" id="subactions[% subscription.subscriptionid | html %]" role="button"
162 data-toggle="dropdown" href="#"><b class="caret"></b></a>
164 <a class="btn btn-default btn-xs dropdown-toggle" id="subactions[% subscription.subscriptionid | html %]" role="button" data-toggle="dropdown" href="#">Actions <b class="caret"></b></a>
166 <ul class="dropdown-menu pull-right" role="menu" aria-labelledby="subactions[% subscription.subscriptionid | html %]">
168 [% IF ( routing && CAN_user_serials_routing ) %]
169 [% IF ( subscription.cannotedit ) %]
171 [% IF ( subscription.routingedit ) %]
173 <a href="/cgi-bin/koha/serials/routing.pl?subscriptionid=[% subscription.subscriptionid | uri %]"><i class="fa fa-pencil"></i> Edit routing list ([% subscription.routingedit | html %])</a>
177 <a href="/cgi-bin/koha/serials/routing.pl?subscriptionid=[% subscription.subscriptionid | uri %]&op=new"> <i class="fa fa-plus"></i> New routing list</a>
181 [% END # IF ( routing && CAN_user_serials_routing ) %]
184 <a href="/cgi-bin/koha/serials/serials-collection.pl?subscriptionid=[% subscription.subscriptionid | uri %]"><i class="fa fa-list-alt"></i> Issue history</a>
200 <div class="main container-fluid">
202 <div class="col-sm-10 col-sm-push-2">
205 [% INCLUDE 'serials-toolbar.inc' %]
207 [% IF ( done_searched ) %]
208 <h2>Serials subscriptions ([% total | html %] found)</h2>
210 <h2>Serials subscriptions search</h2>
213 [% UNLESS ( done_searched ) %]
214 <div id="advsearch" style="padding-bottom:3em;">
215 <form action="/cgi-bin/koha/serials/serials-search.pl" method="get">
216 <fieldset class="rows">
217 <legend>Search subscriptions</legend>
220 <label for="issn">ISSN:</label>
221 <input type="text" id="issn" name="ISSN_filter" value="[% ISSN_filter | html %]" />
224 <label for="title">Title:</label>
225 <input type="text" id="title" name="title_filter" value="[% title_filter | html %]" />
227 [% IF ( marcflavour == "UNIMARC" ) %]
229 <label for="ean">EAN:</label>
230 <input type="text" id="ean" name="EAN_filter" value="[% EAN_filter | html %]" />
234 <label for="callnumber">Call number:</label>
235 <input type="text" id="callnumber" name="callnumber_filter" value="[% callnumber_filter | html %]" />
238 <label for="publisher">Publisher:</label>
239 <input type="text" id="publisher" name="publisher_filter" value="[% publisher_filter | html %]" />
242 <label for="bookseller">Vendor:</label>
243 <input type="text" id="bookseller" name="bookseller_filter" value="[% bookseller_filter | html %]" />
246 <label for="branch">Library:</label>
247 <select id="branch" name="branch_filter">
248 <option value="">All</option>
249 [%# FIXME Should not we filter the libraries? %]
250 [% PROCESS options_for_libraries libraries => Branches.all( selected => branch_filter, unfiltered => 1 ) %]
254 <label for="location">Location:</label>
255 [% PROCESS 'av-build-dropbox.inc' name="location_filter", category="LOC", default=location_filter, all=1 %]
258 <label for="to">Expires before:</label>
259 <input type="text" id="to" name="expiration_date_filter" value="[% expiration_date_filter | $KohaDates %]" size="10" maxlength="10" class="datepickerto" />
261 [% FOR field IN additional_fields_for_subscription %]
263 <label for="additional_field_[% field.id | html %]"> [% field.name | html %]: </label>
264 [% IF field.authorised_value_choices %]
265 <select id="additional_field_[% field.id | html %]" name="additional_field_[% field.id | html %]_filter">
266 <option value="">All</option>
267 [% FOREACH av IN field.authorised_value_choices %]
268 <option value="[% av.authorised_value | html %]">[% av.lib | html %]</option>
272 <input id="additional_field_[% field.id | html %]" type="text" value="[% additional_fields.${field.name} | html %]" name="additional_field_[% field.id | html %]_filter" />
277 <input type="hidden" name="searched" value="1" />
278 [% IF ( mana ) %]<input type="hidden" name="mana" value="1" />[% END %]
279 <fieldset class="action">
280 <input type="submit" value="Search" />
286 [% IF ( done_searched ) %]
288 <div id="serialstabs" class="toptabs" style="clear:both;">
289 <ul class="ui-tabs-nav">
291 <li><a href="#mana">Mana ([% total || 0 | html %])</a></li>
293 <li><a href="#opened">Open ([% openedsubscriptions.size || 0 | html %])</a></li>
294 <li><a href="#closed">Closed ([% closedsubscriptions.size || 0 | html %])</a></li>
299 [% INCLUDE 'mana/mana-subscription-search-result.inc' %]
303 [% IF openedsubscriptions %]
304 [% INCLUDE subscriptions_table subscriptions = openedsubscriptions %]
306 <div class="dialog message">
307 <p>Your search returned no open subscriptions.</p>
312 [% IF closedsubscriptions %]
313 [% INCLUDE subscriptions_table subscriptions = closedsubscriptions closed = 1 %]
315 <div class="dialog message">
316 <p>Your search returned no closed subscriptions.</p>
323 <div class="dialog message">
324 <p>Your search returned no results.</p>
330 </div> <!-- /.col-sm-10.col-sm-push-2 -->
332 <div class="col-sm-2 col-sm-pull-10">
335 [% INCLUDE 'serials-menu.inc' %]
336 [% IF ( done_searched ) %]
337 [% UNLESS ( mana ) %]
339 <form action="/cgi-bin/koha/serials/serials-search.pl" method="get">
340 <fieldset class="brief">
341 <h4>Search subscriptions</h4>
344 <label for="issn">ISSN:</label>
345 <input type="text" id="issn" name="ISSN_filter" value="[% ISSN_filter | html %]" />
348 <label for="title">Title:</label>
349 <input type="text" id="title" name="title_filter" value="[% title_filter | html %]" />
351 [% IF ( marcflavour == "UNIMARC" ) %]
353 <label for="ean">EAN:</label>
354 <input type="text" id="ean" name="EAN_filter" value="[% EAN_filter | html %]" />
358 <label for="callnumber">Call number:</label>
359 <input type="text" id="callnumber" name="callnumber_filter" value="[% callnumber_filter | html %]" />
362 <label for="publisher">Publisher:</label>
363 <input type="text" id="publisher" name="publisher_filter" value="[% publisher_filter | html %]" />
366 <label for="bookseller">Vendor:</label>
367 <input type="text" id="bookseller" name="bookseller_filter" value="[% bookseller_filter | html %]" />
370 <label for="branch">Library:</label>
371 <select id="branch" name="branch_filter">
372 <option value="">All</option>
373 [%# FIXME Should not we filter the libraries? %]
374 [% PROCESS options_for_libraries libraries => Branches.all( selected => branch_filter, unfiltered => 1 ) %]
378 <label for="location">Location:</label>
379 [% PROCESS 'av-build-dropbox.inc' name="location_filter", category="LOC", default=location_filter, all=1 %]
382 <label for="to">Expires before:</label>
383 <input type="text" id="to" name="expiration_date_filter" value="[% expiration_date_filter | $KohaDates %]" size="10" maxlength="10" class="datepickerto" />
386 [% FOR field IN additional_fields_for_subscription %]
388 <label for="additional_field_[% field.id | html %]ID"> [% field.name | html %]: </label>
389 [% IF field.authorised_value_choices %]
390 <select id="additional_field_[% field.id | html %]" name="additional_field_[% field.id | html %]_filter">
391 <option value="">All</option>
392 [% FOREACH av IN field.authorised_value_choices %]
393 [% IF av.authorised_value == additional_field_filters.${field.name}.value %]
394 <option value="[% av.authorised_value | html %]" selected="selected">[% av.lib | html %]</option>
396 <option value="[% av.authorised_value | html %]">[% av.lib | html %]</option>
401 <input id="additional_field_[% field.id | html %]" type="text" value="[% additional_field_filters.${field.name}.value | html %]" name="additional_field_[% field.id | html %]_filter" />
406 <input type="hidden" name="searched" value="1" />
407 <fieldset class="action">
408 <input type="submit" value="Search" />
417 </div> <!-- /.col-sm-2.col-sm-pull-10 -->
418 </div> <!-- /.row -->
420 [% MACRO jsinclude BLOCK %]
421 [% INCLUDE 'calendar.inc' %]
422 [% INCLUDE 'datatables.inc' %]
423 [% INCLUDE 'mana.inc' %]
425 var subscriptionid = "[% subscriptionid | html %]";
426 var MSG_CLOSE_SUBSCRIPTION = _("Are you sure you want to close this subscription?");
427 var MSG_REOPEN_SUBSCRIPTION = _("Are you sure you want to reopen this subscription?");
428 var CONFIRM_DELETE_SUBSCRIPTION = _("Are you sure you want to delete this subscription?");
430 [% Asset.js("js/serials-toolbar.js") | $raw %]
433 function itemSelectionBuildEditLink(div) {
434 var subscription_ids = new Array();
435 $("input[name='subscriptionid'][type='checkbox']:checked", div).each(function() {
436 subscription_ids.push($(this).val());
438 if (subscription_ids.length > 0) {
439 var url = "[% edit_action_link | html %]";
440 url += '&subscriptionid=' + subscription_ids.join('&subscriptionid=');
441 $('a.itemselection_action_modify').attr('href', url);
448 function itemSelectionBuildActionLinks(tab) {
449 var div = $("#" + tab);
450 var modify_link_ok = itemSelectionBuildEditLink(div);
451 if (modify_link_ok) {
452 $('.itemselection_actions', div).show();
454 $('.itemselection_actions', div).hide();
458 $(document).ready(function() {
459 var osrlt = $("#opened table").dataTable($.extend(true, {}, dataTablesDefaults, {
460 "sPaginationType": "four_button",
461 "order": [[ 2, "asc" ]],
463 { 'bSortable': false, "bSearchable": false, 'aTargets': [ 'NoSort' ] },
464 { "sType": "title-string", "aTargets" : [ "title-string" ] },
465 { 'sType': "anti-the", 'aTargets' : [ 'anti-the'] }
469 var csrlt = $("#closed table").dataTable($.extend(true, {}, dataTablesDefaults, {
470 // FIXME sort function of additional_fields!
471 "order": [[ 2, "asc" ]],
472 "sPaginationType": "four_button",
474 { 'bSortable': false, 'aTargets': [ 'NoSort' ] },
475 { 'sType': "anti-the", 'aTargets' : [ 'anti-the'] }
479 var manarlt = $("#mana_results_datatable").dataTable($.extend(true, {}, dataTablesDefaults, {
480 "sPaginationType": "four_button",
482 { 'bSortable': false, "bSearchable": false, 'aTargets': [ 'NoSort' ] },
483 { "sType": "title-string", "aTargets" : [ "title-string" ] },
484 { 'sType': "anti-the", 'aTargets' : [ 'anti-the'] }
488 osrlt.fnAddFilters("dt-filter", 750);
489 csrlt.fnAddFilters("dt-filter", 750);
490 manarlt.fnAddFilters("dt-filter", 750);
492 $('#serialstabs').tabs();
493 $("#reopensub").click(function(){
494 return confirm(_("Are you sure you want to reopen this subscription?"));
497 $('.select-all, .clear-all').on('click', function(e) {
499 var checkboxes = $(this).parents('form').find('input[type="checkbox"]');
500 checkboxes.prop('checked', $(this).hasClass('select-all'));
501 var tab = $(this).data("tab");
502 itemSelectionBuildActionLinks(tab);
505 itemSelectionBuildActionLinks("opened");
506 itemSelectionBuildActionLinks("closed");
507 $("input[name='subscriptionid'][type='checkbox']").change(function() {
508 var div = $(this).parents('form').parent().attr("id");
509 itemSelectionBuildActionLinks(div);
513 $("label[for=callnumber], input#callnumber").hide();
514 $("label[for=bookseller], input#bookseller").hide();
515 $("label[for=branch], select#branch").hide();
516 $("label[for=to], input#to").hide();
517 $(".ui-datepicker-trigger").hide();
518 $("label[for=location], select#location_filter").hide();
519 [% FOR field IN additional_fields_for_subscription %]
520 $("label[for=additional_field_[% field.id | $raw %]], input#additional_field_[% field.id | $raw %]").hide();
527 [% INCLUDE 'intranet-bottom.inc' %]