]> git.proxmox.com Git - pve-common.git/blobdiff - data/PVE/Tools.pm
allow to pass undefined value to template_replace
[pve-common.git] / data / PVE / Tools.pm
index 72494027a1e937b310c1fe7515d6e10f93d8d81b..85b32305e85c811885c4561e68e8507ad57d94b1 100644 (file)
@@ -454,6 +454,8 @@ sub trim {
 sub template_replace {
     my ($tmpl, $data) = @_;
 
+    return $tmpl if !$tmpl;
     my $res = '';
     while ($tmpl =~ m/([^{]+)?({([^}]+)})?/g) {
        $res .= $1 if $1;
@@ -727,6 +729,16 @@ sub decode_text {
     return Encode::decode("utf8", uri_unescape($data));
 }
 
+sub decode_utf8_parameters {
+    my ($param) = @_;
+
+    foreach my $p (qw(comment description firstname lastname)) {
+       $param->{$p} = decode('utf8', $param->{$p}) if $param->{$p};
+    }
+
+    return $param;
+}
+
 sub random_ether_addr {
 
     my $rand = Digest::SHA1::sha1_hex(rand(), time());