
use Illuminate\Support\Facades\Route; use App\Http\Controllers\Auth\LoginController; use App\Http\Controllers\Auth\RegisterController; use App\Http\Controllers\Auth\VerificationController; use App\Http\Controllers\Auth\ForgotPasswordController; use App\Http\Controllers\Auth\ResetPasswordController; use App\Http\Controllers\Auth\SocialiteController; use App\Http\Controllers\Auth\ReferralController; Route::group([ 'middleware' => ['check_mobile_app', 'share', 'check_maintenance', 'check_restriction'] ], function () { // ---------------------- // Login // ---------------------- Route::get('/login', [LoginController::class, 'showLoginForm'])->name('login.form'); Route::post('/login', [LoginController::class, 'login'])->name('login.submit'); // Logout should be POST for security Route::post('/logout', [LoginController::class, 'logout'])->name('logout'); // ---------------------- // Registration // ---------------------- Route::get('/signup', [RegisterController::class, 'showRegistrationForm'])->name('register.form'); Route::post('/signup', [RegisterController::class, 'register'])->name('register.submit'); Route::post('/signup/form-fields', [RegisterController::class, 'getFormFieldsByUserType'])->name('register.fields'); // ---------------------- // Verification // ---------------------- Route::get('/verification', [VerificationController::class, 'index'])->name('verification.form'); Route::post('/verification', [VerificationController::class, 'confirmCode'])->name('verification.confirm'); Route::get('/verification/resend', [VerificationController::class, 'resendCode'])->name('verification.resend'); // ---------------------- // Password Reset // ---------------------- Route::get('/forget-password', [ForgotPasswordController::class, 'showLinkRequestForm'])->name('password.request'); Route::post('/forget-password', [ForgotPasswordController::class, 'forgot'])->name('password.email'); Route::get('/reset-password/{token}', [ResetPasswordController::class, 'showResetForm'])->name('password.reset.form'); Route::post('/reset-password', [ResetPasswordController::class, 'updatePassword'])->name('password.update'); // ---------------------- // Social Login // ---------------------- Route::get('/google', [SocialiteController::class, 'redirectToGoogle'])->name('social.google.redirect'); Route::get('/google/callback', [SocialiteController::class, 'handleGoogleCallback'])->name('social.google.callback'); Route::get('/facebook/redirect', [SocialiteController::class, 'redirectToFacebook'])->name('social.facebook.redirect'); Route::get('/facebook/callback', [SocialiteController::class, 'handleFacebookCallback'])->name('social.facebook.callback'); // ---------------------- // Referral // ---------------------- Route::get('/reff/{code}', [ReferralController::class, 'referral'])->name('referral'); });