From: <Raf...@nt...> - 2006-03-29 01:32:17
|
Author: RafaelAlvarez Date: 2006-03-28 17:31:55 -0800 (Tue, 28 Mar 2006) New Revision: 9588 Modified: twiki/branches/TWikiRelease04x00/bin/configure twiki/branches/TWikiRelease04x00/lib/TWiki/I18N.pm Log: Item1979: Refresh (ie, remove it) the cache file if a language setting is changed. Only list those languages that are enabled Modified: twiki/branches/TWikiRelease04x00/bin/configure =================================================================== --- twiki/branches/TWikiRelease04x00/bin/configure 2006-03-29 01:16:01 UTC (rev 9587) +++ twiki/branches/TWikiRelease04x00/bin/configure 2006-03-29 01:31:55 UTC (rev 9588) @@ -1292,6 +1292,7 @@ } $output .= CGI::h2('Updating configuration'); + my $languageChanged=0; foreach $param ( $query->param ) { next unless $param =~ /^^TYPEOF:(.*)/; my $type = $query->param( $param ); @@ -1314,11 +1315,20 @@ CGI::strong('new '). CGI::code($val||' '); $updates{$basevar} = _perlifyType($val, $type); + #SMELL: Not elegant, but works + if ($basevar=~/\{Languages\}/) { + $languageChanged=1; + } $changed++; } } $output .= CGI::p(); setConfig($path, \%updates); + if ($languageChanged) { + if ( -f "$TWiki::cfg{LocalesDir}/languages.cache" ) { + unlink "$TWiki::cfg{LocalesDir}/languages.cache"; + } + } my $itemText = ($changed == 1) ? 'item' : 'items'; $output .= CGI::hr(); $output .= CGI::p(CGI::strong($changed.' configuration ' . $itemText . ' changed. ')); Modified: twiki/branches/TWikiRelease04x00/lib/TWiki/I18N.pm =================================================================== --- twiki/branches/TWikiRelease04x00/lib/TWiki/I18N.pm 2006-03-29 01:16:01 UTC (rev 9587) +++ twiki/branches/TWikiRelease04x00/lib/TWiki/I18N.pm 2006-03-29 01:31:55 UTC (rev 9588) @@ -51,9 +51,9 @@ my @available ; while ( my ( $langCode, $langOptions ) = each %{$TWiki::cfg{Languages}} ) { - #if ( $langOptions->{Enabled} ) { + if ( $langOptions->{Enabled} ) { push(@available, _normalize_language_tag($langCode)); - #} + } } return @available; |