summaryrefslogtreecommitdiff
path: root/addons/hr_holidays_attendance/models/hr_leave_allocation.py
diff options
context:
space:
mode:
Diffstat (limited to 'addons/hr_holidays_attendance/models/hr_leave_allocation.py')
-rw-r--r--addons/hr_holidays_attendance/models/hr_leave_allocation.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/addons/hr_holidays_attendance/models/hr_leave_allocation.py b/addons/hr_holidays_attendance/models/hr_leave_allocation.py
index 1b962540e9f..2732fd5e4b8 100644
--- a/addons/hr_holidays_attendance/models/hr_leave_allocation.py
+++ b/addons/hr_holidays_attendance/models/hr_leave_allocation.py
@@ -52,7 +52,9 @@ class HolidaysAllocation(models.Model):
res = super().write(vals)
if 'number_of_days' not in vals:
return res
- for allocation in self.filtered('overtime_id'):
+ if not self.env.user.has_group("hr_holidays.group_hr_holidays_user") and any(allocation.state not in ('draft', 'confirm') for allocation in self):
+ raise ValidationError(_('Only an Officer or Administrator is allowed to edit the allocation duration in this status.'))
+ for allocation in self.sudo().filtered('overtime_id'):
employee = allocation.employee_id
duration = allocation.number_of_hours_display
overtime_duration = allocation.overtime_id.sudo().duration