Bug 30373: Enable translation of UNIMARC frameworks
authorBernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Mon, 28 Mar 2022 03:50:01 +0000 (00:50 -0300)
committerFridolin Somers <fridolin.somers@biblibre.com>
Thu, 21 Apr 2022 23:41:35 +0000 (13:41 -1000)
This patch adds a new translation file, *-installer-UNIMARC.po

To test:
1. On top of all previous patches
2. Apply this patch
3. Create (or update) some language
Ej.
    misc/translation/translate create xx-YY

    verify new file misc/translation/po/xx-YY-installer-UNIMARC.po
4. Install new language
    misc/translation/translate install xx-YY

    verify new dirs:
        installer/data/mysql/xx-YY/marcflavour/unimarc/{mandatory,optional}

5. Repeat install procedure selecting xx-YY language and UNIMARC
   verify all frameworks are present

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
gulpfile.js
misc/translator/LangInstaller.pm

index aa88c17..82962d9 100644 (file)
@@ -131,6 +131,11 @@ const poTasks = {
         create: po_create_installer_marc21,
         update: po_update_installer_marc21,
     },
+    'installer-UNIMARC': {
+        extract: po_extract_installer_unimarc,
+        create: po_create_installer_unimarc,
+        update: po_update_installer_unimarc,
+    },
 };
 
 const poTypes = Object.keys(poTasks);
@@ -241,6 +246,8 @@ function po_extract_installer_marc (type) {
 
 function po_extract_installer_marc21 ()  { return po_extract_installer_marc('MARC21') }
 
+function po_extract_installer_unimarc ()  { return po_extract_installer_marc('UNIMARC') }
+
 function po_create_type (type) {
     const access = util.promisify(fs.access);
     const exec = util.promisify(child_process.exec);
@@ -269,6 +276,7 @@ function po_create_messages ()          { return po_create_type('messages') }
 function po_create_messages_js ()       { return po_create_type('messages-js') }
 function po_create_installer ()         { return po_create_type('installer') }
 function po_create_installer_marc21 ()  { return po_create_type('installer-MARC21') }
+function po_create_installer_unimarc () { return po_create_type('installer-UNIMARC') }
 
 function po_update_type (type) {
     const msgmerge_opts = '--backup=off --quiet --sort-output --update';
@@ -290,6 +298,7 @@ function po_update_messages ()          { return po_update_type('messages') }
 function po_update_messages_js ()       { return po_update_type('messages-js') }
 function po_update_installer ()         { return po_update_type('installer') }
 function po_update_installer_marc21 ()  { return po_update_type('installer-MARC21') }
+function po_update_installer_unimarc () { return po_update_type('installer-UNIMARC') }
 
 /**
  * Gulp plugin that executes xgettext-like command `cmd` on all files given as
index df0da27..8ab863f 100644 (file)
@@ -126,7 +126,8 @@ sub new {
     # EN UNIMARC YAML installer files
     push @{$self->{installer}}, {
         name   => "UNIMARC YAML installer files",
-        dirs   => [ 'installer/data/mysql/en/marcflavour/unimarc/mandatory', ],
+        dirs   => [ 'installer/data/mysql/en/marcflavour/unimarc/mandatory',
+                    'installer/data/mysql/en/marcflavour/unimarc/optional'],
         suffix => "-installer-UNIMARC.po",
     };