X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FEmployee.pm;h=431c8b77502c633acb33f623bd18940d0fc7c1a6;hb=e5c8056bdb9276b3ad4ac8a700562216f09e6cc7;hp=679227202c59dd6e2f1ea055cb6caaedf2c0fe8f;hpb=7e8a6c2552eb60b2c788dcd02d0566b26f9a3458;p=kivitendo-erp.git diff --git a/SL/Controller/Employee.pm b/SL/Controller/Employee.pm index 679227202..431c8b775 100644 --- a/SL/Controller/Employee.pm +++ b/SL/Controller/Employee.pm @@ -35,7 +35,24 @@ sub action_edit { sub action_save { my ($self, %params) = @_; - $self->{employee}->save; + SL::DB->client->with_transaction(sub { + 1; + + $self->{employee}->save; + + if ($self->{employee}->deleted) { + my $auth_user = SL::DB::Manager::AuthUser->get_first(login => $self->{employee}->login); + if ($auth_user) { + SL::DB::Manager::AuthClientUser->delete_all( + where => [ + client_id => $::auth->client->{id}, + user_id => $auth_user->id, + ]); + } + } + + 1; + }); flash('info', $::locale->text('Employee #1 saved!', $self->{employee}->safe_name));