%PDF- %PDF-
Direktori : /var/www/html/shaban/duassis/api/app/Transformers/ |
Current File : //var/www/html/shaban/duassis/api/app/Transformers/UserTransformer.php |
<?php namespace App\Transformers; use App\Models\User; use App\Models\Tag; class UserTransformer extends BaseTransformer { protected $defaultIncludes = [ 'profile', ]; protected $availableIncludes = [ 'roles', 'address', 'categories', 'tags' ]; public function includeRoles(User $user) { return $this->collection($user->roles, new RoleTransformer(), 'roles'); } public function includeProfile(User $user) { if ($profile = $user->profile) { return $this->item($profile, new ProfileTransformer(), 'profile'); } return null; } public function includeAddress(User $user) { if ($address = $user->address) { return $this->item($address, new AddressTransformer(), 'address'); } return null; } public function includeCategories(User $user) { if ($categories = $user->categories) { return $this->collection($categories, new CategoryTransformer(), 'categories'); } return null; } public function includeTags(User $user) { if ($tags = $user->tags) { return $this->collection($tags, new TagTransformer(), 'tags'); } return null; } /** * @param User $user * * @return array */ public function transform(User $user) { return [ 'id' => $user->id, 'display_name' => $user->display_name, 'email' => $user->email, 'is_enabled' => $user->is_enabled, 'is_confirmed' => $user->is_confirmed, 'can_use_account' => $user->canUseAccount(), 'avatar' => $user->getAvatar(), ]; } }