with('error', 'Please login first!'); } $feedbacks = DB::table('feedback') ->where('student_id', $studentLogId) ->orderBy('created_at', 'desc') ->get(); return view('Feedback&Complain', compact('feedbacks')); } public function store(Request $request) { $studentLogId = session('student_log_id') ?? session('student_id'); if (!$studentLogId) { return redirect('/')->with('error', 'Please login first to submit!'); } $isComplaint = $request->has('is_complaint') && $request->is_complaint == "1"; if ($isComplaint) { $request->validate([ 'complaint_category' => 'required', 'complaint_title' => 'required|string|max:255', 'complaint_details' => 'required|string', ]); $type = 'Complaint - ' . $request->complaint_category; $subject = $request->complaint_title; $text = $request->complaint_details; } else { $request->validate([ 'feedback_type' => 'required', 'subject' => 'required|string|max:255', 'feedback_text' => 'required|string', ]); $type = 'Feedback - ' . $request->feedback_type; $subject = $request->subject; $text = $request->feedback_text; } DB::table('feedback')->insert([ 'student_id' => $studentLogId, 'feedback_type' => $type, 'subject' => $subject, 'feedback_text' => $text, 'status' => 'Pending', 'created_at' => now(), 'updated_at' => now(), ]); return redirect()->back()->with('success', ($isComplaint ? 'Complaint' : 'Feedback') . ' submitted successfully!'); } }