X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FHelper%2FCustomVariables.pm;h=a6ab5ae18859f8bf7e8035069c42ea8c38a06c3e;hb=2a0cbd885790174fa0f212e6661b30362650a42c;hp=e8adfe8bab681a25ca361c346ed848f09bb4e450;hpb=5491ab1748703d2357949ba01050c76f51493e41;p=kivitendo-erp.git diff --git a/SL/DB/Helper/CustomVariables.pm b/SL/DB/Helper/CustomVariables.pm index e8adfe8ba..a6ab5ae18 100644 --- a/SL/DB/Helper/CustomVariables.pm +++ b/SL/DB/Helper/CustomVariables.pm @@ -4,7 +4,7 @@ use strict; use Carp; use Data::Dumper; use List::Util qw(first); -use List::UtilsBy qw(sort_by partition_by); +use List::UtilsBy qw(partition_by); use constant META_CVARS => 'cvars_config'; @@ -104,8 +104,6 @@ sub make_cvar_by_configs { @$configs ); - @return = sort_by { $_->config->sortkey } @return; - return \@return; } } @@ -182,7 +180,7 @@ sub _all_configs { } return $params{module} && !ref $params{module} ? $cache->{module}{$params{module}} - : $params{module} && ref $params{module} ? [ map { @{ $cache->{module}{$_} } } @{ $params{module} } ] + : $params{module} && ref $params{module} ? [ map { @{ $cache->{module}{$_} // [] } } @{ $params{module} } ] : $cache->{all}; } @@ -380,7 +378,8 @@ sub _all_invalids { # easy 2: no module in params? no validity return [] unless $params{module}; - my @module_configs = grep { $_->module eq $params{module} } @$configs; + my %wanted_modules = ref $params{module} ? map { $_ => 1 } @{ $params{module} } : ($params{module} => 1); + my @module_configs = grep { $wanted_modules{$_->module} } @$configs; return [] unless @module_configs;