Bug 12020: Allow translating label-edit-batch hardcoded strings
authorPasi Kallinen <pasi.kallinen@joensuu.fi>
Mon, 12 Mar 2018 11:20:06 +0000 (13:20 +0200)
committerJonathan Druart <jonathan.druart@bugs.koha-community.org>
Mon, 26 Mar 2018 20:31:15 +0000 (17:31 -0300)
Move the hardcoded error strings in the batch label edit into the template,
so they can be translated.

Test plan:
1) Apply patch
2) Go to Home -> Tools -> Label edit
3) Create a new batch with some items in it
4) Try to trigger any of the errors, check that the error
   messages look correct
5) Update a language xx-YY
5) Check that the error messages show up in xx-YY-staff-prog.po

Signed-off-by: Pasi Kallinen <pasi.kallinen@joensuu.fi>

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Changed branch to library in one of the error messages.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

koha-tmpl/intranet-tmpl/prog/en/modules/labels/label-edit-batch.tt
labels/label-edit-batch.pl

index 22f21f4..8381dda 100644 (file)
                 <div class="yui-b">
                         [% INCLUDE 'labels-toolbar.inc' %]
                         [% IF ( err ) %]
+                            [% BLOCK xlate_errtype %]
+                            [%    SWITCH errtype %]
+                            [%       CASE 'ITEM_NOT_REMOVED' %]
+                            <span>Item(s) not removed from batch [% batch_id %].</span>
+                            [%       CASE 'BATCH_NOT_DELETED' %]
+                            <span>Batch [% batch_id %] was not deleted.</span>
+                            [%       CASE 'ITEM_NOT_ADDED' %]
+                            <span>Item(s) not added to batch [% batch_id %].</span>
+                            [%       CASE 'BRANCH_NOT_SET' %]
+                            <span>Library is not set, please set your library before adding items to a batch.</span>
+                            [%       CASE 'BATCH_NOT_DEDUP' %]
+                            <span>Batch [% batch_id %] not fully de-duplicated.</span>
+                            [%       CASE %]
+                            <span>Unknown error type [% errtype %].</span>
+                            [%    END %]
+                            [% END %]
                             <div class="dialog alert">
-                                <strong>WARNING:</strong> An error was encountered and [% errstr %] Please have your system administrator check the error log for details.
+                                <strong>WARNING:</strong> An error was encountered: [% PROCESS xlate_errtype %] Please have your system administrator check the error log for details.
                             </div>
                         [% ELSIF ( duplicate_message ) %]
                             <div class="dialog message">
index 664c0b5..6875359 100755 (executable)
@@ -42,7 +42,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
 );
 
 my $err = 0;
-my $errstr = undef;
+my $errtype = undef;
 my $duplicate_count = undef;
 my $duplicate_message = undef;
 my $db_rows = {};
@@ -72,14 +72,14 @@ if ($op eq 'remove') {
     foreach my $label_id (@label_ids) {
     $err = $batch->remove_item($label_id);
     }
-    $errstr = "item(s) not removed from batch $batch_id." if $err;
+    $errtype = 'ITEM_NOT_REMOVED' if $err;
 #    Something like this would be nice to avoid problems with the browser's 'refresh' button, but it needs an error handling mechanism...
 #    print $cgi->redirect("label-edit-batch.pl?op=edit&batch_id=$batch_id");
 #    exit;
 }
 elsif ($op eq 'delete') {
     $err = C4::Labels::Batch::delete(batch_id => $batch_id, branch_code => $branch_code);
-    $errstr = "batch $batch_id was not deleted." if $err;
+    $errtype = 'BATCH_NOT_DELETED' if $err;
 }
 elsif ($op eq 'add') {
     if ($number_list) {
@@ -103,11 +103,11 @@ elsif ($op eq 'add') {
             $err = $batch->add_item($item_number);
         }
         $batch_id = $batch->get_attr('batch_id') if $batch_id == 0; #update batch_id if we added to a new batch
-        $errstr = "item(s) not added to batch $batch_id." if $err;
+        $errtype = 'ITEM_NOT_ADDED' if $err;
     }
     else {
         $err = 1;
-        $errstr = "items(s) not added, the error was: Branch is not set, you please set your branch before adding items to a batch";
+        $errtype = 'BRANCH_NOT_SET';
     }
 }
 elsif ($op eq 'new') {
@@ -118,7 +118,7 @@ elsif ($op eq 'de_duplicate') {
     $batch = C4::Labels::Batch->retrieve(batch_id => $batch_id);
     $duplicate_count = $batch->remove_duplicates();
     $duplicate_message = 1 if $duplicate_count != -1;
-    $errstr = "batch $batch_id not fully de-duplicated." if $duplicate_count == -1;
+    $errtype = 'BATCH_NOT_DEDUP' if $duplicate_count == -1;
 }
 else { # edit
     $batch = C4::Labels::Batch->retrieve(batch_id => $batch_id);
@@ -131,7 +131,7 @@ my $table = html_table($display_columns, $db_rows);
 
 $template->param(
                 err         => $err,
-                errstr      => $errstr,
+                errtype     => $errtype,
                 ) if ($err ne 0);
 
 $template->param(