Lagerverwaltung implementiert.
[kivitendo-erp.git] / SL / Locale.pm
index a6756fe..f797ed6 100644 (file)
@@ -70,10 +70,11 @@ sub new {
       $self->{charset} = Common::DEFAULT_CHARSET;
     }
 
-    my $db_charset = $main::dbcharset;
-    $db_charset ||= Common::DEFAULT_CHARSET;
-    $self->{iconv} = Text::Iconv->new($self->{charset}, $db_charset);
-    $self->{iconv_english} = Text::Iconv->new("ASCII", $db_charset);
+    my $db_charset         = $main::dbcharset || Common::DEFAULT_CHARSET;
+
+    $self->{iconv}         = Text::Iconv->new($self->{charset}, $db_charset);
+    $self->{iconv_english} = Text::Iconv->new('ASCII',          $db_charset);
+    $self->{iconv_iso8859} = Text::Iconv->new('ISO-8859-15',    $db_charset);
   }
 
   $self->{NLS_file} = $NLS_file;
@@ -91,13 +92,20 @@ sub new {
 }
 
 sub text {
-  my ($self, $text) = @_;
+  my $self = shift;
+  my $text = shift;
 
   if (exists $self->{texts}->{$text}) {
-    return $self->{iconv}->convert($self->{texts}->{$text});
+    $text = $self->{iconv}->convert($self->{texts}->{$text});
+  } else {
+    $text = $self->{iconv_english}->convert($text);
   }
 
-  return $self->{iconv_english}->convert($text);
+  if (@_) {
+    $text = Form->format_string($text, @_);
+  }
+
+  return $text;
 }
 
 sub findsub {