From 2aca922662d31019e89e1346a38839f2f07a3a28 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Bernd=20Ble=C3=9Fmann?= Date: Fri, 7 May 2021 00:01:47 +0200 Subject: [PATCH] =?utf8?q?Zeiterfassung:=20Eingabe:=20Eintr=C3=A4ge=20f.?= =?utf8?q?=20andere=20Mitarbeiter=20erlauben,=20wenn=20berechtigt?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Hier reicht es, beim init_time_recording den Mitarbeiter für neue Einträge auf den akuellten Bearbeiter zu setzen, wenn kein anderer Mitarbeiter aus der Form/Maske kommt. Die Rechte-Prüfung wird dann ohnehin im run_before-Hook 'check_auth_edit' gemacht. --- SL/Controller/TimeRecording.pm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/SL/Controller/TimeRecording.pm b/SL/Controller/TimeRecording.pm index d326522be..5c442cc4c 100644 --- a/SL/Controller/TimeRecording.pm +++ b/SL/Controller/TimeRecording.pm @@ -184,10 +184,10 @@ sub init_time_recording { } # do not overwrite staff member if you do not have the right - delete $attributes{staff_member_id} if !$_[0]->can_edit_all; - $attributes{staff_member_id} = SL::DB::Manager::Employee->current->id if $is_new; + delete $attributes{staff_member_id} if !$_[0]->can_edit_all; + $attributes{staff_member_id} ||= SL::DB::Manager::Employee->current->id if $is_new; - $attributes{employee_id} = SL::DB::Manager::Employee->current->id; + $attributes{employee_id} = SL::DB::Manager::Employee->current->id; $time_recording->assign_attributes(%attributes); -- 2.20.1