Koha/koha-tmpl/intranet-tmpl/prog/en/modules/admin/koha2marclinks.tt
Katrin Fischer 54941f8dc5 Bug 26007: Add/fix warning for changes to the Koha to MARC mappings
There are 2 pages where one can change the Koha to MARC mappings in Koha:

- When editing the configuration for a MARC subfield
- On administration > Koha 2 MARC mappings

This patch adds a warning that the batchRebuildBiblioTables script
must be run if the mapping is changed.

To test:
- Go to Administration > MARC bibliographic frameworks >
  Any framework > MARC structure > Any field > Edit subfield
- ÃThe hint about the batchRebuildBiblioTables will be on "Link"
  instead of "Koha Link". This is wrong as the link doesn't care
  about the mappings.
- Go to Administration > Koha to MARC mappings
- Verify there is no hint
- Apply patch
- Verify both pages now show an appropriate message

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
This commit message is not completely accurate. See the follow-ups.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-09-09 15:39:51 +02:00

103 lines
3.6 KiB
Text

[% USE raw %]
[% USE Asset %]
[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Koha &rsaquo; Administration &rsaquo; Koha to MARC mapping</title>
[% INCLUDE 'doc-head-close.inc' %]
</head>
<body id="admin_koha2marclinks" class="admin">
[% INCLUDE 'header.inc' %]
[% INCLUDE 'prefs-admin-search.inc' %]
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo; <a href="/cgi-bin/koha/admin/koha2marclinks.pl">Koha to MARC Mapping</a></div>
<div class="main container-fluid">
<div class="row">
<div class="col-sm-10 col-sm-push-2">
<main>
<h1>Koha to MARC mapping</h1>
<br/>
<div class="dialog message">If you make any change to the mappings, you must ask your administrator to run misc/batchRebuildBiblioTables.pl.</div>
<form action="/cgi-bin/koha/admin/koha2marclinks.pl" method="post" id="koha2marc">
[% IF error_add %]
<div class="dialog alert">Failed to add mapping for [% error_info | html %]</div>
[% END %]
<table id="kohafields">
<thead><tr>
<th>Koha field</th>
<th>Tag</th>
<th>Subfield</th>
<th>Lib</th>
<th>&nbsp;</th>
</tr></thead>
<tbody>
[% FOREACH loo IN loop %]
<tr>
<td>[% loo.kohafield | html %]</td>
<td>[% loo.tagfield | html %]</td>
<td>[% loo.tagsubfield | html %]</td>
<td>[% loo.liblibrarian | html %]</td>
<td class="actions">
[% IF !loo.readonly %]
<a onclick="AddFld('[% loo.kohafield | html %]');" class="btn btn-default btn-xs"><i class="fa fa-plus"></i> Add</a>
[% IF loo.tagfield %] <a onclick="RemFld('[% loo.tagfield | html %]','[% loo.tagsubfield | html %]');" class="btn btn-default btn-xs"><i class="fa fa-remove"></i> Remove</a> [% END %]
[% END %]
</td>
</td>
</tr>
[% END %]
</tbody>
</table>
<input id="remove_field" name="remove_field" type="hidden" value=""/>
<input id="add_field" name="add_field" type="hidden" value=""/>
</form>
</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 %]
[% INCLUDE 'datatables.inc' %]
[% Asset.js("js/admin-menu.js") | $raw %]
<script>
function AddFld(kohafield) {
var fieldstr = prompt( _("Adding a mapping for: %s.").format(kohafield) + "\n" + _("Please enter field tag and subfield code, separated by a comma. (For control fields: add '@' as subfield code.)\nThe change will be applied immediately.") );
var temp = fieldstr.split(',');
if( temp.length == 2 ) {
$('#add_field').val( kohafield+','+fieldstr );
$('#koha2marc').submit();
} else {
alert( _("Invalid input. Enter something like: 245,a") );
}
}
function RemFld(tagfield, subfield ) {
if( confirm( _("Mapping will be removed for: %s.").format(tagfield + subfield) + "\n" + _("The change will be applied immediately." ))) {
$('#remove_field').val(tagfield+','+subfield);
$('#koha2marc').submit();
}
}
$(document).ready(function() {
$("#kohafields").dataTable($.extend(true, {}, dataTablesDefaults, {
"aoColumnDefs": [
{ "aTargets": [ -1 ], "bSortable": false, "bSearchable": false },
],
"paging": false
} ));
});
</script>
[% END %]
[% INCLUDE 'intranet-bottom.inc' %]