diff --git a/app/Http/Middleware/ScopeBouncer.php b/app/Http/Middleware/ScopeBouncer.php index 7b413437..308bf384 100644 --- a/app/Http/Middleware/ScopeBouncer.php +++ b/app/Http/Middleware/ScopeBouncer.php @@ -32,11 +32,17 @@ class ScopeBouncer public function handle(Request $request, Closure $next): Response { $user = $request->user(); - $tenantId = $request->header('company') - ? $request->header('company') - : $user->companies()->first()->id; + $company = $request->header('company'); - $this->bouncer->scope()->to($tenantId); + if (! $company) { + $firstCompany = $user->companies()->first(); + if (! $firstCompany) { + return $next($request); + } + $company = $firstCompany->id; + } + + $this->bouncer->scope()->to($company); return $next($request); } diff --git a/app/Models/User.php b/app/Models/User.php index 12ec0b30..8a5b8220 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -92,10 +92,17 @@ class User extends Authenticatable implements HasMedia public function getFormattedCreatedAtAttribute($value) { - $company_id = (CompanySetting::where('company_id', request()->header('company'))->exists()) - ? request()->header('company') - : $this->companies()->first()->id; - $dateFormat = CompanySetting::getSetting('carbon_date_format', $company_id); + $companyId = request()->header('company'); + + if (! $companyId || ! CompanySetting::where('company_id', $companyId)->exists()) { + $firstCompany = $this->companies()->first(); + if (! $firstCompany) { + return Carbon::parse($this->created_at)->format('Y-m-d'); + } + $companyId = $firstCompany->id; + } + + $dateFormat = CompanySetting::getSetting('carbon_date_format', $companyId); return Carbon::parse($this->created_at)->format($dateFormat); }