@@ -, +, @@
- {MARC} is replaced with either "MARC21" or "UNIMARC"
- {FIELD} is replaced by the MARC field number, eg. "000", "048", ...
- {LANG} is replaced by the UI language, eg. "en", or "fi-FI"
open a window to either loc.gov or archive.ifla.org
http://example.com/?field={FIELD}&marc={MARC}&lang={LANG}
open a window to example.com, with the proper substitutions
in the URL for the field, marc flavour and language
---
.../atomicupdate/bug_11674-config_for_marc_field_doc_urls.sql | 3 +++
installer/data/mysql/sysprefs.sql | 1 +
.../prog/en/modules/admin/preferences/cataloguing.pref | 8 ++++++++
koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt | 8 +++++++-
4 files changed, 19 insertions(+), 1 deletion(-)
create mode 100644 installer/data/mysql/atomicupdate/bug_11674-config_for_marc_field_doc_urls.sql
--- a/installer/data/mysql/atomicupdate/bug_11674-config_for_marc_field_doc_urls.sql
+++ a/installer/data/mysql/atomicupdate/bug_11674-config_for_marc_field_doc_urls.sql
@@ -0,0 +1,3 @@
+
+INSERT IGNORE INTO systempreferences (`variable`, `value`, `options`, `explanation`, `type`)
+VALUES ('MarcFieldDocURL', NULL, NULL, 'URL used for MARC field documentation. Following substitutions are available: {MARC} = marc flavour, eg. \"MARC21\" or \"UNIMARC\". {FIELD} = field number, eg. \"000\" or \"048\". {LANG} = user language, eg. \"en\" or \"fi-FI\"', 'free');
--- a/installer/data/mysql/sysprefs.sql
+++ a/installer/data/mysql/sysprefs.sql
@@ -256,6 +256,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `
('makePreviousSerialAvailable','0','','make previous serial automatically available when collecting a new serial. Please note that the item-level_itypes syspref must be set to specific item.','YesNo'),
('ManInvInNoissuesCharge','1',NULL,'MANUAL_INV charges block checkouts (added to noissuescharge).','YesNo'),
('MARCAuthorityControlField008','|| aca||aabn | a|a d',NULL,'Define the contents of MARC21 authority control field 008 position 06-39','Textarea'),
+('MarcFieldDocURL', NULL, NULL, 'URL used for MARC field documentation. Following substitutions are available: {MARC} = marc flavour, eg. "MARC21" or "UNIMARC". {FIELD} = field number, eg. "000" or "048". {LANG} = user language, eg. "en" or "fi-FI"', 'free'),
('MarcFieldsToOrder','',NULL,'Set the mapping values for a new order line created from a MARC record in a staged file. In a YAML format.','textarea'),
('MarcItemFieldsToOrder','',NULL,'Set the mapping values for new item records created from a MARC record in a staged file. In a YAML format.','textarea'),
('MarkLostItemsAsReturned','1','','Mark items as returned when flagged as lost','YesNo'),
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/cataloguing.pref
+++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/cataloguing.pref
@@ -146,6 +146,14 @@ Cataloging:
no: "Don't use"
- record control number ($w subfields) and control number (001) for linking of bibliographic records.
-
+ - Use
+ - pref: MarcFieldDocURL
+ class: url
+ - as the URL for MARC field documentation.
+ - Possible substitutions are {MARC} (marc flavour, eg. "MARC21" or "UNIMARC"), {FIELD} (field number, eg. "000" or "048"), {LANG} (user language, eg. "en" or "fi-FI").
+ - If left empty, the format documentation on http://loc.gov (MARC21) or http://archive.ifla.org (UNIMARC) is used.
+ - For example http://fielddoc.example.com/?marc={MARC}&field={FIELD}&language={LANG}
+ -
- pref: hide_marc
choices:
yes: "Don't display"
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt
+++ a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt
@@ -165,7 +165,13 @@ function PopupZ3950() {
}
function PopupMARCFieldDoc(field) {
- [% IF ( marcflavour == 'MARC21' ) %]
+ [% IF Koha.Preference('marcfielddocurl') %]
+ var docurl = "[% Koha.Preference('marcfielddocurl').replace('"','"') %]";
+ docurl = docurl.replace("{MARC}", "[% marcflavour %]");
+ docurl = docurl.replace("{FIELD}", ""+field);
+ docurl = docurl.replace("{LANG}", "[% lang %]");
+ window.open(docurl);
+ [% ELSIF ( marcflavour == 'MARC21' ) %]
_MARC21FieldDoc(field);
[% ELSIF ( marcflavour == 'UNIMARC' ) %]
_UNIMARCFieldDoc(field);
--