has('admin_id')) { return redirect('/adminlogin')->with('error', 'Please login first!'); } $courses = DB::table('courses')->orderBy('id', 'desc')->get(); return view('admin.adminmycourses', compact('courses')); } // 2. අලුත් Course එකක් එකතු කිරීම (Create) public function store(Request $request) { $request->validate([ 'title' => 'required|string|max:255', 'course_code' => 'required|string|max:50', 'image' => 'nullable|image|mimes:jpeg,png,jpg,gif,webp|max:2048', 'duration' => 'required|string', 'level' => 'required|string', 'author' => 'nullable|string', 'desc' => 'nullable|string', 'status' => 'required|string', ]); $imagePath = null; if ($request->hasFile('image')) { $imagePath = $request->file('image')->store('courses', 'public'); } DB::table('courses')->insert([ 'title' => $request->title, 'course_code' => $request->course_code, 'image' => $imagePath, 'duration' => $request->duration, 'level' => $request->level, 'author' => $request->author ?? 'Admin', 'desc' => $request->desc, 'student' => $request->student ?? 0, 'rating' => $request->rating ?? 0.0, 'badge' => $request->badge, 'trending' => $request->has('trending') ? 1 : 0, 'status' => $request->status, 'created_at' => now(), 'updated_at' => now(), ]); return redirect()->back()->with('success', 'Course added successfully!'); } // 3. Course එක Update කිරීම (Update) public function update(Request $request, $id) { $request->validate([ 'title' => 'required|string|max:255', 'course_code' => 'required|string|max:50', 'image' => 'nullable|image|mimes:jpeg,png,jpg,gif,webp|max:2048', 'duration' => 'required|string', 'level' => 'required|string', 'status' => 'required|string', ]); $course = DB::table('courses')->where('id', $id)->first(); if (!$course) { return redirect()->back()->with('error', 'Course not found!'); } $imagePath = $course->image; if ($request->hasFile('image')) { if ($course->image && Storage::disk('public')->exists($course->image)) { Storage::disk('public')->delete($course->image); } $imagePath = $request->file('image')->store('courses', 'public'); } DB::table('courses')->where('id', $id)->update([ 'title' => $request->title, 'course_code' => $request->course_code, 'image' => $imagePath, 'duration' => $request->duration, 'level' => $request->level, 'author' => $request->author, 'desc' => $request->desc, 'badge' => $request->badge, 'trending' => $request->has('trending') ? 1 : 0, 'status' => $request->status, 'updated_at' => now(), ]); return redirect()->back()->with('success', 'Course updated successfully!'); } // 4. Course එක Delete කිරීම (Delete) public function destroy($id) { $course = DB::table('courses')->where('id', $id)->first(); if ($course) { if ($course->image && Storage::disk('public')->exists($course->image)) { Storage::disk('public')->delete($course->image); } DB::table('courses')->where('id', $id)->delete(); return redirect()->back()->with('success', 'Course deleted successfully!'); } return redirect()->back()->with('error', 'Course not found!'); } }