Bug 17762: Add the lang attribute to the patron form
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Thu, 8 Dec 2016 10:52:30 +0000 (10:52 +0000)
committerKyle M Hall <kyle@bywatersolutions.com>
Tue, 9 May 2017 20:56:40 +0000 (20:56 +0000)
Not the opac because we do not want the patron to modify it, they won't
be necessary translated.

Sponsored-by: Orex Digital
Signed-off-by: Hugo Agud <hagud@orex.es>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt
koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt
members/memberentry.pl
members/moremember.pl

index ff3ef68..3221b4a 100644 (file)
@@ -720,6 +720,31 @@ $(document).ready(function() {
         </select>
        </li>
      [% END %]
+    [% IF Koha.Preference('TranslateNotices') %]
+        <li>
+            <label for="lang">Preferred language for notices: </label>
+            <select id="lang" name="lang">
+                <option value="default">Default</option>
+                [% FOR language IN languages %]
+                    [% FOR sublanguage IN language.sublanguages_loop %]
+                        [% IF language.plural %]
+                            [% IF sublanguage.rfc4646_subtag == lang %]
+                                <option value="[% sublanguage.rfc4646_subtag %]" selected="selected">[% sublanguage.native_description %] [% sublanguage.region_description %] ([% sublanguage.rfc4646_subtag %])</option>
+                            [% ELSE %]
+                                <option value="[% sublanguage.rfc4646_subtag %]">[% sublanguage.native_description %] [% sublanguage.region_description %] ([% sublanguage.rfc4646_subtag %])</option>
+                            [% END %]
+                        [% ELSE %]
+                            [% IF sublanguage.rfc4646_subtag == lang %]
+                                <option value="[% sublanguage.rfc4646_subtag %]" selected="selected">[% sublanguage.native_description %] ([% sublanguage.rfc4646_subtag %])</option>
+                            [% ELSE %]
+                                <option value="[% sublanguage.rfc4646_subtag %]">[% sublanguage.native_description %] ([% sublanguage.rfc4646_subtag %])</option>
+                            [% END %]
+                        [% END %]
+                    [% END %]
+                [% END %]
+            </select>
+        </li>
+    [% END %]
    </ol>
   </fieldset>
     [% UNLESS nodateenrolled &&  noopacnote && noborrowernotes %]
index dc4ff75..6e5308f 100644 (file)
@@ -459,6 +459,12 @@ function validate1(date) {
         Inherited
         [% END %]
       </li>
+    [% END %]
+    [% IF Koha.Preference('TranslateNotices') %]
+        <li>
+            <span class="label">Preferred language for notices: </span>
+            [% translated_language %]
+        </li>
     [% END %]
        </ol>
        </div>
index 768b163..8672a20 100755 (executable)
@@ -265,6 +265,8 @@ $newdata{'city'}    = $input->param('city')    if defined($input->param('city'))
 $newdata{'zipcode'} = $input->param('zipcode') if defined($input->param('zipcode'));
 $newdata{'country'} = $input->param('country') if defined($input->param('country'));
 
+$newdata{'lang'}    = $input->param('lang')    if defined($input->param('lang'));
+
 # builds default userid
 # userid input text may be empty or missing because of syspref BorrowerUnwantedField
 if ( ( defined $newdata{'userid'} && $newdata{'userid'} eq '' ) || $check_BorrowerUnwantedField =~ /userid/ ) {
@@ -772,6 +774,11 @@ if ( defined $min ) {
     );
 }
 
+if ( C4::Context->preference('TranslateNotices') ) {
+    my $translated_languages = C4::Languages::getTranslatedLanguages( 'opac', C4::Context->preference('template') );
+    $template->param( languages => $translated_languages );
+}
+
 output_html_with_http_headers $input, $cookie, $template->output;
 
 sub  parse_extended_patron_attributes {
index 2ab8174..0eb6927 100755 (executable)
@@ -331,8 +331,15 @@ if ( C4::Context->preference("ExportCircHistory") ) {
 
 # in template <TMPL_IF name="I"> => instutitional (A for Adult, C for children)
 $template->param( $data->{'categorycode'} => 1 );
+
+# Display the language description instead of the code
+# Note that this is certainly wrong
+my ( $subtag, $region ) = split '-', $patron->lang;
+my $translated_language = C4::Languages::language_get_description( $subtag, $subtag, 'language' );
+
 $template->param(
     patron          => $patron,
+    translated_language => $translated_language,
     detailview      => 1,
     borrowernumber  => $borrowernumber,
     othernames      => $data->{'othernames'},