mirror of
https://github.com/vitodeploy/vito.git
synced 2025-07-05 07:52:34 +00:00
init
This commit is contained in:
40
app/Http/Livewire/ServerProviders/ConnectProvider.php
Normal file
40
app/Http/Livewire/ServerProviders/ConnectProvider.php
Normal file
@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Livewire\ServerProviders;
|
||||
|
||||
use App\Actions\ServerProvider\CreateServerProvider;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Livewire\Component;
|
||||
|
||||
class ConnectProvider extends Component
|
||||
{
|
||||
public string $provider = '';
|
||||
|
||||
public string $name;
|
||||
|
||||
public string $token;
|
||||
|
||||
public string $key;
|
||||
|
||||
public string $secret;
|
||||
|
||||
public function connect(): void
|
||||
{
|
||||
app(CreateServerProvider::class)->create(auth()->user(), $this->all());
|
||||
|
||||
$this->emitTo(ProvidersList::class, '$refresh');
|
||||
|
||||
$this->dispatchBrowserEvent('connected', true);
|
||||
}
|
||||
|
||||
public function render(): View
|
||||
{
|
||||
if (request()->query('provider')) {
|
||||
$this->provider = request()->query('provider');
|
||||
}
|
||||
|
||||
return view('livewire.server-providers.connect-provider', [
|
||||
'open' => ! is_null(request()->query('provider')),
|
||||
]);
|
||||
}
|
||||
}
|
37
app/Http/Livewire/ServerProviders/ProvidersList.php
Normal file
37
app/Http/Livewire/ServerProviders/ProvidersList.php
Normal file
@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Livewire\ServerProviders;
|
||||
|
||||
use App\Models\ServerProvider;
|
||||
use App\Traits\RefreshComponentOnBroadcast;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Livewire\Component;
|
||||
|
||||
class ProvidersList extends Component
|
||||
{
|
||||
use RefreshComponentOnBroadcast;
|
||||
|
||||
public int $deleteId;
|
||||
|
||||
protected $listeners = [
|
||||
'$refresh',
|
||||
];
|
||||
|
||||
public function delete(): void
|
||||
{
|
||||
$provider = ServerProvider::query()->findOrFail($this->deleteId);
|
||||
|
||||
$provider->delete();
|
||||
|
||||
$this->refreshComponent([]);
|
||||
|
||||
$this->dispatchBrowserEvent('confirmed', true);
|
||||
}
|
||||
|
||||
public function render(): View
|
||||
{
|
||||
return view('livewire.server-providers.providers-list', [
|
||||
'providers' => ServerProvider::query()->latest()->get(),
|
||||
]);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user