Bug 19096: Do not allow changes to kohafield within MARC frameworks
This patch makes two changes in the script for managing the MARC frameworks in order to support making the Default authoritative as for Koha to MARC mappings: [1] Disable the kohafield select combo. Add a hidden input to save value. [2] When a new subfield is added, the kohafield is still empty and should be overwritten with its Default counterpart. Note: Although we could leave the field empty, since Koha looks at the Default framework only, it does not cost much to keep these fields in sync with Default and perhaps catch a bug when someone somewhere looks in the wrong framework. Note: The description of Koha to MARC mapping on admin-home has been adjusted accordingly (removing last two lines). Test plan: [1] Add a new tag and subfield in Default. [2] Map it to a kohafield in koha2marclinks.pl [3] Add the same tag and subfield in another framework. Verify that the kohafield is updated after you saved the subfield. Signed-off-by: Josef Moravec <josef.moravec@gmail.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit is contained in:
parent
5a63523f59
commit
18f4a89ce6
3 changed files with 10 additions and 2 deletions
|
@ -310,6 +310,11 @@ elsif ( $op eq 'add_validate' ) {
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
|
if( $frameworkcode ne q{} ) {
|
||||||
|
# BZ 19096: Overwrite kohafield from Default when adding a new record
|
||||||
|
my $rec = Koha::MarcSubfieldStructures->find( q{}, $tagfield, $tagsubfield );
|
||||||
|
$kohafield = $rec->kohafield if $rec;
|
||||||
|
}
|
||||||
$sth_insert->execute(
|
$sth_insert->execute(
|
||||||
$tagfield,
|
$tagfield,
|
||||||
$tagsubfield,
|
$tagsubfield,
|
||||||
|
|
|
@ -70,7 +70,7 @@
|
||||||
<dt><a href="/cgi-bin/koha/admin/biblio_framework.pl">MARC bibliographic framework</a></dt>
|
<dt><a href="/cgi-bin/koha/admin/biblio_framework.pl">MARC bibliographic framework</a></dt>
|
||||||
<dd>Create and manage Bibliographic frameworks that define the characteristics of your MARC Records (field and subfield definitions) as well as templates for the MARC editor.</dd>
|
<dd>Create and manage Bibliographic frameworks that define the characteristics of your MARC Records (field and subfield definitions) as well as templates for the MARC editor.</dd>
|
||||||
<dt><a href="/cgi-bin/koha/admin/koha2marclinks.pl">Koha to MARC mapping</a></dt>
|
<dt><a href="/cgi-bin/koha/admin/koha2marclinks.pl">Koha to MARC mapping</a></dt>
|
||||||
<dd>Define the mapping between the Koha transactional database (SQL) and the MARC Bibliographic records. Note that the mapping can be defined through MARC Bibliographic Framework. This tool is just a shortcut to speed up linkage.</dd>
|
<dd>Define the mapping between the Koha transactional database (SQL) and the MARC Bibliographic records.</dd>
|
||||||
<dt><a href="/cgi-bin/koha/admin/fieldmapping.pl">Keywords to MARC mapping</a></dt>
|
<dt><a href="/cgi-bin/koha/admin/fieldmapping.pl">Keywords to MARC mapping</a></dt>
|
||||||
<dd>Define the mapping between keywords and MARC fields. The keywords are used to find some data independently of the framework.</dd>
|
<dd>Define the mapping between keywords and MARC fields. The keywords are used to find some data independently of the framework.</dd>
|
||||||
<dt><a href="/cgi-bin/koha/admin/checkmarc.pl">MARC Bibliographic framework test</a></dt>
|
<dt><a href="/cgi-bin/koha/admin/checkmarc.pl">MARC Bibliographic framework test</a></dt>
|
||||||
|
|
|
@ -143,7 +143,8 @@
|
||||||
<li><label for="link[% loo.row %]">Link:</label><input type="text" id="link[% loo.row %]" name="link" value="[% loo.link %]" size="10" maxlength="80" /> (e.g., Title or Local-Number) <span class="error"><em>NOTE: If you change this value you must ask your administrator to run misc/batchRebuildBiblioTables.pl.</em></span></li>
|
<li><label for="link[% loo.row %]">Link:</label><input type="text" id="link[% loo.row %]" name="link" value="[% loo.link %]" size="10" maxlength="80" /> (e.g., Title or Local-Number) <span class="error"><em>NOTE: If you change this value you must ask your administrator to run misc/batchRebuildBiblioTables.pl.</em></span></li>
|
||||||
<li>
|
<li>
|
||||||
<label for="kohafield[% loo.row %]">Koha link:</label>
|
<label for="kohafield[% loo.row %]">Koha link:</label>
|
||||||
<select name="kohafield" id="kohafield[% loo.row %]" size="1">
|
<!-- This select should be DISABLED; value is submitted by the following hidden input -->
|
||||||
|
<select name="kohafield" id="kohafield[% loo.row %]" size="1" disabled>
|
||||||
[% FOREACH value IN loo.kohafields %]
|
[% FOREACH value IN loo.kohafields %]
|
||||||
[% IF ( value == loo.kohafield ) %]
|
[% IF ( value == loo.kohafield ) %]
|
||||||
<option value="[% value %]" selected="selected">[% value %]</option>
|
<option value="[% value %]" selected="selected">[% value %]</option>
|
||||||
|
@ -152,6 +153,8 @@
|
||||||
[% END %]
|
[% END %]
|
||||||
[% END %]
|
[% END %]
|
||||||
</select>
|
</select>
|
||||||
|
<!-- Do NOT remove this next hidden input! We need it to save kohafield. -->
|
||||||
|
<input type="hidden" name="kohafield" value="[% loo.kohafield %]"/>
|
||||||
</li>
|
</li>
|
||||||
</ol>
|
</ol>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
Loading…
Reference in a new issue