%PDF- %PDF-
Direktori : /home/forge/api-takeaseat.eco-n-tech.co.uk/app/Http/Resources/ |
Current File : //home/forge/api-takeaseat.eco-n-tech.co.uk/app/Http/Resources/TherapistResource.php |
<?php namespace App\Http\Resources; use Illuminate\Support\Str; use App\Helpers\MoneyHelper; use App\Http\Resources\TherapistUserResource; use App\Http\Resources\SessionResource; use App\Http\Resources\SpecialismResource; use App\Http\Resources\ProductResource; use App\Http\Resources\TagResource; use App\Http\Resources\QuestionResource; use App\Http\Resources\LanguageResource; use App\Http\Resources\Account\UserAddressResource; use Illuminate\Http\Resources\Json\JsonResource; class TherapistResource extends JsonResource { /** * Transform the resource into an array. * * @param \Illuminate\Http\Request $request * @return array */ public function toArray($request) { return [ 'id' => $this->id, 'slug' => $this->slug, 'colour' => $this->colour, 'location' => new UserAddressResource($this->user->location), 'description' => $this->description, 'short_description' => Str::limit(strip_tags($this->description), 200), 'sessions' => SessionResource::collection($this->sessions), 'main_specialism' => new SpecialismResource($this->whenLoaded('main_specialism')), 'specialisms' => SpecialismResource::collection($this->specialisms->unique('name')), 'tags' => TagResource::collection($this->tags), 'price_from' => money(MoneyHelper::stripeFormat($this->user->products->min('price'))), 'products' => ProductResource::collection($this->user->products), 'languages' => LanguageResource::collection($this->whenLoaded('languages')), 'questions_one' => QuestionResource::collection($this->questions_one), 'questions_two' => QuestionResource::collection($this->questions_two), 'user' => new TherapistUserResource($this->user), 'image_one' => [ 'url' => $this->image_one_url ? url('/storage/'.$this->image_one_url) : null, ], 'image_two' => [ 'url' => $this->image_two_url ? url('/storage/'.$this->image_two_url) : null ], 'is_booking_enabled' => count($this->availability) > 0 && $this->user->stripe_connect_id && count($this->user->products) > 0 ? true : false ]; } }