X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fio.pl;h=adaa39946c9362ab4569dbfdc8b884b6ea6c31c5;hb=a4551dbafb54620a87faedac6b0970ca9cb78979;hp=dc0940d43ed42700d281f1a497aed5688edbc64e;hpb=a590a6518025280c2d6e76c87641764ca6198521;p=kivitendo-erp.git diff --git a/bin/mozilla/io.pl b/bin/mozilla/io.pl index dc0940d43..adaa39946 100644 --- a/bin/mozilla/io.pl +++ b/bin/mozilla/io.pl @@ -1977,11 +1977,7 @@ sub relink_accounts { } $form->{"taxaccounts"} = ""; - for (my $i = 1; $i <= $form->{"rowcount"}; $i++) { - if ($form->{"id_$i"}) { - IC->retrieve_accounts(\%myconfig, $form, $form->{"id_$i"}, $i, 1); - } - } + IC->retrieve_accounts(\%myconfig, $form, map { $_ => $form->{"id_$_"} } 1 .. $form->{rowcount}); $main::lxdebug->leave_sub(); } @@ -2077,7 +2073,7 @@ sub _update_custom_variables { my $form = $main::form; $form->{CVAR_CONFIGS} ||= { }; - $form->{CVAR_CONFIGS}->{IC} = CVar->get_configs(module => 'IC'); + $form->{CVAR_CONFIGS}->{IC} ||= CVar->get_configs(module => 'IC'); $main::lxdebug->leave_sub(); } @@ -2094,30 +2090,31 @@ sub _render_custom_variables_inputs { return; } - foreach my $cvar (@{ $form->{CVAR_CONFIGS}->{IC} }) { - $cvar->{valid} = $params{part_id} - ? CVar->get_custom_variables_validity(config_id => $cvar->{id}, trans_id => $params{part_id}) - : 0; - - $cvar->{value} = $form->{"ic_cvar_" . $cvar->{name} . "_$params{row}"}; - } - - CVar->render_inputs(hide_non_editable => 1, - variables => $form->{CVAR_CONFIGS}->{IC}, - name_prefix => 'ic_', - name_postfix => "_$params{row}"); + my $valid = CVar->custom_variables_validity_by_trans_id(trans_id => $params{part_id}); my $num_visible_cvars = 0; foreach my $cvar (@{ $form->{CVAR_CONFIGS}->{IC} }) { + $cvar->{valid} = $params{part_id} && $valid->($cvar->{id}); + my $description = ''; if ($cvar->{flag_editable} && $cvar->{valid}) { $num_visible_cvars++; $description = $cvar->{description} . ' '; } - push @{ $params{ROW2} }, { line_break => $num_visible_cvars == 1, - value => $description . $cvar->{HTML_CODE}, - }; + push @{ $params{ROW2} }, { + line_break => $num_visible_cvars == 1, + description => $description, + cvar => 1, + render_options => { + hide_non_editable => 1, + var => $cvar, + name_prefix => 'ic_', + name_postfix => "_$params{row}", + valid => $cvar->{valid}, + value => $form->{"ic_cvar_" . $cvar->{name} . "_$params{row}"}, + } + }; } $main::lxdebug->leave_sub(2);