MIF_E31221244/routes/web.php

111 lines
4.3 KiB
PHP

<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\{
AuthController,
DashboardController,
DiagnosaController,
GejalaController,
PenyakitController,
RuleController,
UserController
};
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider and all of them will
| be assigned to the "web" middleware group. Make something great!
|
*/
Route::get('/', function () {
return view('home.index');
})->name('home.index');
Route::middleware(['guest', 'prevent-back-history'])->group(function () {
Route::controller(AuthController::class)->group(function () {
Route::name('login.')->group(function () {
Route::get('/login', 'index')->name('index');
Route::post('/login', 'loginProcess')->name('process');
});
Route::name('register.')->group(function () {
Route::get('/register', 'register')->name('index');
Route::post('/register-process', 'registerProcess')->name('process');
Route::post('/check-username', 'checkUsername')->name('checkUsername');
Route::post('/check-email', 'checkEmail')->name('checkEmail');
});
Route::name('forgot_password.')->group(function () {
Route::get('/forgot-password', 'forgotPassword')->name('index');
Route::post('/forgot-password-process', 'forgotPasswordProcess')->name('process');
});
Route::name('validation_forgot_password.')->group(function () {
Route::get('/validation-forgot-password/{token}', 'validationForgotPassword')->name('index');
Route::post('/validation-forgot-password-process', 'validationForgotPasswordProcess')->name('process');
});
});
});
Route::middleware(['auth', 'prevent-back-history'])->group(function () {
Route::controller(AuthController::class)->group(function () {
Route::post('/logout', 'logout')->name('logout');
Route::get('/profile', 'profile')->name('profile');
Route::post('/update-profile', 'updateProfile')->name('updateProfile');
});
});
Route::middleware(['auth', 'admin', 'prevent-back-history'])->group(function () {
Route::get('/dashboard', [DashboardController::class, 'admin'])->name('dashboard');
Route::prefix('users')->controller(UserController::class)->name('users.')->group(function () {
Route::get('/', 'index')->name('index');
Route::post('/', 'store')->name('store');
Route::put('/{id}', 'update')->name('update');
Route::delete('/{id}', 'destroy')->name('destroy');
});
Route::prefix('penyakit')->controller(PenyakitController::class)->name('penyakit.')->group(function () {
Route::get('/', 'index')->name('index');
Route::post('/', 'store')->name('store');
Route::put('/{id}', 'update')->name('update');
Route::delete('/{id}', 'destroy')->name('destroy');
});
Route::prefix('gejala')->controller(GejalaController::class)->name('gejala.')->group(function () {
Route::get('/', 'index')->name('index');
Route::post('/', 'store')->name('store');
Route::put('/{id}', 'update')->name('update');
Route::delete('/{id}', 'destroy')->name('destroy');
});
Route::prefix('rule')->controller(RuleController::class)->name('rule.')->group(function () {
Route::get('/', 'index')->name('index');
Route::post('/', 'store')->name('store');
Route::put('/{id}', 'update')->name('update');
Route::delete('/{id}', 'destroy')->name('destroy');
});
});
Route::middleware(['auth', 'user', 'prevent-back-history'])->group(function () {
Route::get('/dashboard-user', [DashboardController::class, 'user'])->name('dashboard.user');
Route::prefix('diagnosa')->controller(DiagnosaController::class)->name('diagnosa.')->group(function () {
Route::get('/', 'index')->name('index');
Route::post('/', 'prosesDiagnosa')->name('proses');
Route::delete('/{id}', 'destroy')->name('destroy');
Route::get('/riwayat', 'riwayatDiagnosa')->name('riwayat');
Route::get('/download', 'downloadPdf')->name('download');
});
});