X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Farap.pl;h=fe5fa2d27634a6a4293f916c9bcab2912b627e07;hb=980dc53321ae6c2d3e448b6ca2a0c7d11a65ee8c;hp=3b1a443113e2dcc28f59bfa6e715f49db5f24967;hpb=9816fbfe7ec8e672dc93685111082d3ac9d51800;p=kivitendo-erp.git diff --git a/bin/mozilla/arap.pl b/bin/mozilla/arap.pl index 3b1a44311..fe5fa2d27 100644 --- a/bin/mozilla/arap.pl +++ b/bin/mozilla/arap.pl @@ -78,6 +78,7 @@ sub check_name { $form->{"${name}_id"} = $new_id; + _reset_salesman_id(); IS->get_customer(\%myconfig, \%$form) if ($name eq 'customer'); IR->get_vendor(\%myconfig, \%$form) if ($name eq 'vendor'); @@ -119,6 +120,7 @@ sub check_name { $form->{$name} = $form->{name_list}[0]->{name}; $form->{"old$name"} = qq|$form->{$name}--$form->{"${name}_id"}|; + _reset_salesman_id(); IS->get_customer(\%myconfig, \%$form) if ($name eq 'customer'); IR->get_vendor(\%myconfig, \%$form) if ($name eq 'vendor'); @@ -169,8 +171,6 @@ sub select_name { my $title = $locale->text('Select from one of the names below'); print qq| - -
{script}> @@ -249,9 +249,6 @@ sub select_name { - - - |; $main::lxdebug->leave_sub(); @@ -271,6 +268,8 @@ sub name_selected { # index for new item my $i = $form->{ndx}; + _reset_salesman_id(); + $form->{ $form->{vc} } = $form->{"new_name_$i"}; $form->{"$form->{vc}_id"} = $form->{"new_id_$i"}; $form->{"old$form->{vc}"} = @@ -291,6 +290,14 @@ sub name_selected { $main::lxdebug->leave_sub(); } +# Reset the $::form field 'salesman_id' to the ID of the currently +# logged in user. Useful when changing to a customer/vendor that has +# no salesman listed in their master data. +sub _reset_salesman_id { + my $current_employee = SL::DB::Manager::Employee->current; + $::form->{salesman_id} = $current_employee->id if $current_employee && exists $::form->{salesman_id}; +} + sub check_project { $main::lxdebug->enter_sub();