Browse Source

Bug 24973: Load custom localization file

It adds a new localization directory that could
host a custom SQL file for each language,
xx-YY/custom.sql

This will be the last file to be loaded at
install time, it can be used to set any difference
from default values.

It can't be deselected at install time.

Moved corresponding files for de-DE, it-IT,
nb-NO and completed es-ES

To test:
1) Apply the patch
2) Install es-ES/de-DE/it-IT/nb-NO translation (any lang)
   ( cd misc/translation; ./translate install es-ES )
3) Do a clean install using es-ES
4) After all files have been loaded check:
    * A new section labeled "Localization data added"
      with one file, custom.sql
    * Inspect the value of FrameworksLoaded syspref,
      last entry must be custom.sql
5) Remove/rename the file or localization dir and
   repeat 3/4, install must proceed normally

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
20.11.x
Bernardo Gonzalez Kriegel 3 years ago
committed by Jonathan Druart
parent
commit
74a13ab801
  1. 8
      C4/Installer.pm
  2. 2
      installer/data/mysql/localization/de-DE/custom.sql
  3. 0
      installer/data/mysql/localization/de-DE/custom.txt
  4. 29
      installer/data/mysql/localization/es-ES/custom.sql
  5. 1
      installer/data/mysql/localization/it-IT/custom.sql
  6. 0
      installer/data/mysql/localization/nb-NO/custom.sql
  7. 1
      installer/data/mysql/localization/nb-NO/custom.txt
  8. 1
      installer/data/mysql/nb-NO/1-Obligatorisk/system_preferences.txt
  9. 5
      installer/install.pl
  10. 2
      koha-tmpl/intranet-tmpl/prog/en/modules/installer/step3.tt

8
C4/Installer.pm

@ -312,6 +312,7 @@ moved to a different method.
sub load_sql_in_order {
my $self = shift;
my $langchoice = shift;
my $all_languages = shift;
my @sql_list = @_;
@ -346,13 +347,18 @@ sub load_sql_in_order {
push @fnames, C4::Context->config('intranetdir') . "/installer/data/mysql/account_offset_types.sql";
push @fnames, C4::Context->config('intranetdir') . "/installer/data/mysql/account_credit_types.sql";
push @fnames, C4::Context->config('intranetdir') . "/installer/data/mysql/account_debit_types.sql";
my $localization_file = C4::Context->config('intranetdir') .
"/installer/data/$self->{dbms}/localization/$langchoice/custom.sql";
if ( $langchoice ne 'en' and -f $localization_file ) {
push @fnames, $localization_file;
}
foreach my $file (@fnames) {
# warn $file;
undef $/;
my $error = $self->load_sql($file);
my @file = split qr(\/|\\), $file;
$lang = $file[ scalar(@file) - 3 ] unless ($lang);
my $level = $file[ scalar(@file) - 2 ];
my $level = ( $file =~ /(localization)/ ) ? $1 : $file[ scalar(@file) - 2 ];
unless ($error) {
$systempreference .= "$file[scalar(@file)-1]|"
unless ( index( $systempreference, $file[ scalar(@file) - 1 ] ) >= 0 );

2
installer/data/mysql/de-DE/mandatory/system_preferences.sql → installer/data/mysql/localization/de-DE/custom.sql

@ -26,7 +26,7 @@ UPDATE systempreferences SET value = 'z' WHERE variable = 'DefaultClassification
UPDATE systempreferences SET value = 'Willkommen im Koha-Katalog!' WHERE variable = 'OpacMainUserBlock';
UPDATE systempreferences SET value = '' WHERE variable = 'OpacNav';
UPDATE systempreferences SET value = '' WHERE variable = 'OpacNavBottom';
UPDATE systempreferences SET value =
UPDATE systempreferences SET value =
'<li><a href="https://worldcat.org/search?q={TITLE}" target="_blank">Andere Bibliotheken (WorldCat)</a></li>
<li><a href="https://scholar.google.com/scholar?q={TITLE}" target="_blank">Google Scholar</a></li>
<li><a href="https://www.bookfinder.com/search/?author={AUTHOR}&amp;title={TITLE}&amp;st=xl&amp;ac=qr" target="_blank">Online-Buchhandel (Bookfinder.com)</a></li>'

0
installer/data/mysql/de-DE/mandatory/system_preferences.txt → installer/data/mysql/localization/de-DE/custom.txt

29
installer/data/mysql/localization/es-ES/custom.sql

@ -0,0 +1,29 @@
--
-- System preferences that differ from the global defaults
--
-- This file is part of Koha.
--
-- Koha is free software; you can redistribute it and/or modify it
-- under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 3 of the License, or
-- (at your option) any later version.
--
-- Koha is distributed in the hope that it will be useful, but
-- WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Koha; if not, see <http://www.gnu.org/licenses>.
UPDATE systempreferences SET value = 'padre|madre' WHERE variable = 'borrowerRelationship';
UPDATE systempreferences SET value = 'Sr.|Sra.' WHERE variable = 'BorrowersTitles';
UPDATE systempreferences SET value = 'FR' WHERE variable = 'CurencyFormat';
UPDATE systempreferences SET value = 'US' WHERE variable = 'AddressFormat';
UPDATE systempreferences SET value = 'metric' WHERE variable = 'dateformat';
UPDATE systempreferences SET value = 'ddc' WHERE variable = 'DefaultClassificationSource';
UPDATE systempreferences SET value = 'Bienvenido al catálogo!' WHERE variable = 'OpacMainUserBlock';
UPDATE systempreferences SET value = '' WHERE variable = 'OpacNav';
UPDATE systempreferences SET value = '' WHERE variable = 'OpacNavBottom';
UPDATE systempreferences SET value = '1' WHERE variable = 'CalendarFirstDayOfWeek';
UPDATE systempreferences SET value = '1' WHERE variable = 'opaclanguagesdisplay';

1
installer/data/mysql/it-IT/necessari/system_preferences.sql → installer/data/mysql/localization/it-IT/custom.sql

@ -62,4 +62,3 @@ UPDATE systempreferences SET value = '1' WHERE variable = 'UseICU';
UPDATE systempreferences SET value = 'URLLinkText' WHERE variable = 'URLLinkText';
UPDATE systempreferences SET value = '#200|<span style=\"font-weight:bold\">|{200a}{. 200c}{ : 200e}{200d}{ / 200f}{ ; 200g}{. 200h}{. 200i}|</span>\r\n#210|. &ndash; |{210a}{ : 210c}{, 210d}|\r\n#215|. &ndash; |{215a}{ ; 215d}|\r\n#225|. &ndash; |{(225a}{ ; 225v)}|\r\n#010|. &ndash; |{ISBN 010a}|' WHERE variable = 'ISBD';

0
installer/data/mysql/nb-NO/1-Obligatorisk/system_preferences.sql → installer/data/mysql/localization/nb-NO/custom.sql

1
installer/data/mysql/localization/nb-NO/custom.txt

@ -0,0 +1 @@
Standard systempreferanser.

1
installer/data/mysql/nb-NO/1-Obligatorisk/system_preferences.txt

@ -1 +0,0 @@
Standard systempreferanser.

5
installer/install.pl

@ -245,9 +245,12 @@ elsif ( $step && $step == 3 ) {
elsif ( $op && $op eq 'addframeworks' ) {
# 1ST install, 3rd sub-step : insert the SQL files the user has selected
my $langchoice = $query->param('fwklanguage');
$langchoice = $query->cookie('KohaOpacLanguage') unless ($langchoice);
$langchoice =~ s/[^a-zA-Z_-]*//g;
my ( $fwk_language, $list ) =
$installer->load_sql_in_order( $all_languages,
$installer->load_sql_in_order( $langchoice, $all_languages,
$query->multi_param('framework') );
$template->param(
"fwklanguage" => $fwk_language,

2
koha-tmpl/intranet-tmpl/prog/en/modules/installer/step3.tt

@ -173,6 +173,8 @@
<h3>Optional data added</h3>
[% ELSIF lis.level == 'mysql' %]
<h3>MySQL data added</h3>
[% ELSIF lis.level == 'localization' %]
<h3>Localization data added</h3>
[% ELSE %]
<h3>[% lis.level FILTER ucfirst | html %] data added</h3>
[% END %]

Loading…
Cancel
Save