From: Bernd Bleßmann Date: Thu, 6 May 2021 22:01:47 +0000 (+0200) Subject: Zeiterfassung: Eingabe: Einträge f. andere Mitarbeiter erlauben, wenn berechtigt X-Git-Tag: kivitendo-mebil_0.1-0~9^2~250 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;ds=sidebyside;h=2aca922662d31019e89e1346a38839f2f07a3a28;p=kivitendo-erp.git Zeiterfassung: Eingabe: Einträge f. andere Mitarbeiter erlauben, wenn berechtigt 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. --- 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);