Bug 11508: fix untranslatable pull-down in auth_subfields_structure.pl
authorBernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Fri, 4 Apr 2014 23:37:54 +0000 (20:37 -0300)
committerGalen Charlton <gmc@esilibrary.com>
Sat, 19 Apr 2014 14:40:41 +0000 (14:40 +0000)
This patch replaces occurrences of CGI::scrolling_list with
untranslatable labels. It also fixes capitalization.

To test
1. Go to Administration > Authority types,
click 'MARC structure' of any auth type,
click 'subfields' for any Tag >= 010,
clic 'Edit subfields'

Check pulldowns 'Managed in tab' and 'Select to display or not'

2. Apply the patch

3. Reload and verify functionality of both pulldowns

4. Check that strings are not present on staff PO file
egrep "^msgid \"(Show all|Hide all|ignore)" misc/translator/po/fi-FI-i-staff-t-prog-v-3006000.po

5. Update language file
(cd misc/translator/; perl translate update fi-FI)

6. Check that strings are now present, repeat 4.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
NOTE: drop-downs work identically. Show all, Hide all, and
      ignore were added to the po files too.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Works as described and improves the page to manage authority
subfields.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
admin/auth_subfields_structure.pl
koha-tmpl/intranet-tmpl/prog/en/modules/admin/auth_subfields_structure.tt

index fb0e59c..321e54c 100755 (executable)
@@ -140,41 +140,14 @@ if ($op eq 'add_form') {
 
                my %row_data;  # get a fresh hash for the row data
         $row_data{defaultvalue} = $data->{defaultvalue};
-               $row_data{tab} = CGI::scrolling_list(-name=>'tab',
-                                       -id=>"tab$i",
-                                        -values =>
-                                        [ '-1', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10' ],
-                                        -labels => {
-                                            '-1' => 'ignore',
-                                            '0'  => '0',
-                                            '1'  => '1',
-                                            '2'  => '2',
-                                            '3'  => '3',
-                                            '4'  => '4',
-                                            '5'  => '5',
-                                            '6'  => '6',
-                                            '7'  => '7',
-                                            '8'  => '8',
-                                            '9'  => '9',
-                                        },
-                                       -default=>$data->{'tab'},
-                                       -size=>1,
-                                       -tabindex=>'',
-                                       -multiple=>0,
-                                       );
-               $row_data{ohidden} = CGI::scrolling_list(-name=>'ohidden',
-                                       -id=>"ohidden$i",
-                                       #-values=>['0','1','2'],
-                                       #-labels => {'0'=>'Show','1'=>'Show Collapsed',
-                                       #                               '2' =>'Hide',
-                                       #                               },
-                                       -values=>['0','-5'],
-                                       -labels => {'0'=>'Show All','-5'=>'Hide All',},
-                                       -default=>$data->{'hidden'},
-                                       #-default=>"-5",
-                                       -size=>1,
-                                       -multiple=>0,
-                                       );
+        $row_data{tab} = {
+                    id      => "tab$i",
+                    default => $data->{'tab'},
+                    };
+        $row_data{ohidden} = {
+                    id      => "ohidden$i",
+                    default => $data->{'hidden'}
+                    };
                #$row_data{ihidden} = CGI::scrolling_list(-name=>'ihidden',
                #                       -id=>"ihidden$i",
                #                       -values=>['0','1','2'],
index 3d22192..94d53bf 100644 (file)
@@ -88,12 +88,41 @@ function displayMoreConstraint(numlayer){
                 <li><label for="mandatory[% loo.row %]">Mandatory: </label>[% loo.mandatory %]&nbsp;</li>
                 <li><label for="liblibrarian[% loo.row %]">Text for librarian: </label><input id="liblibrarian[% loo.row %]" type="text" name="liblibrarian" value="[% loo.liblibrarian %]" size="40" maxlength="80" /></li>
                 <li><label for="libopac[% loo.row %]">Text for OPAC: </label><input type="text" id="libopac[% loo.row %]" name="libopac" value="[% loo.libopac %]" size="40" maxlength="80" /></li>
-                <li><label for="tab[% loo.row %]">Managed in tab: </label>[% loo.tab %] (ignore means that the subfield does not display in the record editor)</li>
+                <li><label for="tab[% loo.row %]">Managed in tab: </label>
+                    <select name="tab" tabindex="" size="1" id="[% loo.tab.id %]">
+                        [%- IF ( loo.tab.default ==  -1 ) -%]
+                        <option value="-1" selected="selected">ignore</option>
+                        [%- ELSE -%]
+                        <option value="-1">ignore</option>
+                        [%- END -%]
+                    [%- FOREACH t IN [ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10'] -%]
+                        [%- IF ( loo.tab.default ==  t ) -%]
+                        <option value="[%- t -%]" selected="selected">[%- t -%]</option>
+                        [%- ELSE -%]
+                        <option value="[%- t -%]">[%- t -%]</option>
+                        [%- END -%]
+                    [%- END -%]
+                    </select>
+                    (ignore means that the subfield does not display in the record editor)
+                </li>
                 <li>
                     <fieldset>
                         <legend>Display</legend>
                         <ol>
-                            <li><label for="ohidden[% loo.row %]">Select to display or not:</label>[% loo.ohidden %]  </li>
+                            <li><label for="ohidden[% loo.row %]">Select to display or not:</label>
+                                <select name="ohidden" size="1" id="[% loo.ohidden.id %]">
+                                    [%- IF ( loo.ohidden.default ==  0 ) -%]
+                                    <option value= "0" selected="selected">Show all</option>
+                                    <option value="-5">Hide all</option>
+                                    [%- ELSIF ( loo.ohidden.default == -5 ) -%]
+                                    <option value= "0">Show all</option>
+                                    <option value="-5" selected="selected">Hide all</option>
+                                    [%- ELSE -%]
+                                    <option value= "0">Show all</option>
+                                    <option value="-5">Hide all</option>
+                                    [%- END -%]
+                                </select>
+                            </li>
                             <!-- <li><label for="ihidden[% loo.row %]">Intranet:</label>[% loo.ihidden %] </li> -->
                             <!-- <li><label for="ehidden[% loo.row %]">Editor:</label>[% loo.ehidden %] (see online help)</li> -->
                         </ol>