Domain: amberpublishers.in
Server Adress: 86.38.243.169
privdayz.com
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\NewsController;
use App\Http\Controllers\SearchController;
use App\Http\Controllers\CategoryController;
use App\Http\Controllers\FrontendController;
use App\Http\Controllers\AuthController;
use App\Http\Controllers\AdminController;
/*
|--------------------------------------------------------------------------
| 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!
|
*/
// frontend route group
Route::controller(FrontendController::class)->prefix('/')->name('frontend.')->group(function (){
Route::get('/', 'index')->name('index');
Route::post('updateLocation', 'updateLocation')->name('updateLocation');
Route::get('about-us', 'about')->name('about');
});
// news route group
Route::controller(NewsController::class)->prefix('news')->name('news.')->group(function (){
// show all news
Route::get('/', 'index')->name('index');
// show particular news
Route::get('/{newsslug}', 'show')->name('show');
});
// category route grup
Route::controller(CategoryController::class)->prefix('categories')->name('category.')->group(function (){
// show all categories
Route::get('/', 'index')->name('index');
// show all news in a particular category
Route::get('/{categoryslug}', 'show')->name('show');
});
// Search Route
Route::get('/search', [SearchController::class, 'index'])->name('search.index');
// ================== Auth Route group ==================
Route::controller(AuthController::class)->prefix('auth')->group(function () {
// show login form
Route::get('/login', 'index')->name('login')->middleware('guest');
// handle login form submission
Route::post('/login', 'authenticate')->name('handle-login')->middleware('guest');
// show login otp verification form
Route::get('/otp-verification', 'showLoginOtpVerification')->name('login-otp-verification');
// resend OTP
Route::post('/resend-otp', 'resendOtp')->name('resend-otp');
// handle OTP verification form submission
Route::post('/verify-otp', 'verifyOtp')->name('verify-otp');
// clear OTP
Route::get('/clear-otp', 'clearOtp')->name('clear-otp');
// handle logout
Route::get('/logout', 'logout')->name('logout')->middleware('auth');
// show forgot password form
Route::get('/forgot-password', 'showForgotPassword')->name('forgot-password')->middleware('guest');
});
// ================== Admin Route Group ==================
Route::controller(AdminController::class)->prefix('admin')->middleware('auth')->group(function () {
Route::get('/', 'index')->name('admin');
// admin dashboard
Route::get('/dashboard', 'index')->name('dashboard');
// Admin profile
Route::get('/profile', 'profile')->name('profile');
// ------------------ Admin Profile Routes ------------------
// handle password change
Route::post('/profile/change-password', 'updateAdminPassword')->name('change-password');
// handle profile update
Route::post('/profile/update', 'updateAdminDetails')->name('update-profile');
// Fetch all categories JSON
Route::get('/fetch-categories', 'fetchCategories')->name('fetch-categories');
// ------------------ Admin News Routes ------------------
Route::prefix('/news')->name('news.')->middleware('auth')->group(function () {
// show all news
Route::get('/', 'newsManage')->name('manage');
// show create news form
Route::get('/create', 'newsCreate')->name('create');
// handle create news form submission
Route::post('/create', 'newsStore')->name('store');
// show edit news form
Route::get('/{id}/edit', 'newsEdit')->name('edit');
// handle edit news form submission
Route::post('/{id}/edit', 'newsUpdate')->name('update');
// handle soft delete news
Route::delete('/{id}/delete', 'newsDestroy')->name('delete');
// handle restore news
Route::put('/{id}/restore', 'newsRestore')->name('restore');
// handle permanent delete news
Route::delete('/{id}/permanent-delete', 'newsPermanentDelete')->name('permanent-delete');
});
// ------------------ Admin Category Routes ------------------
Route::prefix('categories')->name('categories.')->middleware('auth')->group(function () {
// show all categories
Route::get('/', 'categoryManage')->name('manage');
// show create category form
Route::get('/create', 'createCategory')->name('create');
// handle create category form submission
Route::post('/create', 'storeCategory')->name('store');
// show edit category form
Route::get('/{id}/edit', 'editCategory')->name('edit');
// handle edit category form submission
Route::post('/{id}/edit', 'updateCategory')->name('update');
// handle soft delete category
Route::delete('/{id}/delete', 'destroyCategory')->name('delete');
// handle restore category
Route::put('/{id}/restore', 'restoreCategory')->name('restore');
// handle permanent delete category
Route::delete('/{id}/permanent-delete', 'permanentDelete')->name('permanent-delete');
});
});
// fallback route
Route::fallback(function () {
return response()->view('errors.404', [], 404);
});