. */ namespace App\Http\Controllers\Api\Admin\Account; use App\Http\Controllers\Controller; use Illuminate\Http\Request; class ContactController extends Controller { public function index(Request $request, int $accountId) { return $request->space->accounts()->findOrFail($accountId)->contacts; } public function show(Request $request, int $accountId, int $contactId) { return $request->space->accounts()->findOrFail($accountId) ->contacts() ->where('id', $contactId) ->firstOrFail(); } public function add(Request $request, int $accountId, int $contactId) { $account = $request->space->accounts()->findOrFail($accountId); $account->contacts()->detach($contactId); if ($request->space->accounts()->findOrFail($contactId)) { return $account->contacts()->attach($contactId); } } public function remove(Request $request, int $accountId, int $contactId) { $account = $request->space->accounts()->findOrFail($accountId); if (!$account->contacts()->pluck('id')->contains($contactId)) { abort(404); } return $account->contacts()->detach($contactId); } }