Koha/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt
Owen Leonard ca80bf67ce
Bug 33154: Tab WRAPPER follow-up: label text must be translatable
This patch updates templates which have already been updated to use the
new tab WRAPPER system for generating tab markup. Templates are changed
so that tab label strings are wrapped in <span> to make them
translatable.

The html_helpers include file is also updated so that the example code
in comments shows the right pattern (the breadcrumb example is similarly
corrected).

To test apply the patch and run the translation script to update the .po
files, e.g.

perl misc/translator/translate update fr-FR

Check the updated .po files for some of the lines modified in the patch:

 - koha-tmpl/intranet-tmpl/prog/en/modules/about.tt:31
 - koha-tmpl/intranet-tmpl/prog/en/modules/acqui/addorderiso2709.tt:69
 - koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basketgroup.tt:330
 - koha-tmpl/intranet-tmpl/prog/en/modules/acqui/invoices.tt:141
 - koha-tmpl/intranet-tmpl/prog/en/modules/admin/item_circulation_alerts.tt:118
 - koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt:259
 - koha-tmpl/intranet-tmpl/prog/en/modules/tools/letter.tt:455
 - koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-detail.tt:98

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-04-13 11:47:54 -03:00

411 lines
22 KiB
Text

[% USE raw %]
[% USE Asset %]
[% USE AuthorisedValues %]
[% USE Branches %]
[% USE CGI %]
[% USE KohaDates %]
[% USE Koha %]
[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Serials [% biblionumber | html %] &rsaquo; Koha</title>
[% INCLUDE 'doc-head-close.inc' %]
<style>input.dt-filter { width : 100%; font-size : 85%; }</style>
</head>
<body id="ser_serials-search" class="ser">
[% WRAPPER 'header.inc' %]
[% INCLUDE 'serials-search.inc' %]
[% END %]
[% WRAPPER 'sub-header.inc' %]
<nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
<ol>
<li>
<a href="/cgi-bin/koha/mainpage.pl">Home</a>
</li>
[% IF ( done_searched ) %]
<li>
<a href="/cgi-bin/koha/serials/serials-home.pl">Serials</a>
</li>
<li>
<a href="#" aria-current="page">
Search results
</a>
</li>
[% ELSE %]
<li>
<a href="#" aria-current="page">
Serials
</a>
</li>
[% END %]
</ol>
</nav>
[% END %]
[% url_params = [] %]
[% FOREACH param IN CGI.params.pairs %]
[% escaped_value = BLOCK %][% param.value | uri %][% END %]
[% url_params.push(param.key _ '=' _ escaped_value) %]
[% END %]
[% SET referrer = '/cgi-bin/koha/serials/serials-search.pl?' %]
[% referrer = BLOCK %][% referrer | url %][% url_params.join("&amp;") |uri %][% END %]
[% SET edit_action_link = '/cgi-bin/koha/serials/subscription-batchedit.pl?referrer=' _ referrer %]
[% BLOCK subscriptions_table %]
<form method="post">
[% IF closed %]
[% SET tab = 'closed' %]
[% ELSE %]
[% SET tab = 'opened' %]
[% END %]
[% IF CAN_user_serials_edit_subscription %]
<div class="actions">
<a class="select-all" href="#" data-tab="[% tab | html %]"><i class="fa fa-check"></i> Select all</a>
|
<a class="clear-all" href="#" data-tab="[% tab | html %]"><i class="fa fa-remove"></i> Clear all</a>
<span class="itemselection_actions">
| Actions:
<a class="itemselection_action_modify"><i class="fa fa-pencil"></i> Edit selected serials</a>
</span>
</div>
[% END %]
<table>
<thead>
<tr>
<th></th>
<th>ISSN</th>
<th class="anti-the">Title</th>
<th>Notes</th>
<th>Library</th>
<th>Location</th>
<th>Call number</th>
[% UNLESS closed %]
<th>Expiration date</th>
[% END %]
[% FOR field IN additional_fields_for_subscription %]
<th>[% field.name | html %]</th>
[% END %]
<th class="NoSort noExport">Actions</th>
</tr>
</thead>
<tbody>
[% FOREACH subscription IN subscriptions %]
[% UNLESS subscription.cannotdisplay %]
<tr>
<td>
[% UNLESS subscription.cannotedit %]
<input type="checkbox" name="subscriptionid" value="[% subscription.subscriptionid | html %]" />
[% ELSE %]
<input type="checkbox" name="subscriptionid" value="[% subscription.subscriptionid | html %]" disabled="disabled" title="You cannot edit this subscription" />
[% END %]
</td>
<td>
[% IF ( subscription.issn ) %]
[% subscription.issn | html %]
[% END %]
</td>
<td>
<a href="/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=[% subscription.subscriptionid | uri %]" class="button" title="subscription detail">[% subscription.title | html %] [% subscription.subtitle | html %]</a>
</td>
<td>
[% IF ( subscription.publicnotes ) %][% subscription.publicnotes | html %][% END %]
[% IF ( subscription.internalnotes ) %]([% subscription.internalnotes | html %])[% END %]
</td>
<td>
[% IF ( subscription.branchcode ) %][% Branches.GetName( subscription.branchcode ) | html %][% END %]
</td>
<td>
[% IF ( subscription.location ) %]
[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.location', authorised_value => subscription.location ) | html %]
[% END %]
</td>
<td>
[% IF ( subscription.callnumber ) %][% subscription.callnumber | html %][% END %]
</td>
[% UNLESS closed %]
<td data-order="[% subscription.enddate | html %]">
[% subscription.enddate | $KohaDates %]
</td>
[% END %]
[% FOR field IN additional_fields_for_subscription %]
[% IF field.authorised_value_category %]
<td>[% AuthorisedValues.GetByCode( field.authorised_value_category, subscription.additional_fields.${field.name} ) | html %]</td>
[% ELSE %]
<td>[% subscription.additional_fields.${field.name} | html %]</td>
[% END %]
[% END %]
<td>
<div class="btn-group dropup">
[% IF closed %]
<a class="btn btn-default btn-xs dropdown-toggle" id="closedsubactions[% subscription.subscriptionid | html %]" role="button" data-toggle="dropdown" href="#">
Actions <b class="caret"></b>
</a>
<ul class="dropdown-menu pull-right" role="menu" aria-labelledby="closedsubactions[% subscription.subscriptionid | html %]">
[% IF ( routing && CAN_user_serials_routing ) %]
[% UNLESS ( subscription.cannotedit ) %]
<li>
<a href="/cgi-bin/koha/serials/serials-search.pl?subscriptionid=[% subscription.subscriptionid | uri %]&amp;op=reopen&amp;routing=[% subscription.routing | uri %]&amp;searched=1&amp;title_filter=[% title_filter | uri %]&amp;ISSN_filter=[% ISSN_filter | uri %]&amp;EAN_filter=[% EAN_filter | uri %]&amp;published_filter=[% publisher_filter | uri %]&amp;bookseller_filter=[% bookseller_filter | uri %]&amp;branch_filter=[% branch_filter | uri %]" id="reopensub"> <i class="fa fa-repeat"></i> Reopen</a>
</li>
[% END %]
[% END # IF ( routing && CAN_user_serials_routing ) %]
<li>
<a href="/cgi-bin/koha/serials/serials-collection.pl?subscriptionid=[% subscription.subscriptionid | uri %]"><i class="fa fa-list-alt"></i> Issue history</a>
</li>
</ul>
[% ELSE %]
<div class="btn-group">
[% IF ( CAN_user_serials_receive_serials ) %]
[%# There should be no space between these two buttons, it would render badly %]
<a class="btn btn-default btn-xs" role="button"
href="/cgi-bin/koha/serials/serials-edit.pl?subscriptionid=[% subscription.subscriptionid | html %]&amp;serstatus=1,3,7"><i
class="fa fa-inbox"></i> Serial receive</a><a
class="btn btn-default btn-xs dropdown-toggle" id="subactions[% subscription.subscriptionid | html %]" role="button"
data-toggle="dropdown" href="#"><b class="caret"></b></a>
[% ELSE %]
<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>
[% END %]
<ul class="dropdown-menu pull-right" role="menu" aria-labelledby="subactions[% subscription.subscriptionid | html %]">
[% IF ( routing && CAN_user_serials_routing ) %]
[% IF ( subscription.cannotedit ) %]
[% ELSE %]
[% IF ( subscription.routingedit ) %]
<li>
<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>
</li>
[% ELSE %]
<li>
<a href="/cgi-bin/koha/serials/routing.pl?subscriptionid=[% subscription.subscriptionid | uri %]&amp;op=new"> <i class="fa fa-plus"></i> New routing list</a>
</li>
[% END %]
[% END %]
[% END # IF ( routing && CAN_user_serials_routing ) %]
<li>
<a href="/cgi-bin/koha/serials/serials-collection.pl?subscriptionid=[% subscription.subscriptionid | uri %]"><i class="fa fa-list-alt"></i> Issue history</a>
</li>
</ul>
</div>
[% END # IF closed %]
</div> <!-- /.btn-group -->
</td>
</tr>
[% END # /UNLESS subscription.cannotdisplay %]
[% END # /FOREACH subscription %]
</tbody>
<tfoot>
<tr>
<td></td>
<td><input type="text" class="dt-filter" data-column_num="1" placeholder="Search ISSN" /></td>
<td><input type="text" class="dt-filter" data-column_num="2" placeholder="Search title" /></td>
<td><input type="text" class="dt-filter" data-column_num="3" placeholder="Search notes" /></td>
<td><input type="text" class="dt-filter" data-column_num="4" placeholder="Search library" /></td>
<td><input type="text" class="dt-filter" data-column_num="5" placeholder="Search location" /></td>
<td><input type="text" class="dt-filter" data-column_num="6" placeholder="Search callnumber" /></td>
[% SET column_num = 6 %]
[% UNLESS closed %]
<td><input type="text" class="dt-filter" data-column_num="7" placeholder="Search expiration date" /></td>
[% SET column_num = column_num + 1 %]
[% END %]
[% FOR field IN additional_fields_for_subscription %]
<td><input type="text" class="dt-filter" data-column_num="[% loop.count + column_num | html %]" placeholder="Search [% field.name | html %]" /></td>
[% END %]
<td></td>
</tr>
</tfoot>
</table>
</form>
[% END # /BLOCK subscriptions_table %]
<div class="main container-fluid">
<div class="row">
<div class="col-sm-10 col-sm-push-2">
<main>
[% INCLUDE 'serials-toolbar.inc' %]
[% IF ( mana ) %]
[% IF ( done_searched ) %]
<h1>Mana subscriptions ([% total | html %] found)</h1>
[% ELSE %]
<h1>Mana subscriptions search</h1>
[% END %]
[% ELSE %]
[% IF ( done_searched ) %]
<h1>Serials subscriptions ([% total | html %] found)</h1>
[% ELSE %]
<h1>Serials subscriptions search</h1>
[% END %]
[% END %]
[% UNLESS ( done_searched ) %]
[% INCLUDE 'serials-advsearch.inc' %]
[% END # /UNLESS ( done_searched )%]
[% IF ( done_searched ) %]
[% IF ( total ) %]
[% WRAPPER tabs id= "serialstabs" %]
[% WRAPPER tabs_nav %]
[% IF mana %]
[% WRAPPER tab_item tabname= "mana" bt_active= 1 %] <span>Mana</span> ([% total || 0 | html %]) [% END %]
[% ELSE %]
[% WRAPPER tab_item tabname= "opened" bt_active= 1 %] <span>Open</span> ([% openedsubscriptions.size || 0 | html %]) [% END %]
[% WRAPPER tab_item tabname= "closed" %] <span>Closed</span> ([% closedsubscriptions.size || 0 | html %]) [% END %]
[% END %]
[% END # /WRAPPER tabs_nav %]
[% WRAPPER tab_panels %]
[% IF mana %]
[% WRAPPER tab_panel tabname="mana" bt_active= 1 %]
[% INCLUDE 'mana/mana-subscription-search-result.inc' %]
[% END # /WRAPPER tab_panel#mana %]
[% ELSE %]
[% WRAPPER tab_panel tabname="opened" bt_active= 1 %]
[% IF openedsubscriptions %]
[% INCLUDE subscriptions_table subscriptions = openedsubscriptions %]
[% ELSE %]
<div class="dialog message">
<p>Your search returned no open subscriptions.</p>
</div>
[% END %]
[% END # /WRAPPER tab_panel#opened %]
[% WRAPPER tab_panel tabname="closed" %]
[% IF closedsubscriptions %]
[% INCLUDE subscriptions_table subscriptions = closedsubscriptions closed = 1 %]
[% ELSE %]
<div class="dialog message">
<p>Your search returned no closed subscriptions.</p>
</div>
[% END %]
[% END # /WRAPPER tab_panel#closed %]
[% END # /IF mana %]
[% END # /WRAPPER tab_panels %]
[% END # /WRAPPER tabs#serialstabs %]
[% ELSE %]
<div class="dialog message">
<p>Your search returned no results.</p>
</div>
[% END # IF ( total ) %]
[% END # /IF done_searched %]
</main>
</div> <!-- /.col-sm-10.col-sm-push-2 -->
<div class="col-sm-2 col-sm-pull-10">
<aside>
[% IF ( done_searched ) %]
[% UNLESS ( mana ) %]
[% INCLUDE 'serials-advsearch.inc' brief=1 %]
[% END # / UNLESS ( mana ) %]
[% END # / IF ( done_searched ) %]
[% INCLUDE 'serials-menu.inc' %]
</aside>
</div> <!-- /.col-sm-2.col-sm-pull-10 -->
</div> <!-- /.row -->
[% MACRO jsinclude BLOCK %]
[% INCLUDE 'calendar.inc' %]
[% INCLUDE 'datatables.inc' %]
<script>
var subscriptionid = "[% subscriptionid | html %]";
</script>
[% Asset.js("js/serials-toolbar.js") | $raw %]
<script>
function itemSelectionBuildEditLink(div) {
var subscription_ids = new Array();
$("input[name='subscriptionid'][type='checkbox']:checked", div).each(function() {
subscription_ids.push($(this).val());
});
if (subscription_ids.length > 0) {
var url = "[% edit_action_link | html %]";
url += '&subscriptionid=' + subscription_ids.join('&subscriptionid=');
$('a.itemselection_action_modify').attr('href', url);
} else {
return false;
}
return true;
}
function itemSelectionBuildActionLinks(tab) {
var div = $("#" + tab);
var modify_link_ok = itemSelectionBuildEditLink(div);
if (modify_link_ok) {
$('.itemselection_actions', div).show();
} else {
$('.itemselection_actions', div).hide();
}
}
$(document).ready(function() {
var osrlt = $("#opened_panel table").dataTable($.extend(true, {}, dataTablesDefaults, {
"sPaginationType": "full",
"order": [[ 2, "asc" ]],
"aoColumnDefs": [
{ 'bSortable': false, "bSearchable": false, 'aTargets': [ 'NoSort' ] },
{ 'sType': "anti-the", 'aTargets' : [ 'anti-the'] }
]
}));
var csrlt = $("#closed_panel table").dataTable($.extend(true, {}, dataTablesDefaults, {
// FIXME sort function of additional_fields!
"order": [[ 2, "asc" ]],
"sPaginationType": "full",
"aoColumnDefs": [
{ 'bSortable': false, 'aTargets': [ 'NoSort' ] },
{ 'sType': "anti-the", 'aTargets' : [ 'anti-the'] }
]
}));
var manarlt = $("#mana_results_datatable").dataTable($.extend(true, {}, dataTablesDefaults, {
"sPaginationType": "full",
"aoColumnDefs": [
{ 'bSortable': false, "bSearchable": false, 'aTargets': [ 'NoSort' ] },
{ 'sType': "anti-the", 'aTargets' : [ 'anti-the'] }
]
}));
osrlt.fnAddFilters("dt-filter", 750);
csrlt.fnAddFilters("dt-filter", 750);
manarlt.fnAddFilters("dt-filter", 750);
$("#reopensub").click(function(){
return confirm(_("Are you sure you want to reopen this subscription?"));
});
$('.select-all, .clear-all').on('click', function(e) {
e.preventDefault();
var checkboxes = $(this).parents('form').find('input[type="checkbox"]');
checkboxes.prop('checked', $(this).hasClass('select-all'));
var tab = $(this).data("tab");
itemSelectionBuildActionLinks(tab);
});
itemSelectionBuildActionLinks("opened");
itemSelectionBuildActionLinks("closed");
$("input[name='subscriptionid'][type='checkbox']").change(function() {
var div = $(this).parents('form').parent().attr("id");
itemSelectionBuildActionLinks(div);
});
[% IF ( mana ) %]
$(".local").hide();
[% FOR field IN additional_fields_for_subscription %]
$("label[for=additional_field_[% field.id | $raw %]], input#additional_field_[% field.id | $raw %]").hide();
[% END %]
[% END %]
});
</script>
[% END %]
[% INCLUDE 'intranet-bottom.inc' %]