Browse Source

Bug 21049: Set 007/00 when selecting material type (Rancor)

There is a 1-1 relationship between the material type values and the
position 00 of 007 field. Selecting a material type should set this
position's value.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Julian Maurice 2 years ago
committed by Nick Clemens
parent
commit
856425db1e
  1. 2
      koha-tmpl/intranet-tmpl/lib/koha/cateditor/widget.js
  2. 13
      koha-tmpl/intranet-tmpl/prog/en/includes/cateditor-widgets-marc21.inc

2
koha-tmpl/intranet-tmpl/lib/koha/cateditor/widget.js

@ -109,7 +109,7 @@ define( [ 'resources' ], function( Resources ) {
createFromXML: function( resourceId ) {
var widget = this;
Resources[resourceId].done( function( xml ) {
return Resources[resourceId].done( function( xml ) {
$(widget.node).find('.widget-loading').remove();
var $matSelect = $('<select class="material-select"></select>').appendTo(widget.node);
var $contents = $('<span class="material-contents"/>').appendTo(widget.node);

13
koha-tmpl/intranet-tmpl/prog/en/includes/cateditor-widgets-marc21.inc

@ -243,7 +243,18 @@ require( [ 'koha-backend', 'widget', 'text-marc' ], function( KohaBackend, Widge
return this.materialTypeMapping[this.text.substring(0, 1)];
},
postCreate: function( node, mark ) {
this.createFromXML( 'marc21/xml/007' );
this.createFromXML( 'marc21/xml/007' ).then(() => {
$(this.node).find('.material-select').on('change', (e) => {
const keys = Object.keys(this.materialTypeMapping);
const k = keys.filter(k => this.materialTypeMapping[k] === $(e.target).val());
this.setFixed(0, 1, k, '+input');
// FIXME There must be a better way to update display
const n = $(this.node).find('[name="f00"]');
n.triggerHandler('focus');
n.triggerHandler('blur');
});
});
}
} );

Loading…
Cancel
Save