77 lines
3.9 KiB
PHP
77 lines
3.9 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
use App\Http\Controllers\AuthController;
|
|
use App\Http\Controllers\DashboardController;
|
|
use App\Http\Controllers\ContractController;
|
|
use App\Http\Controllers\DocumentController;
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| 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 redirect()->route('dashboard');
|
|
});
|
|
|
|
// Auth
|
|
Route::get('/login', [AuthController::class, 'showLogin'])->name('login');
|
|
Route::post('/login', [AuthController::class, 'login']);
|
|
Route::get('/register', [AuthController::class, 'showRegister'])->name('register');
|
|
Route::post('/register', [AuthController::class, 'register']);
|
|
Route::post('/logout', [AuthController::class, 'logout'])->name('logout');
|
|
|
|
// Dashboard & Resources
|
|
Route::middleware(['auth', 'active'])->group(function () {
|
|
Route::get('/dashboard', [DashboardController::class, 'index'])->name('dashboard');
|
|
Route::post('/dashboard/note', [DashboardController::class, 'updateNote'])->name('dashboard.note.update');
|
|
|
|
Route::resource('contracts', ContractController::class);
|
|
|
|
// Municipalities
|
|
Route::resource('municipalities', \App\Http\Controllers\MunicipalityController::class)->only(['index', 'show']);
|
|
|
|
// Document Upload
|
|
Route::post('contracts/{contract}/documents', [DocumentController::class, 'store'])->name('documents.store');
|
|
Route::delete('documents/{document}', [DocumentController::class, 'destroy'])->name('documents.destroy');
|
|
|
|
// Logs (Admin Only)
|
|
// Route::get('logs', ...)
|
|
|
|
// Cortex XDR
|
|
Route::get('/cortex', [App\Http\Controllers\CortexXdrController::class, 'index'])->name('cortex.index');
|
|
Route::get('/cortex/data', [App\Http\Controllers\CortexXdrController::class, 'getData'])->name('cortex.data');
|
|
});
|
|
|
|
// Admin Approval Routes (Example)
|
|
Route::middleware(['auth', 'active', 'admin'])->prefix('admin')->name('admin.')->group(function () {
|
|
Route::get('/users', function () {
|
|
// List pending users
|
|
})->name('users.index');
|
|
|
|
// Admin Municipalities
|
|
Route::post('/municipalities/{municipality}/toggle', [\App\Http\Controllers\Admin\MunicipalityController::class, 'toggle'])->name('municipalities.toggle');
|
|
Route::resource('municipalities', \App\Http\Controllers\Admin\MunicipalityController::class);
|
|
|
|
// Admin License Levels
|
|
Route::get('/license-levels', [\App\Http\Controllers\Admin\LicenseLevelController::class, 'index'])->name('license_levels.index');
|
|
Route::post('/license-levels', [\App\Http\Controllers\Admin\LicenseLevelController::class, 'store'])->name('license_levels.store');
|
|
Route::post('/license-levels/{licenseLevel}/toggle', [\App\Http\Controllers\Admin\LicenseLevelController::class, 'toggle'])->name('license_levels.toggle');
|
|
Route::delete('/license-levels/{licenseLevel}', [\App\Http\Controllers\Admin\LicenseLevelController::class, 'destroy'])->name('license_levels.destroy');
|
|
|
|
// Admin Links
|
|
Route::get('/links', [\App\Http\Controllers\Admin\LinkController::class, 'index'])->name('links.index');
|
|
Route::post('/links', [\App\Http\Controllers\Admin\LinkController::class, 'store'])->name('links.store');
|
|
Route::get('/links/{link}/edit', [\App\Http\Controllers\Admin\LinkController::class, 'edit'])->name('links.edit');
|
|
Route::put('/links/{link}', [\App\Http\Controllers\Admin\LinkController::class, 'update'])->name('links.update');
|
|
Route::post('/links/{link}/toggle', [\App\Http\Controllers\Admin\LinkController::class, 'toggle'])->name('links.toggle');
|
|
Route::delete('/links/{link}', [\App\Http\Controllers\Admin\LinkController::class, 'destroy'])->name('links.destroy');
|
|
});
|