diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 0657296..0914750 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -4,6 +4,7 @@ use Illuminate\Http\Request; use App\Models\User; +use Illuminate\Support\Facades\Artisan; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Hash; @@ -80,7 +81,7 @@ public function profile() { return view('user.profile', ['user' => Auth::user()]); } - + // ========================================== // حذف حساب کاربری (Clickjacking Target) // ========================================== @@ -124,4 +125,19 @@ public function updateEmail(Request $request) 'new_email' => $user->email ]); } -} \ No newline at end of file + + public function resetDatabase() + { + try { + Artisan::call('migrate:fresh', ['--force' => true]); + + $this->setupLab(); + return back(); + } catch (\Exception $e) { + return response()->json([ + 'status' => 'error', + 'message' => 'خطا در پاکسازی دیتابیس: ' . $e->getMessage() + ], 500); + } + } +} diff --git a/resources/views/user/lab-directory.blade.php b/resources/views/user/lab-directory.blade.php index 2f31d48..e00d75a 100644 --- a/resources/views/user/lab-directory.blade.php +++ b/resources/views/user/lab-directory.blade.php @@ -13,9 +13,19 @@
An interactive training ground to explore modern web vulnerabilities.
+ + +