setConnection($connection); $this->setTable(config('admin.database.users_table')); parent::__construct($attributes); } /** * Get avatar attribute. * * @return mixed|string */ public function getAvatar() { $avatar = $this->avatar; if ($avatar) { if (! URL::isValidUrl($avatar)) { $avatar = Storage::disk(config('admin.upload.disk'))->url($avatar); } return $avatar; } return admin_asset(config('admin.default_avatar') ?: '@admin/images/default-avatar.jpg'); } /** * A user has and belongs to many roles. * * @return BelongsToMany */ public function roles(): BelongsToMany { $pivotTable = config('admin.database.role_users_table'); $relatedModel = config('admin.database.roles_model'); return $this->belongsToMany($relatedModel, $pivotTable, 'user_id', 'role_id'); } }