Enforce billable rate restriction in controllers and importers instead of model hooks

This commit is contained in:
Constantin Graf
2026-10-14 13:29:32 +02:00
committed by Gregor Vostrak
parent 3197c8c7a0
commit 1c41432389
18 changed files with 66 additions and 257 deletions

View File

@@ -73,7 +73,7 @@ class ProjectMemberController extends Controller
}
$projectMember = new ProjectMember;
$projectMember->billable_rate = $request->getBillableRate();
$projectMember->billable_rate = $this->canUseBillableRates($organization) ? $request->getBillableRate() : null;
$projectMember->member()->associate($member);
$projectMember->user()->associate($member->user);
$projectMember->project()->associate($project);
@@ -97,7 +97,9 @@ class ProjectMemberController extends Controller
{
$this->checkPermission($organization, 'project-members:update', projectMember: $projectMember);
$oldBillableRate = $projectMember->billable_rate;
$projectMember->billable_rate = $request->getBillableRate();
if ($this->canUseBillableRates($organization)) {
$projectMember->billable_rate = $request->getBillableRate();
}
$projectMember->save();
if ($oldBillableRate !== $projectMember->billable_rate) {