From 3b5962ee5bb5185db02d83d91da6cc74d23b92b9 Mon Sep 17 00:00:00 2001 From: Kwesi Banson Jnr Date: Wed, 11 Mar 2026 08:08:11 +0000 Subject: [PATCH] Fix: updated AdminController with pagination --- php_code/.env | 2 +- .../app/Http/Controllers/AdminController.php | 22 +++++++++++-- php_code/info.md | 12 ++++++- .../resources/views/admin/paginated.blade.php | 31 +++++++++++++++++-- .../resources/views/layouts/app.blade.php | 1 + .../resources/views/layouts/master.blade.php | 2 ++ php_code/routes/web.php | 1 + 7 files changed, 64 insertions(+), 7 deletions(-) diff --git a/php_code/.env b/php_code/.env index c58697d0..5195f955 100644 --- a/php_code/.env +++ b/php_code/.env @@ -1,5 +1,5 @@ APP_NAME=lupmisBackend -APP_ENV=production +APP_ENV=local APP_KEY=base64:pmEAeuW8clKrfKKjcMWylo68exoDO/Xr2hUhXvB7dS0= APP_DEBUG=true APP_URL=http://localhost:9031 diff --git a/php_code/app/Http/Controllers/AdminController.php b/php_code/app/Http/Controllers/AdminController.php index 2d535a17..043b3a0a 100644 --- a/php_code/app/Http/Controllers/AdminController.php +++ b/php_code/app/Http/Controllers/AdminController.php @@ -28,17 +28,33 @@ class AdminController extends Controller // 2. Define pagination parameters - $perPage = 10; + $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($users_arr['data'], $offset, $perPage); + $currentPageItems = array_slice($filteredData, $offset, $perPage); // 4. Create the LengthAwarePaginator instance $paginatedItems = new LengthAwarePaginator( $currentPageItems, // Items for the current page - count($users_arr['data']), // Total number of items + 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 diff --git a/php_code/info.md b/php_code/info.md index a9268c7c..d1778ac2 100644 --- a/php_code/info.md +++ b/php_code/info.md @@ -9,4 +9,14 @@ chmod -R 0777 bootstrap/
  • URL: https://lupmis4luspa.org
  • -sudo chmod -R 777 /path/to/folder_name \ No newline at end of file +sudo chmod -R 777 /path/to/folder_name + +use application instea +add permit fee to initial email +permit issued and signed +application approved pending +upload site inspection report +add measurements to the backend for works department + + +216.55.137.19 \ No newline at end of file diff --git a/php_code/resources/views/admin/paginated.blade.php b/php_code/resources/views/admin/paginated.blade.php index e857f085..de4d8b96 100644 --- a/php_code/resources/views/admin/paginated.blade.php +++ b/php_code/resources/views/admin/paginated.blade.php @@ -20,9 +20,30 @@

    Users

    + + + Add User
    +
    + +
    +
    +
    + + +
    +
    +
    +
    + +
    +
    @@ -60,10 +81,16 @@ - {{ $items->links() }}
    +
    + Showing {{ $items->currentPage() }} of {{ $items->lastPage() }} pages | {{ $items->total() }} records +
    +
    + {{ $items->links() }} +
    + diff --git a/php_code/resources/views/layouts/app.blade.php b/php_code/resources/views/layouts/app.blade.php index 2fcd2d83..6ec5be1d 100644 --- a/php_code/resources/views/layouts/app.blade.php +++ b/php_code/resources/views/layouts/app.blade.php @@ -20,6 +20,7 @@ + diff --git a/php_code/resources/views/layouts/master.blade.php b/php_code/resources/views/layouts/master.blade.php index bceebacd..5ca0023f 100644 --- a/php_code/resources/views/layouts/master.blade.php +++ b/php_code/resources/views/layouts/master.blade.php @@ -21,6 +21,8 @@ + + @yield('page-css')