homeos/routes/web.php

47 lines
1.8 KiB
PHP

<?php
use App\Livewire\Access;
use App\Livewire\Auth\Login;
use App\Livewire\Automations\Index as AutomationIndex;
use App\Livewire\Dashboard;
use App\Livewire\Devices\Index as DeviceIndex;
use App\Livewire\Devices\Show as DeviceShow;
use App\Livewire\Discovery\Index as DiscoveryIndex;
use App\Livewire\Host;
use App\Livewire\Persons\Index as PersonIndex;
use App\Livewire\Rooms\Index as RoomIndex;
use App\Livewire\Rooms\Show as RoomShow;
use App\Livewire\Settings\Index as SettingsIndex;
use App\Livewire\Windows;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
Route::get('/', fn () => redirect()->route('dashboard'));
Route::middleware('guest')->group(function () {
Route::get('/login', Login::class)->name('login');
});
Route::middleware('auth')->group(function () {
Route::get('/dashboard', Dashboard::class)->name('dashboard');
Route::get('/rooms', RoomIndex::class)->name('rooms.index');
Route::get('/rooms/{room}', RoomShow::class)->name('rooms.show');
Route::get('/devices', DeviceIndex::class)->name('devices.index');
Route::get('/devices/{device}', DeviceShow::class)->name('devices.show');
Route::get('/windows', Windows::class)->name('windows');
Route::get('/persons', PersonIndex::class)->name('persons.index');
Route::get('/access', Access::class)->name('access');
Route::get('/network', DiscoveryIndex::class)->name('network');
Route::get('/automations', AutomationIndex::class)->name('automations.index');
Route::get('/settings', SettingsIndex::class)->name('settings');
Route::get('/host', Host::class)->name('host');
Route::post('/logout', function () {
Auth::guard('web')->logout();
request()->session()->invalidate();
request()->session()->regenerateToken();
return redirect()->route('login');
})->name('logout');
});