Files
coolify/app/Livewire/Team/Create.php
Andras Bacsai 16c0cd10d8 rector: arrrrr
2025-01-07 14:52:08 +01:00

36 lines
861 B
PHP

<?php
namespace App\Livewire\Team;
use App\Models\Team;
use Livewire\Attributes\Validate;
use Livewire\Component;
use Throwable;
class Create extends Component
{
#[Validate(['required', 'min:3', 'max:255'])]
public string $name = '';
#[Validate(['nullable', 'min:3', 'max:255'])]
public ?string $description = null;
public function submit()
{
try {
$this->validate();
$team = Team::query()->create([
'name' => $this->name,
'description' => $this->description,
'personal_team' => false,
]);
auth()->user()->teams()->attach($team, ['role' => 'admin']);
refreshSession();
return redirect()->route('team.index');
} catch (Throwable $e) {
return handleError($e, $this);
}
}
}