39 lines
1.8 KiB
PHP
39 lines
1.8 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\Admin\DashboardController;
|
|
use App\Http\Controllers\Web\HomeController;
|
|
use App\Http\Controllers\Web\JobController;
|
|
use App\Http\Controllers\Web\PageController;
|
|
use App\Http\Controllers\Web\SitemapController;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
// Homepage
|
|
Route::get('/', [HomeController::class, 'index'])->name('home');
|
|
|
|
// Static pages
|
|
Route::get('/about', [PageController::class, 'about'])->name('about');
|
|
Route::get('/contact', [PageController::class, 'contact'])->name('contact');
|
|
Route::get('/privacy', [PageController::class, 'privacy'])->name('privacy');
|
|
Route::get('/terms', [PageController::class, 'terms'])->name('terms');
|
|
|
|
// Job routes
|
|
Route::prefix('jobs')->group(function () {
|
|
Route::get('/', [JobController::class, 'index'])->name('jobs.index');
|
|
Route::get('/remote', [JobController::class, 'remote'])->name('jobs.remote');
|
|
Route::get('/category/{slug}', [JobController::class, 'category'])->name('jobs.category');
|
|
Route::get('/{job:slug}', [JobController::class, 'show'])->name('jobs.show');
|
|
});
|
|
|
|
// Sitemap routes
|
|
Route::get('/sitemap.xml', [SitemapController::class, 'index'])->name('sitemap');
|
|
Route::get('/sitemap-index.xml', [SitemapController::class, 'sitemapIndex'])->name('sitemap.index');
|
|
Route::get('/sitemap-main.xml', [SitemapController::class, 'mainSitemap'])->name('sitemap.main');
|
|
Route::get('/sitemap-jobs.xml', [SitemapController::class, 'jobsSitemap'])->name('sitemap.jobs');
|
|
|
|
// Admin routes (in production, protect these with authentication middleware)
|
|
Route::prefix('admin')->name('admin.')->group(function () {
|
|
Route::get('/dashboard', [DashboardController::class, 'index'])->name('dashboard');
|
|
Route::get('/logs/api', [DashboardController::class, 'apiLogs'])->name('logs.api');
|
|
Route::get('/logs/fetch', [DashboardController::class, 'fetchLogs'])->name('logs.fetch');
|
|
});
|