Merge remote branch 'kc/master' into new/enh/bug_5917
[koha_gimpoz] / C4 / Templates.pm
index 8467b9c..91b57fb 100644 (file)
@@ -98,7 +98,6 @@ sub output {
        $vars->{$k} = $self->{VARS}->{$k};
     }
     my $data;
-    binmode( STDOUT, ":utf8" );
     $template->process( $self->filename, $vars, \$data) || die "Template process failed: ", $template->error();; 
     return $data;
 }
@@ -109,7 +108,9 @@ sub param{
     while(@_){
        my $key = shift;
        my $val = shift;
-        utf8::decode($val) if $key eq "XSLTBloc";
+        utf8::encode($val) if utf8::is_utf8($val);
+        if( ref($val) eq 'ARRAY' && ! scalar @$val ){ $val = undef; }
+        elsif( ref($val) eq 'HASH' && ! scalar %$val ){ $val = undef; }
        $self->{VARS}->{$key} = $val;
     }
 }