Harden
This commit is contained in:
@@ -4,6 +4,7 @@ namespace App\Http\Controllers;
|
||||
|
||||
use App\Models\Dispute;
|
||||
use App\Models\WorkOrder;
|
||||
use App\Notifications\ExchangeEventNotification;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\View\View;
|
||||
@@ -12,7 +13,7 @@ class DisputeController extends Controller
|
||||
{
|
||||
public function show(Request $request, Dispute $dispute): View
|
||||
{
|
||||
$dispute->load('workOrder.buyer', 'workOrder.provider', 'openedBy');
|
||||
$dispute->load('workOrder.buyer', 'workOrder.provider', 'openedBy', 'votes.user', 'comments.user', 'attachments');
|
||||
|
||||
abort_unless(
|
||||
in_array($request->user()->id, [$dispute->workOrder->buyer_id, $dispute->workOrder->provider_id], true)
|
||||
@@ -40,6 +41,17 @@ class DisputeController extends Controller
|
||||
|
||||
$workOrder->update(['status' => 'disputed']);
|
||||
|
||||
$recipient = $request->user()->id === $workOrder->buyer_id
|
||||
? $workOrder->provider
|
||||
: $workOrder->buyer;
|
||||
|
||||
$recipient->notify(new ExchangeEventNotification(
|
||||
'Dispute opened',
|
||||
$request->user()->name.' opened a dispute on '.$workOrder->jobPost->title.'.',
|
||||
route('disputes.show', $dispute),
|
||||
'dispute_opened'
|
||||
));
|
||||
|
||||
return redirect()->route('disputes.show', $dispute)->with('status', 'Dispute opened for peer review.');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user