Koha/koha-tmpl/intranet-tmpl/prog/en/modules/admin/classsources.tt
Owen Leonard 9bd21c7a38
Bug 33909: Improve translation of title tags: Administration
This patch updates administration templates so that title tags can be
more easily translated.

To test, apply the patch and confirm that the following
Administration pages have the correct title tags:

 - Libraries
 - Library groups
 - Item types
 - Authorized values
 - Patron categories
 - Circulation and fines rules
 - Patron attribute types
 - Library transfer limits
 - Library transfer limits advanced editor
 - Transport cost matrix
 - Item circulation alerts
 - Cities and towns
 - Curbside pickup
 - Patron restriction types
 - Debit types
 - Credit types
 - Cash registers
 - Manage plugins
 - Manage jobs
 - MARC bibliographic framework
 - Koha to MARC mapping
 - MARC Bibliographic framework test
 - Authority types
 - Classification configuration
 - Record matching rules
 - Record overlay rules
 - OAI sets configuration
 - Item search fields
 - Search engine configuration
 - Currencies and exchange rates
 - Budgets
 - Funds
 - EDI accounts
 - Library EANs
 - Network Printers
 - Identity providers
 - Z39.50/SRU servers
 - SMTP servers
 - Did you mean?
 - Table settings
 - Audio alerts
 - Share your usage statistics
 - Share content with Mana KB
 - Additional fields
 - Keyboard shortcuts

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-08-15 11:25:51 +03:00

504 lines
21 KiB
Text

[% USE raw %]
[% USE Asset %]
[% PROCESS 'i18n.inc' %]
[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
<title>[% FILTER collapse %]
[% IF op == 'add_source' %]
[% IF class_source %]
[% t("Modify classification source") | html %]
[% ELSE %]
[% t("Add classification source") | html %]
[% END %] &rsaquo;
[% ELSIF op == 'add_sort_rule' %]
[% IF sort_rule %]
[% t("Modify filing rule") | html %]
[% ELSE %]
[% t("Add filing rule") | html %]
[% END %] &rsaquo;
[% ELSIF op == 'add_split_rule' %]
[% IF split_rule %]
[% t("Modify splitting rule") | html %]
[% ELSE %]
[% t("Add splitting rule") | html %]
[% END %] &rsaquo;
[% END %]
[% t("Classification sources") | html %] &rsaquo;
[% t("Administration") | html %] &rsaquo;
[% t("Koha") | html %]
[% END %]</title>
[% INCLUDE 'doc-head-close.inc' %]
<style>
#button_add,
.split_regex,
.split_callnumber
{
padding-left: 10em;
}
</style>
</head>
<body id="admin_classsources" class="admin">
[% WRAPPER 'header.inc' %]
[% INCLUDE 'prefs-admin-search.inc' %]
[% END %]
[% WRAPPER 'sub-header.inc' %]
[% WRAPPER breadcrumbs %]
[% WRAPPER breadcrumb_item %]
<a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a>
[% END %]
[% IF op == 'add_source' || op == 'add_sort_rule' || op == 'add_split_rule' %]
[% WRAPPER breadcrumb_item %]
<a href="/cgi-bin/koha/admin/classsources.pl">Classification configuration</a>
[% END %]
[% ELSE %]
[% WRAPPER breadcrumb_item bc_active= 1 %]
<span>Classification configuration</span>
[% END %]
[% END %]
[% IF op == 'add_source' %]
[% WRAPPER breadcrumb_item bc_active= 1 %]
[% IF class_source %]
<span>Modify classification source</span>
[% ELSE %]
<span>Add classification source</span>
[% END %]
[% END %]
[% ELSIF op == 'add_sort_rule' %]
[% WRAPPER breadcrumb_item bc_active= 1 %]
[% IF sort_rule %]
<span>Modify filing rule</span>
[% ELSE %]
<span>Add filing rule</span>
[% END %]
[% END %]
[% ELSIF op == 'add_split_rule' %]
[% WRAPPER breadcrumb_item bc_active= 1 %]
[% IF split_rule %]
<span>Modify splitting rule</span>
[% ELSE %]
<span>Add splitting rule</span>
[% END %]
[% END %]
[% END %]
[% END #/ WRAPPER breadcrumbs %]
[% END #/ WRAPPER sub-header.inc %]
<div class="main container-fluid">
<div class="row">
<div class="col-sm-10 col-sm-push-2">
<main>
[% FOR m IN messages %]
<div class="dialog [% m.type | html %]">
[% SWITCH m.code %]
[% CASE 'error_on_update_source' %]
<span>An error occurred when updating this classification source.</span>
[% CASE 'success_on_update_source' %]
<span>Classification source updated successfully.</span>
[% CASE 'error_on_insert_source' %]
<span>An error occurred when adding this classification source. Perhaps the code already exists?</span>
[% CASE 'success_on_insert_source' %]
<span>Classification source added successfully.</span>
[% CASE 'error_on_delete_source' %]
<span>An error occurred when deleting this classification source.</span>
[% CASE 'success_on_delete_source' %]
<span>Classification source deleted successfully.</span>
[% CASE 'error_on_update_sort_rule' %]
<span>An error occurred when updating this filing rule.</span>
[% CASE 'success_on_update_sort_rule' %]
<span>Filing rule updated successfully.</span>
[% CASE 'error_on_insert_sort_rule' %]
<span>An error occurred when adding this filing rule. Perhaps the code already exists?</span>
[% CASE 'success_on_insert_sort_rule' %]
<span>Filing rule added successfully.</span>
[% CASE 'error_on_delete_sort_rule' %]
<span>An error occurred when deleting this filing rule. Perhaps it is used by at least one classification source?</span>
[% CASE 'success_on_delete_sort_rule' %]
<span>Filing rule deleted successfully.</span>
[% CASE 'error_on_update_split_rule' %]
<span>An error occurred when updating this splitting rule.</span>
[% CASE 'success_on_update_split_rule' %]
<span>Splitting rule updated successfully.</span>
[% CASE 'error_on_insert_split_rule' %]
<span>An error occurred when adding this splitting rule. Perhaps the code already exists?</span>
[% CASE 'success_on_insert_split_rule' %]
<span>Splitting rule added successfully.</span>
[% CASE 'error_on_delete_split_rule' %]
<span>An error occurred when deleting this splitting rule. Perhaps it is used by at least one classification source?</span>
[% CASE 'success_on_delete_split_rule' %]
<span>Splitting rule deleted successfully.</span>
[% CASE %]
<span>[% m.code | html %]</span>
[% END %]
</div>
[% END %]
[% IF op == 'add_source' %]
[% IF class_source %]
<h1>Modify classification source</h1>
[% ELSE %]
<h1>Add classification source</h1>
[% END %]
<form action="[% script_name | html %]" name="Aform" class="validated" method="post">
<input type="hidden" name="op" value="add_source_validate" />
<fieldset class="rows">
<ol>
<li>
[% IF class_source %]
<span class="label">Classification source code: </span>
<input type="hidden" name="cn_source" value="[% class_source.cn_source | html %]" />
[% class_source.cn_source | html %]
[% ELSE %]
<label class="required" for="class_source">Classification source code: </label>
<input class="required focus" required="required" type="text" id="class_source" name="cn_source" size="10" maxlength="10" />
<span class="required">Required</span>
[% END %]
</li>
<li><label class="required" for="description">Description: </label>
<input class="required" required="required" type="text" id="description" name="description" size="50" maxlength="250" value="[% class_source.description | html %]" />
<span class="required">Required</span>
</li>
<li><label for="used">Source in use?</label>
[% IF ( class_source.used ) %]<input type="checkbox" id="used" name="used" value="used" checked="checked" />[% ELSE %]
<input type="checkbox" id="used" name="used" value="used" />[% END %]
</li>
<li>
<label class="required" for="class_sort_rule">Filing rule: </label>
<select class="required" required="required" id="class_sort_rule" name="class_sort_rule">
[% FOREACH r IN sort_rules %]
[% IF class_source.class_sort_rule == r.class_sort_rule %]
<option value="[% r.class_sort_rule | html %]" selected="selected">[% r.description | html %] ([% r.class_sort_rule | html %])</option>
[% ELSE %]
<option value="[% r.class_sort_rule | html %]">[% r.description | html %] ([% r.class_sort_rule | html %])</option>
[% END %]
[% END %]
</select>
<span class="required">Required</span>
</li>
<li>
<label class="required" for="class_split_rule">Splitting rule: </label>
<select class="required" required="required" id="split_rule" name="class_split_rule">
[% FOREACH r IN split_rules %]
[% IF class_source.class_split_rule == r.class_split_rule %]
<option value="[% r.class_split_rule | html %]" selected="selected">[% r.description | html %] ([% r.class_split_rule | html %])</option>
[% ELSE %]
<option value="[% r.class_split_rule | html %]">[% r.description | html %] ([% r.class_split_rule | html %])</option>
[% END %]
[% END %]
</select>
<span class="required">Required</span>
</li>
</ol>
</fieldset>
<fieldset class="action">
<input type="submit" class="btn btn-primary" value="Save" />
<a class="cancel" href="/cgi-bin/koha/admin/classsources.pl">Cancel</a>
</fieldset>
</form>
[% END %]
[% IF op == 'add_sort_rule' %]
[% IF sort_rule %]
<h1>Modify filing rule</h1>
[% ELSE %]
<h1>Add filing rule</h1>
[% END %]
<form action="[% script_name | html %]" name="Aform" class="validated" method="post">
<input type="hidden" name="op" value="add_sort_rule_validate" />
<fieldset class="rows">
<ol>
<li>
[% IF sort_rule %]
<span class="label">Filing rule code: </span>
<input type="hidden" name="class_sort_rule" value="[% sort_rule.class_sort_rule | html %]" />
[% sort_rule.class_sort_rule | html %]
[% ELSE %]
<label for="class_sort_rule" class="required">Filing rule code: </label>
<input class="required focus" required="required" type="text" id="class_sort_rule" name="class_sort_rule" size="10" maxlength="10" />
<span class="required">Required</span>
[% END %]
</li>
<li><label for="description" class="required">Description: </label>
<input class="required" required="required" type="text" id="description" name="description" size="50" maxlength="250" value="[% sort_rule.description | html %]" />
<span class="required">Required</span>
</li>
<li><label for="sort_routine" class="required">Filing routine: </label>
<select class="required" required="required" id="sort_routine" name="sort_routine">
[% FOREACH routine_name IN sort_routines %]
[% IF routine_name == sort_rule.sort_routine %]
<option value="[% routine_name | html %]" selected="selected">[% routine_name | html %]</option>
[% ELSE %]
<option value="[% routine_name | html %]">[% routine_name | html %]</option>
[% END %]
[% END %]
</select>
<span class="required">Required</span>
</li>
</ol>
</fieldset>
<fieldset class="action">
<input type="submit" class="btn btn-primary" value="Save" />
<a class="cancel" href="/cgi-bin/koha/admin/classsources.pl">Cancel</a>
</fieldset>
</form>
[% END %]
[% IF op == 'add_split_rule' %]
[% IF split_rule %]
<h1>Modify splitting rule</h1>
[% ELSE %]
<h1>Add splitting rule</h1>
[% END %]
<form action="[% script_name | html %]" name="Aform" class="validated" method="post">
<input type="hidden" name="op" value="add_split_rule_validate" />
<fieldset class="rows">
<ol>
<li>
[% IF split_rule %]
<span class="label">Splitting rule code: </span>
<input type="hidden" name="class_split_rule" value="[% split_rule.class_split_rule | html %]" />
[% split_rule.class_split_rule | html %]
[% ELSE %]
<label for="class_split_rule" class="required">Splitting rule code: </label>
<input class="required focus" required="required" type="text" id="class_split_rule" name="class_split_rule" size="10" maxlength="10" />
<span class="required">Required</span>
[% END %]
</li>
<li><label for="description" class="required">Description: </label>
<input class="required" required="required" type="text" id="description" name="description" size="50" maxlength="250" value="[% split_rule.description | html %]" />
<span class="required">Required</span>
</li>
<li><label for="split_routine" class="required">Splitting routine: </label>
<select class="required" required="required" id="split_routine" name="split_routine">
[% FOREACH routine_name IN split_routines %]
[% IF routine_name == split_rule.split_routine %]
<option value="[% routine_name | html %]" selected="selected">[% routine_name | html %]</option>
[% ELSE %]
<option value="[% routine_name | html %]">[% routine_name | html %]</option>
[% END %]
[% END %]
</select>
<span class="required">Required</span>
</li>
<li id="regex_block">
<label for="split_regex" class="required">Regular expression: </label>
<div>
[% IF split_rule AND split_rule.regexs.size %]
[% FOR re IN split_rule.regexs %]
<div class="split_regex">
<input type="text" name="split_regex" id="split_regex" value="[% re | html %]" />
<a href="#" title="Delete" class="del_regex"><i class="fa fa-fw fa-trash-can"></i>Delete</a>
</div>
[% END %]
[% ELSE %]
<div class="split_regex">
<input type="text" name="split_regex" id="split_regex" value="" />
<a href="#" title="Delete" class="del_regex"><i class="fa fa-fw fa-trash-can"></i>Delete</a>
</div>
[% END %]
</div>
<div id="button_add">
<a href="#" class="add_regex" title="Add a new regular expression"><i class="fa fa-fw fa-plus"></i> New</a>
<span class="required">Required</span>
</div>
<label for="callnumbers">Test the regular expressions:</label>
<div id="test_split">
<textarea name="callnumbers"></textarea>
<button name="test_split_cns">Test</button>
<div id="result_split_callnumbers"></div>
</div>
</li>
</ol>
</fieldset>
<fieldset class="action">
<input type="submit" class="btn btn-primary" value="Save" />
<a class="cancel" href="/cgi-bin/koha/admin/classsources.pl">Cancel</a>
</fieldset>
</form>
[% END %]
[% IF op == 'list' %]
<div id="toolbar" class="btn-toolbar">
<a class="btn btn-default" id="newsource" href="[% script_name | url %]?op=add_source"><i class="fa fa-plus"></i> New classification source</a>
<a class="btn btn-default" id="newrule" href="[% script_name | url %]?op=add_sort_rule"><i class="fa fa-plus"></i> New filing rule</a>
<a class="btn btn-default" id="newrule" href="[% script_name | url %]?op=add_split_rule"><i class="fa fa-plus"></i> New splitting rule</a>
</div>
<h1>Classification configuration</h1>
<div class="page-section">
<h2>Classification sources</h2>
<table>
<tr>
<th>Code</th>
<th>Description</th>
<th>In use</th>
<th>Filing rule</th>
<th>Splitting rule</th>
<th class="noExport">Actions</th>
</tr>
[% FOREACH class_source IN class_sources %]
<tr>
<td>[% class_source.cn_source | html %]</td>
<td>[% class_source.description |html | html %]</td>
<td>[% IF ( class_source.used ) %]Yes[% ELSE %]No[% END %]</td>
<td>[% class_source.class_sort_rule | html %]</td>
<td>[% class_source.class_split_rule | html %]</td>
<td class="actions">
<a class="btn btn-default btn-xs" href="[% script_name | url %]?op=add_source&amp;cn_source=[% class_source.cn_source | uri %]"><i class="fa-solid fa-pencil" aria-hidden="true"></i> Edit</a>
<a class="btn btn-default btn-xs delete_class_source" href="[% script_name | url %]?op=delete_source_confirmed&amp;cn_source=[% class_source.cn_source | uri%]"><i class="fa fa-trash-can"></i> Delete</a>
</td>
</tr>
[% END %]
</table>
</div> <!-- /.page-section -->
<div class="page-section">
<h2>Classification filing rules</h2>
<table>
<tr>
<th>Code</th>
<th>Description</th>
<th>Sorting routine</th>
<th class="noExport">Actions</th>
</tr>
[% FOREACH rule IN sort_rules %]
<tr>
<td>[% rule.class_sort_rule | html %]</td>
<td>[% rule.description |html | html %]</td>
<td>[% rule.sort_routine | html %]</td>
<td class="actions">
<a class="btn btn-default btn-xs" href="[% script_name | html %]?op=add_sort_rule&amp;class_sort_rule=[% rule.class_sort_rule |url %]"><i class="fa-solid fa-pencil" aria-hidden="true"></i> Edit</a>
<a class="btn btn-default btn-xs delete_sort_rule" href="[% script_name | html %]?op=delete_sort_rule&amp;class_sort_rule=[% rule.class_sort_rule |url %]"><i class="fa fa-trash-can"></i> Delete</a>
</td>
</tr>
[% END %]
</table>
</div> <!-- /.page-section -->
<div class="page-section">
<h2>Classification splitting rules</h2>
<table>
<tr>
<th>Code</th>
<th>Description</th>
<th>Splitting routine</th>
<th class="noExport">Actions</th>
</tr>
[% FOREACH rule IN split_rules %]
<tr>
<td>[% rule.class_split_rule | html %]</td>
<td>[% rule.description | html %]</td>
<td>[% rule.split_routine | html %]</td>
<td class="actions">
<a class="btn btn-default btn-xs" href="[% script_name | url %]?op=add_split_rule&amp;class_split_rule=[% rule.class_split_rule | uri %]"><i class="fa-solid fa-pencil" aria-hidden="true"></i> Edit</a>
<a class="btn btn-default btn-xs delete_split_rule" href="[% script_name | url %]?op=delete_split_rule&amp;class_split_rule=[% rule.class_split_rule | uri %]"><i class="fa fa-trash-can"></i> Delete</a>
</td>
</tr>
[% END %]
</table>
</div> <!-- /.page-section -->
[% END %]
</main>
</div> <!-- /.col-sm-10.col-sm-push-2 -->
<div class="col-sm-2 col-sm-pull-10">
<aside>
[% INCLUDE 'admin-menu.inc' %]
</aside>
</div> <!-- /.col-sm-2.col-sm-pull-10 -->
</div> <!-- /.row -->
[% MACRO jsinclude BLOCK %]
[% Asset.js("js/admin-menu.js") | $raw %]
<script>
function update_regex_block(){
if ( $("#split_routine option:selected").val() == 'RegEx' ) {
$("#regex_block").show();
$("#split_regex").attr('required', 'required');
} else {
$("#regex_block").hide();
$("#split_regex").removeAttr('required');
}
};
function update_delete_links_visibility() {
if( $("div.split_regex").length > 1 ) {
$("div.split_regex").find('a.del_regex').show();
} else {
$("div.split_regex").find('a.del_regex').hide();
}
}
function add_regex() {
var div_node = $("div.split_regex:last");
var div_clone = $(div_node).clone(true);
$(div_clone).find("input").val("");
$(div_node).after(div_clone);
update_delete_links_visibility();
}
function del_regex(a_node) {
$(a_node).parent('div').remove();
update_delete_links_visibility();
}
$(document).ready(function(){
update_regex_block();
update_delete_links_visibility();
$("#split_routine").on("change", function(){
update_regex_block();
});
$(".delete_class_source").on("click", function(e){
return confirm(_("Are you sure you want to delete this class source?"));
});
$(".delete_sort_rule").on("click", function(e){
return confirm(_("Are you sure you want to delete this filing rule?"));
});
$(".delete_split_rule").on("click", function(e){
return confirm(_("Are you sure you want to delete this splitting rule?"));
});
$(".add_regex").on("click", function(e){
e.preventDefault();
add_regex();
});
$(".del_regex").on("click", function(e){
e.preventDefault();
del_regex(this);
});
$("button[name='test_split_cns']").on("click", function(e){
e.preventDefault();
var regexs = [];
$("input[name='split_regex']").each(function(){
regexs.push($(this).val());
});
var callnumbers = $("textarea[name='callnumbers']").val();
$.getJSON('/cgi-bin/koha/svc/split_callnumbers', {regexs: JSON.stringify(regexs), callnumbers: callnumbers}, function(answer){
var callnumbers = answer['split_callnumbers'];
$("#result_split_callnumbers").html('');
var list_node = $('<ol></ol>');
$(callnumbers).each(function(){
var split_cn = this['split'].join('<br/>');
var li_node = $('<li><label>'+this['inline']+'</label><div class="split_callnumber">'+split_cn+'</div></li>');
$(list_node).append(li_node);
});
$("#result_split_callnumbers").append(list_node);
}).fail(function(){alert("Something went wrong.")});
});
});
</script>
[% END %]
[% INCLUDE 'intranet-bottom.inc' %]