12345678910111213141516171819202122232425262728293031 |
- <?php
-
- namespace App\Actions\FilamentCompanies;
-
- use App\Models\{Company, User};
- use Illuminate\Auth\Access\AuthorizationException;
- use Illuminate\Support\Facades\{Gate, Validator};
- use Wallo\FilamentCompanies\Contracts\UpdatesCompanyNames;
-
- class UpdateCompanyName implements UpdatesCompanyNames
- {
- /**
- * Validate and update the given company's name.
- *
- * @param array<string, string> $input
- *
- * @throws AuthorizationException
- */
- public function update(User $user, Company $company, array $input): void
- {
- Gate::forUser($user)->authorize('update', $company);
-
- Validator::make($input, [
- 'name' => ['required', 'string', 'max:255'],
- ])->validateWithBag('updateCompanyName');
-
- $company->forceFill([
- 'name' => $input['name'],
- ])->save();
- }
- }
|