Bug 9497 - Make it easier to add new encodings for Z39.50 servers and add ISO 8859-1
authorMagnus Enger <magnus@enger.priv.no>
Sun, 27 Jan 2013 13:00:45 +0000 (14:00 +0100)
committerJared Camins-Esakov <jcamins@cpbibliography.com>
Thu, 31 Jan 2013 15:53:11 +0000 (10:53 -0500)
This patch does three things:
- Makes admin/z3950servers.pl create one variable for encoding,
  not one variable for each encoding
- Makes the template create encoding options from a list
- Adds ISO 8859-1 to the list of available encodings
See the bug for a lengthier description

To test:
- Apply the patch
- Edit one Z39.50 server several times, choosing each available
  encoding in turn
- Check that for each encoding, the correct encoding is shown both in
  the list of Z39.50 servers and in the dropdown on the edit screen

Comment: Works as described, no errors.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Mason James <mtj@kohaaloha.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
admin/z3950servers.pl
koha-tmpl/intranet-tmpl/prog/en/modules/admin/z3950servers.tt

index fc9e2ed..92cc3e5 100755 (executable)
@@ -97,9 +97,9 @@ if ($op eq 'add_form') {
                $sth->finish;
        }
     $template->param( $_ => $data->{$_} ) 
-        for ( qw( host port db userid password checked rank timeout ) );
+        for ( qw( host port db userid password checked rank timeout encoding ) );
     $template->param( $_ . $data->{$_} => 1)
-        for ( qw( syntax encoding ) );
+        for ( qw( syntax ) );
                                                                                                        # END $OP eq ADD_FORM
 ################## ADD_VALIDATE ##################################
 # called by add_form, used to insert/modify data in DB
index 3205e6f..a2f473d 100644 (file)
 
     <li><label for="encoding">Encoding (z3950 can send<br /> records in various encodings. Choose one): </label>  
 <select name="encoding">
-[% IF ( encodingutf8 ) %]
-<option value="utf8" selected="selected">UTF-8</option>
-[% ELSE %]
-<option value="utf8">UTF-8</option>
-[% END %]
-[% IF ( encodingEUC_KR ) %]
-<option value="EUC-KR" selected="selected">EUC-KR</option>
-[% ELSE %]
-<option value="EUC-KR">EUC-KR</option>
-[% END %]
-[% IF ( encodingISO_5426 ) %]
-<option value="ISO_5426" selected="selected">ISO_5426</option>
-[% ELSE %]
-<option value="ISO_5426">ISO_5426</option>
-[% END %]
-[% IF ( encodingISO_6937 ) %]
-<option value="ISO_6937" selected="selected">ISO_6937</option>
-[% ELSE %]
-<option value="ISO_6937">ISO_6937</option>
-[% END %]
-[% IF ( encodingMARC_8 ) %]
-<option value="MARC-8" selected="selected">MARC-8</option>
-[% ELSE %]
-<option value="MARC-8">MARC-8</option>
+[% FOREACH enc IN [ 'utf8' 'EUC-KR' 'ISO_5426' 'ISO_6937' 'ISO_8859-1' 'MARC-8' ] %]
+    [% IF ( encoding == enc ) %]
+    <option value="[% enc %]" selected="selected">[% enc %]</option>
+    [% ELSE %]
+    <option value="[% enc %]">[% enc %]</option>
+    [% END %]
 [% END %]
 </select>
 </li>