From 40bd3ce644f67e50cc528dc196c57aa22199b038 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Thu, 8 Feb 2018 12:59:08 +0100 Subject: [PATCH] Bug 14769: Add preference AuthorityControlledIndicators Including: [1] Atomic update to add pref for existing installs [2] Add new pref to sysprefs.sql for new installs [3] Add description to authorities preference file. Test plan: [1] Run new install or upgrade to add pref. [2] Check value of pref via System preferences in staff interface. Signed-off-by: Marcel de Rooy Signed-off-by: Julian Maurice Signed-off-by: Josef Moravec Signed-off-by: Nick Clemens --- installer/data/mysql/atomicupdate/bug_14769.perl | 56 ++++++++++++++++++++++ installer/data/mysql/sysprefs.sql | 1 + .../en/modules/admin/preferences/authorities.pref | 7 +++ 3 files changed, 64 insertions(+) create mode 100644 installer/data/mysql/atomicupdate/bug_14769.perl diff --git a/installer/data/mysql/atomicupdate/bug_14769.perl b/installer/data/mysql/atomicupdate/bug_14769.perl new file mode 100644 index 0000000..ce56842 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_14769.perl @@ -0,0 +1,56 @@ +$DBversion = 'XXX'; # will be replaced by the RM +if( CheckVersion( $DBversion ) ) { + my $pref = +q|# PERSO_NAME 100 600 696 700 796 800 896 +marc21, 100, ind1:auth1 +marc21, 600, ind1:auth1, ind2:thesaurus +marc21, 696, ind1:auth1 +marc21, 700, ind1:auth1 +marc21, 796, ind1:auth1 +marc21, 800, ind1:auth1 +marc21, 896, ind1:auth1 +# CORPO_NAME 110 610 697 710 797 810 897 +marc21, 110, ind1:auth1 +marc21, 610, ind1:auth1, ind2:thesaurus +marc21, 697, ind1:auth1 +marc21, 710, ind1:auth1 +marc21, 797, ind1:auth1 +marc21, 810, ind1:auth1 +marc21, 897, ind1:auth1 +# MEETI_NAME 111 611 698 711 798 811 898 +marc21, 111, ind1:auth1 +marc21, 611, ind1:auth1, ind2:thesaurus +marc21, 698, ind1:auth1 +marc21, 711, ind1:auth1 +marc21, 798, ind1:auth1 +marc21, 811, ind1:auth1 +marc21, 898, ind1:auth1 +# UNIF_TITLE 130 440 630 699 730 799 830 899 / 240 +marc21, 130, ind1:auth2 +marc21, 240, , ind2:auth2 +marc21, 440, , ind2:auth2 +marc21, 630, ind1:auth2, ind2:thesaurus +marc21, 699, ind1:auth2 +marc21, 730, ind1:auth2 +marc21, 799, ind1:auth2 +marc21, 830, , ind2:auth2 +marc21, 899, ind1:auth2 +# CHRON_TERM 648 +marc21, 648, , ind2:thesaurus +# TOPIC_TERM 650 654 656 657 658 690 +marc21, 650, , ind2:thesaurus +# GEOGR_NAME 651 662 691 / 751 +marc21, 651, , ind2:thesaurus +# GENRE/FORM 655 +marc21, 655, , ind2:thesaurus + +# UNIMARC: Always copy the indicators from the authority +unimarc, *, ind1:auth1, ind2:auth2|; + + $dbh->do( qq| +INSERT IGNORE INTO systempreferences ( value, variable, options, explanation, type ) VALUES ( ?, 'AuthorityControlledIndicators', NULL, 'Authority controlled indicators per biblio field', 'Free' ); + |, undef, $pref ); + + SetVersion( $DBversion ); + print "Upgrade to $DBversion done (Bug 14769: Authorities merge: Set correct indicators in biblio field)\n"; +} diff --git a/installer/data/mysql/sysprefs.sql b/installer/data/mysql/sysprefs.sql index d443b3f..084b732 100644 --- a/installer/data/mysql/sysprefs.sql +++ b/installer/data/mysql/sysprefs.sql @@ -53,6 +53,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('AudioAlerts','0','','Enable circulation sounds during checkin and checkout in the staff interface. Not supported by all web browsers yet.','YesNo'), ('AuthDisplayHierarchy','0','','Display authority hierarchies','YesNo'), ('AuthoritiesLog','1',NULL,'If ON, log edit/create/delete actions on authorities.','YesNo'), +('AuthorityControlledIndicators','# PERSO_NAME 100 600 696 700 796 800 896\nmarc21, 100, ind1:auth1\nmarc21, 600, ind1:auth1, ind2:thesaurus\nmarc21, 696, ind1:auth1\nmarc21, 700, ind1:auth1\nmarc21, 796, ind1:auth1\nmarc21, 800, ind1:auth1\nmarc21, 896, ind1:auth1\n# CORPO_NAME 110 610 697 710 797 810 897\nmarc21, 110, ind1:auth1\nmarc21, 610, ind1:auth1, ind2:thesaurus\nmarc21, 697, ind1:auth1\nmarc21, 710, ind1:auth1\nmarc21, 797, ind1:auth1\nmarc21, 810, ind1:auth1\nmarc21, 897, ind1:auth1\n# MEETI_NAME 111 611 698 711 798 811 898\nmarc21, 111, ind1:auth1\nmarc21, 611, ind1:auth1, ind2:thesaurus\nmarc21, 698, ind1:auth1\nmarc21, 711, ind1:auth1\nmarc21, 798, ind1:auth1\nmarc21, 811, ind1:auth1\nmarc21, 898, ind1:auth1\n# UNIF_TITLE 130 440 630 699 730 799 830 899\nmarc21, 130, ind1:auth2\nmarc21, 240, , ind2:auth2\nmarc21, 440, , ind2:auth2\nmarc21, 630, ind1:auth2, ind2:thesaurus\nmarc21, 699, ind1:auth2\nmarc21, 730, ind1:auth2\nmarc21, 799, ind1:auth2\nmarc21, 830, , ind2:auth2\nmarc21, 899, ind1:auth2\n# CHRON_TERM 648 \nmarc21, 648, , ind2:thesaurus\n# TOPIC_TERM 650 654 656 657 658 690\nmarc21, 650, , ind2:thesaurus\n# GEOGR_NAME 651 662 691\nmarc21, 651, , ind2:thesaurus\n# GENRE/FORM 655 \nmarc21, 655, , ind2:thesaurus\n\n# UNIMARC: Always copy the indicators from the authority\nunimarc, *, ind1:auth1, ind2:auth2',NULL,'Authority controlled indicators per biblio field','Free'), ('AuthorityMergeLimit','50',NULL,'Maximum number of biblio records updated immediately when an authority record has been modified.','integer'), ('AuthorityMergeMode','loose','loose|strict','Authority merge mode','Choice'), ('AuthoritySeparator','--','10','Used to separate a list of authorities in a display. Usually --','free'), diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/authorities.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/authorities.pref index cc63205..be480cb 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/authorities.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/authorities.pref @@ -8,6 +8,13 @@ Authorities: no: "Don't display" - broader term/narrower term hierarchies when viewing authorities. - + - Use the following text to edit how authority records control indicators of attached biblio fields (and possibly subfield $2).
+ - "Lines starting with a comment symbol (#) are skipped. Each line should be of the form: (marc21|unimarc), tag, ind1:(auth1|auth2|some_value), ind2:(auth1|auth2|thesaurus|some_value).
" + - Here auth1 and auth2 refer to the indicators of the authority record, tag is a biblio field number or an asterisk (*), and some_value is a fixed value (one character).
+ - The MARC21 option thesaurus refers to indicators controlled by authority field 008/11 and 040$f. + - pref: AuthorityControlledIndicators + type: textarea + - - When editing records, - pref: BiblioAddsAuthorities default: no -- 2.1.4