ajax()) { $data = Classification::with(['subClassifications'])->get(); return DataTables::of($data) ->addIndexColumn() ->addColumn('status', function ($data) { if ($data->status == '0') { return 'Nonaktif'; }else{ return 'Aktif'; } }) ->addColumn('sub_classifications', function ($data) { $subClassificationCount = $data->subClassifications->count(); if($subClassificationCount > 0){ return $subClassificationCount. ' [Lihat]'; }else{ return $subClassificationCount; } }) ->addColumn('action', function ($data) { $showUrl = route('dashboard.classifications.show', ['id' => encrypt_id($data->id)]); $addSubClassificationUrl = route('dashboard.sub.classifications.create', ['classification' => $data->slug]); $editUrl = route('dashboard.classifications.edit', ['id' => encrypt_id($data->id)]); $deleteUrl = route('dashboard.classifications.destroy', ['id' => encrypt_id($data->id)]); $dropdown = '
'; return $dropdown; }) ->rawColumns(['sub_classifications', 'status', 'action']) ->make(true); } return response()->json(['error' => 'Unauthorized'], 401); } public function subClassification(Request $request){ if ($request->ajax()) { $classificationParam = $request->input('classification', null); if($classificationParam){ $classification = Classification::where('slug', '=', $classificationParam)->first(); $data = SubClassification::with(['classification'])->where('classification_id', '=', $classification->id)->get(); }else{ $data = SubClassification::with(['classification'])->get(); } return DataTables::of($data) ->addIndexColumn() ->addColumn('classification', function ($data) { return $data->classification->name; }) ->addColumn('status', function ($data) { if ($data->status == '0') { return 'Nonaktif'; }else{ return 'Aktif'; } }) ->addColumn('action', function ($data) { $showUrl = route('dashboard.sub.classifications.show', ['id' => encrypt_id($data->id)]); $editUrl = route('dashboard.sub.classifications.edit', ['id' => encrypt_id($data->id)]); $deleteUrl = route('dashboard.sub.classifications.destroy', ['id' => encrypt_id($data->id)]); $dropdown = ''; return $dropdown; }) ->rawColumns(['status', 'action']) ->make(true); } return response()->json(['error' => 'Unauthorized'], 401); } public function governmentAgency(Request $request){ if ($request->ajax()) { $data = GovernmentAgency::all(); return DataTables::of($data) ->addIndexColumn() ->addColumn('action', function ($data) { $showUrl = route('dashboard.government.agencies.show', ['id' => encrypt_id($data->id)]); $editUrl = route('dashboard.government.agencies.edit', ['id' => encrypt_id($data->id)]); $deleteUrl = route('dashboard.government.agencies.destroy', ['id' => encrypt_id($data->id)]); $dropdown = ''; return $dropdown; }) ->rawColumns(['action']) ->make(true); } return response()->json(['error' => 'Unauthorized'], 401); } public function news(Request $request){ if ($request->ajax()) { $data = News::all(); return DataTables::of($data) ->addIndexColumn() ->addColumn('title', function ($data) { return shorten_text($data->title, 50); }) ->addColumn('link', function ($data) { if ($data->link != null) { return ''.$data->link.''; }else{ return 'Tidak ada link'; } }) ->addColumn('category', function ($data) { if ($data->category == '0') { return 'Berita'; }else{ return 'Pengumuman'; } }) ->addColumn('action', function ($data) { $showUrl = route('dashboard.news.show', ['id' => encrypt_id($data->id)]); $editUrl = route('dashboard.news.edit', ['id' => encrypt_id($data->id)]); $deleteUrl = route('dashboard.news.destroy', ['id' => encrypt_id($data->id)]); $dropdown = ''; return $dropdown; }) ->rawColumns(['link', 'category', 'action']) ->make(true); } return response()->json(['error' => 'Unauthorized'], 401); } public function airingProofTheme(Request $request){ if ($request->ajax()) { $data = AiringProofTheme::all(); return DataTables::of($data) ->addIndexColumn() ->addColumn('action', function ($data) { $showUrl = route('dashboard.airing.proof.themes.show', ['id' => encrypt_id($data->id)]); $editUrl = route('dashboard.airing.proof.themes.edit', ['id' => encrypt_id($data->id)]); $deleteUrl = route('dashboard.airing.proof.themes.destroy', ['id' => encrypt_id($data->id)]); $dropdown = ''; return $dropdown; }) ->rawColumns(['action']) ->make(true); } return response()->json(['error' => 'Unauthorized'], 401); } }