From 4dc9c160054f31b58b78c01b875bf46781675cfe Mon Sep 17 00:00:00 2001 From: mohanmd Date: Mon, 15 Jun 2026 18:01:09 +0530 Subject: [PATCH] employer page issue count --- .../Controllers/Admin/EmployerController.php | 32 ++++++++++++++++--- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/app/Http/Controllers/Admin/EmployerController.php b/app/Http/Controllers/Admin/EmployerController.php index 162a0ee..be0d408 100644 --- a/app/Http/Controllers/Admin/EmployerController.php +++ b/app/Http/Controllers/Admin/EmployerController.php @@ -59,9 +59,33 @@ public function index(Request $request) $employers = $query->paginate(10)->withQueryString(); - // Transform results to format status correctly from sponsor + // Transform results to format status correctly from sponsor and prevent nulls/missing fields $employers->getCollection()->transform(function($emp) { $emp->status = $emp->sponsor ? $emp->sponsor->status : 'active'; + + // Populate backward-compatible sponsor properties to prevent front-end crashes (e.g. charAt on full_name) + $emp->full_name = $emp->name ?? ($emp->sponsor ? $emp->sponsor->full_name : 'Employer'); + if (empty($emp->full_name)) { + $emp->full_name = 'Employer'; + } + $emp->mobile = $emp->sponsor ? $emp->sponsor->mobile : ($emp->employerProfile ? $emp->employerProfile->phone : ''); + if (empty($emp->mobile)) { + $emp->mobile = ''; + } + $emp->city = $emp->sponsor ? $emp->sponsor->city : ($emp->employerProfile ? $emp->employerProfile->country : 'Dubai'); + if (empty($emp->city)) { + $emp->city = 'Dubai'; + } + $emp->subscription_plan = $emp->sponsor ? $emp->sponsor->subscription_plan : ($emp->subscription_status ?? 'none'); + if (empty($emp->subscription_plan)) { + $emp->subscription_plan = 'none'; + } + $emp->subscription_status = $emp->sponsor ? $emp->sponsor->subscription_status : ($emp->subscription_status ?? 'none'); + if (empty($emp->subscription_status)) { + $emp->subscription_status = 'none'; + } + $emp->is_verified = $emp->sponsor ? (bool)$emp->sponsor->is_verified : ($emp->employerProfile ? ($emp->employerProfile->verification_status === 'approved') : false); + return $emp; }); @@ -121,9 +145,9 @@ public function export(Request $request) $emp->id, $emp->name, $emp->email, - $emp->employerProfile->company_name ?? 'N/A', - $emp->employerProfile->phone ?? 'N/A', - $emp->employerProfile->country ?? 'N/A', + $emp->employerProfile ? ($emp->employerProfile->company_name ?? 'N/A') : 'N/A', + $emp->employerProfile ? ($emp->employerProfile->phone ?? 'N/A') : 'N/A', + $emp->employerProfile ? ($emp->employerProfile->country ?? 'N/A') : 'N/A', $emp->sponsor ? $emp->sponsor->status : 'active', $emp->subscription_status ?? 'none', $emp->created_at ? $emp->created_at->toDateTimeString() : 'N/A',