<?php

use App\Http\Controllers\FaultController;
use App\Http\Controllers\ProfileController;
use Illuminate\Support\Facades\Route;

use App\Models\User;
use App\Models\Fault;


Route::get('/', function () {
    return view('home');
});

Route::get('/dashboard', function () {
    $users = \App\Models\User::all();
    return view('dashboard.index', compact('users'));
})->middleware(['auth', 'verified'])->name('dashboard');

// Subroute for users under /dashboard/users
Route::get('/dashboard/users', function () {
    $users = \App\Models\User::all();
    return view('dashboard.users', compact('users'));
})->name('dashboard.users');


Route::get('/dashboard/faults', [FaultController::class, 'index'])->name('dashboard.faults');
Route::get('/dashboard/faults/open-modal/{id}', [FaultController::class, 'openModal'])->name('dashboard.openModal');
Route::get('/dashboard/faults/close-modal', [FaultController::class, 'closeModal'])->name('dashboard.closeModal');
Route::patch('/dashboard/faults/{id}/update-status', [FaultController::class, 'updateStatus'])->name('dashboard.updateStatus');


Route::middleware('auth')->group(function () {
    Route::get('/profile', [ProfileController::class, 'edit'])->name('profile.edit');
    Route::patch('/profile', [ProfileController::class, 'update'])->name('profile.update');
    Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy');
});

require __DIR__.'/auth.php';
