diff --git a/app/Modules/Admin/Views/users/edit.blade.php b/app/Modules/Admin/Views/users/edit.blade.php
index 38f9a83..812b36f 100644
--- a/app/Modules/Admin/Views/users/edit.blade.php
+++ b/app/Modules/Admin/Views/users/edit.blade.php
@@ -51,14 +51,14 @@
@if($userRole->role->id == $roles::COMPANY_ADMIN)
@foreach($companyAdmins as $admin)
- {{ $admin->company->name }}
+ {{ $admin->company?->name }}
@endforeach
@endif
@if($userRole->role->id == $roles::AGENT)
@foreach($companyAgents as $agent)
- {{ $agent->company->name }}
+ {{ $agent->company?->name }}
@endforeach
@endif
diff --git a/app/Modules/User/Models/UserRole.php b/app/Modules/User/Models/UserRole.php
index 4ad17ad..1798327 100644
--- a/app/Modules/User/Models/UserRole.php
+++ b/app/Modules/User/Models/UserRole.php
@@ -7,6 +7,10 @@
use Modules\User\Models\User;
use Modules\User\Models\Role;
+use Modules\Main\Models\Company\CompanyAdmin;
+use Modules\Main\Models\Agent\Agent;
+use Modules\CityManager\Models\CityManager;
+
class UserRole extends Model
{
use HasFactory;
@@ -24,4 +28,23 @@ public static function create(array $attributes = [])
{
return parent::updateOrCreate($attributes);
}
+
+ protected static function booted()
+ {
+ static::deleted(function (UserRole $userRole)
+ {
+ $userId = $userRole->user_id;
+ switch ($userRole->role_id) {
+ case Role::AGENT :
+ Agent::where('user_id', $userId)->delete();
+ break;
+ case Role::COMPANY_ADMIN :
+ CompanyAdmin::where('user_id', $userId)->delete();
+ break;
+ case Role::CITY_MANAGER :
+ CityManager::where('user_id', $userId)->delete();
+ break;
+ }
+ });
+ }
}