env('LUPMISAPIKEY')]; $result = ApiCalls::CurlPost(json_encode($data), $users_url); $users_arr = json_decode($result, true); if ($users_arr['success'] == false) { return redirect->back(); } $regions_url = "user_mgt/get_all_regions.php"; $data = ['api_token' => env('LUPMISAPIKEY')]; $result = ApiCalls::CurlPost(json_encode($data), $regions_url); $regions_arr = json_decode($result, true); if ($regions_arr['success'] == false) { return redirect->back(); } // 2. Define pagination parameters $perPage = 15; $search = request()->input('search'); if ($search) { $filteredData = collect($users_arr['data'])->filter(function ($item) use ($search) { // Adjust fields to search in (e.g., 'title', 'category') return str_contains(strtolower($item['full_name']), strtolower($search)) || str_contains(strtolower($item['email']), strtolower($search)) || str_contains(strtolower($item['username']), strtolower($search)) || str_contains(strtolower($item['phone']), strtolower($search)) || str_contains(strtolower($item['allowed_apps']), strtolower($search)) || str_contains(strtolower($item['ua_position']), strtolower($search)) || str_contains(strtolower($item['phone']), strtolower($search)); })->values()->all(); // Reset array keys } else { $filteredData = $users_arr['data']; } $currentPage = LengthAwarePaginator::resolveCurrentPage() ?: 1; $offset = ($currentPage - 1) * $perPage; // 3. Slice the array to get the items for the current page $currentPageItems = array_slice($filteredData, $offset, $perPage); // 4. Create the LengthAwarePaginator instance $paginatedItems = new LengthAwarePaginator( $currentPageItems, // Items for the current page count($filteredData), // Total number of items $perPage, // Items per page $currentPage, // Current page number ['path' => request()->url(), 'query' => request()->query()] // Options to preserve query strings and path ); $user_type_arr = [ 'district_user' => 'District User', 'regional_user' => 'Regional User', 'national_user' => 'National User' ]; $data = [ 'page_title' => 'User Admin', 'users_arr' => $users_arr['data'], 'regions_arr' => $regions_arr['data'], 'user_type_arr' => $user_type_arr, 'items' => $paginatedItems ]; // dump($data); // 5. Pass the paginator instance to your view return view('admin.paginated', $data); // return view('admin.home', $data); } public function indexOld(){ $users_url = "user_mgt/get_all_users.php"; $data = ['api_token' => env('LUPMISAPIKEY')]; $result = ApiCalls::CurlPost(json_encode($data), $users_url); $users_arr = json_decode($result, true); if ($users_arr['success'] == false) { return redirect->back(); } $regions_url = "user_mgt/get_all_regions.php"; $data = ['api_token' => env('LUPMISAPIKEY')]; $result = ApiCalls::CurlPost(json_encode($data), $regions_url); $regions_arr = json_decode($result, true); if ($regions_arr['success'] == false) { return redirect->back(); } $user_type_arr = [ 'district_user' => 'District User', 'regional_user' => 'Regional User', 'national_user' => 'National User' ]; $data = [ 'page_title' => 'User Admin', 'users_arr' => $users_arr['data'], 'regions_arr' => $regions_arr['data'], 'user_type_arr' => $user_type_arr ]; return view('admin.home', $data); } public function districtparams(){ $url = "user_mgt/get_district_parameters.php"; $data = json_encode([ 'district_id' => 171, 'api_token' => env('LUPMISAPIKEY') ]); $result = ApiCalls::CurlPost($data, $url); $result = json_decode($result, true); // dd($result); $data = [ 'page_title' => "Page Under Development" ]; return view('common.notready', $data); } public function luspaparams(){ $data = [ 'page_title' => "Page Under Development" ]; return view('common.notready', $data); } public function districts($reqion_id){ // return response()->json(['request' => $reqion_id]); $url = "user_mgt/get_district_by_region_id.php"; $data = json_encode([ 'region_id' => $reqion_id, 'api_token' => env('LUPMISAPIKEY') ]); $result = ApiCalls::CurlPost($data, $url); $results = json_decode($result, true); $result = ['code' => 1, 'districts' => $results['data']]; if (request()->expectsJson()) { return response()->json($result); } $data = [ 'page_title' => 'Not Ready' ]; return view('common.notready', $data); } public function reports(){ $data = [ 'page_title' => "Page Under Development" ]; return view('common.notready', $data); } }