FROM custom_variable_configs $where ORDER BY sortkey
SQL
+ $::form->{CVAR_CONFIGS} = {} unless 'HASH' eq ref $::form->{CVAR_CONFIGS};
if (!$::form->{CVAR_CONFIGS}->{$params{module}}) {
my $configs = selectall_hashref_query($form, $dbh, $query, @values);
$cvar->{OPTIONS} = [ map { { 'value' => $_ } } split(m/\#\#/, $cvar->{options}) ];
}
- my $act_var;
+ my ($act_var, $valid);
if ($params{trans_id}) {
my @values = (conv_i($cvar->{id}), conv_i($params{trans_id}));
push @values, $params{sub_module} if $params{sub_module};
do_statement($form, $h_var, $q_var, @values);
$act_var = $h_var->fetchrow_hashref();
- $act_var->{valid} = $self->get_custom_variables_validity(config_id => $cvar->{id}, trans_id => $params{trans_id});
+ $valid = $self->get_custom_variables_validity(config_id => $cvar->{id}, trans_id => $params{trans_id});
}
if ($act_var) {
: $cvar->{type} eq 'number' ? $act_var->{number_value}
: $cvar->{type} eq 'bool' ? $act_var->{bool_value}
: $act_var->{text_value};
- $cvar->{valid} = $act_var->{valid};
+ $cvar->{valid} = $valid;
} else {
$cvar->{valid} = 1;
do_statement($form, $sth, $query, @values);
- my $valid_index = "$params{name_prefix}cvar_$config->{name}$params{name_postfix}_valid";
- $self->save_custom_variables_validity(trans_id => $params{trans_id}, config_id => $config->{id},
- validity => ($params{variables}{$valid_index} || $params{always_valid} ? 1 : 0)
- );
+ if ($params{save_validity}) {
+ my $valid_index = "$params{name_prefix}cvar_$config->{name}$params{name_postfix}_valid";
+ $self->save_custom_variables_validity(trans_id => $params{trans_id},
+ config_id => $config->{id},
+ validity => ($params{variables}{$valid_index} || $params{always_valid} ? 1 : 0)
+ );
+ }
}
$sth->finish();