user(); if ($user->role == 'admin') { // Jika pengguna adalah admin, hitung total berdasarkan tindakan_id $laporan = Pelaporan::with('tindakan','user')->get(); } elseif ($user->role == 'user') { // Jika pengguna adalah pengguna biasa, hitung riwayat pelaporan milik pengguna tersebut $laporan = Pelaporan::where('user_id', $user->id)->get(); // Menghitung total riwayat pelaporan yang dimiliki oleh pengguna $count = $laporan->count(); } $informasis = Informasi::query(); if ($request->has('search')) { $informasis->where('kategori', 'LIKE', '%' . $request->search . '%'); } $informasis = $informasis->get(); return view('admin.informasi.index', compact('laporan', 'informasis')); } public function adminCreate() { $laporan = Pelaporan::with('tindakan','user')->get(); return view('admin.informasi.create',compact('laporan')); } public function adminStore(Request $request) { $request->validate([ 'judul' => 'required', 'kategori' => 'required', 'foto' => 'nullable|image|mimes:jpeg,png,jpg,gif,pdf', ],[ 'judul.Required'=>'Judul Wajib Diisi', 'kategori.Required'=>'Kategori Wajib Diisi', 'foto.nullable'=>'Foto Tidak Boleh Kosong', 'foto.image'=>'Foto Harus Berupa Image ', 'foto.mimes'=>'Foto Harus JPEG,PNG,JPG,GIF,PDF', ]); $informasi = new Informasi(); $informasi->judul = $request->input('judul'); $informasi->kategori = $request->input('kategori'); if ($request->hasFile('foto')) { $fotos = time().'.'.$request->foto->extension(); $request->foto->move(public_path('foto'), $fotos); $informasi->foto = $fotos; } $informasi->save(); return redirect()->route('informasi.adminIndex')->with('success', 'Informasi berhasil disimpan.'); } public function adminEdit($id) { $laporan = Pelaporan::with('tindakan','user')->get(); $informasis = Informasi::find($id); return view('admin.informasi.update', compact('informasis', 'laporan')); } public function adminUpdate(Request $request, $id) { $request->validate([ 'judul' => 'required', 'kategori' => 'required', 'foto' => 'nullable|image|mimes:jpeg,png,jpg,gif,pdf', ],[ 'judul.Required'=>'Judul Wajib Diisi', 'kategori.Required'=>'Kategori Wajib Diisi', 'foto.nullable'=>'Foto Tidak Boleh Kosong', 'foto.image'=>'Foto Harus Berupa Image ', 'foto.mimes'=>'Foto Harus JPEG,PNG,JPG,GIF,PDF', ]); $informasis = Informasi::find($id); if (!$informasis) { return redirect()->route('informasi.adminIndex')->with('error', 'Informasi tidak ditemukan.'); } $informasis->update($request->all()); if ($request->hasFile('foto')) { $fotoPath = $request->file('foto')->store('uploads'); $informasis->foto = $fotoPath; $informasis->save(); } return redirect()->route('informasi.adminIndex')->with('success', 'Informasi berhasil diperbarui.'); } public function adminDestroy($id) { $informasis = Informasi::find($id); if ($informasis) { $informasis->delete(); return redirect()->route('informasi.adminIndex')->with('success', 'Informasi berhasil dihapus.'); } else { return redirect()->route('informasi.adminIndex')->with('error', 'Informasi tidak ditemukan.'); } } public function userIndex(Request $request) { $user = $request->user(); if ($user->role == 'admin') { // Jika pengguna adalah admin, hitung total berdasarkan tindakan_id $laporan = Pelaporan::with('tindakan','user')->get(); } elseif ($user->role == 'user') { // Jika pengguna adalah pengguna biasa, hitung riwayat pelaporan milik pengguna tersebut $laporan = Pelaporan::where('user_id', $user->id)->get(); // Menghitung total riwayat pelaporan yang dimiliki oleh pengguna $count = $laporan->count(); } // Menggunakan kueri baru untuk mengambil data dari model Informasi $informasis = Informasi::query(); if ($request->has('search')) { $informasis->where('kategori', 'LIKE', '%' . $request->search . '%'); } // Mengambil hasil kueri dari model Informasi $informasis = $informasis->get(); return view('users.informasi.index', compact('laporan', 'informasis')); } public function userShow(Request $request, $id) { $user = $request->user(); if ($user->role == 'admin') { // Jika pengguna adalah admin, hitung total berdasarkan tindakan_id $laporan = Pelaporan::with('tindakan', 'user')->get(); } elseif ($user->role == 'user') { // Jika pengguna adalah pengguna biasa, hitung riwayat pelaporan milik pengguna tersebut $laporan = Pelaporan::where('user_id', $user->id)->get(); // Menghitung total riwayat pelaporan yang dimiliki oleh pengguna $count = $laporan->count(); } // Menggunakan kueri baru untuk mengambil data dari model Informasi berdasarkan ID $informasis = Informasi::findOrFail($id); return view('users.informasi.show', compact('laporan', 'informasis')); } }