AdminController.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Models\Application;
  4. use Illuminate\Http\Request;
  5. class AdminController extends Controller
  6. {
  7. public function index(Request $request) {
  8. $filterStatus = $request->input('status', 'all');
  9. $per_page = $request->input('per_page', '10');
  10. $query = Application::with('user', 'course')->orderBy('updated_at', 'desc');
  11. if ($filterStatus !== 'all') {
  12. $query->where('status', $filterStatus);
  13. }
  14. $applications = $query->paginate($per_page);
  15. return view('admin.index', compact('applications', 'filterStatus'));
  16. }
  17. public function updateStatus(Request $request, $id) {
  18. $request->validate([
  19. 'status' => ['required']
  20. ]);
  21. $application = Application::findOrFail($id);
  22. $oldStatus = $application->status;
  23. $application->status = $request->status;
  24. $application->save();
  25. return redirect()
  26. ->back()
  27. ->with('success', "Статус заявки '$id' изменен с '$oldStatus' на '$application->status'");
  28. }
  29. }