sub pve_verify_email {
my ($email, $noerr) = @_;
- # we use same regex as extjs Ext.form.VTypes.email
- if ($email !~ /^(\w+)([\-+.][\w]+)*@(\w[\-\w]*\.){1,5}([A-Za-z]){2,6}$/) {
+ # we use same regex as in Utils.js
+ if ($email !~ /^(\w+)([\-+.][\w]+)*@(\w[\-\w]*\.){1,5}([A-Za-z]){2,63}$/) {
return undef if $noerr;
die "value does not look like a valid email address\n";
}
description => "JSON Schema for parameters.",
optional => 1,
},
+ formatter => {
+ type => 'object',
+ description => "Used to store page formatter information (set by PVE::RESTHandler->register_page_formatter).",
+ optional => 1,
+ },
returns => {
type => 'object',
description => "JSON Schema for return value.",
if ($pd->{format} =~ m/-list/) {
# allow --vmid 100 --vmid 101 and --vmid 100,101
# allow --dow mon --dow fri and --dow mon,fri
- $opts->{$p} = join(",", @{$opts->{$p}});
+ $opts->{$p} = join(",", @{$opts->{$p}}) if ref($opts->{$p}) eq 'ARRAY';
} elsif ($pd->{format} =~ m/-alist/) {
# we encode array as \0 separated strings
# Note: CGI.pm also use this encoding