<?php

namespace App\Http\Resources;

use Illuminate\Http\Resources\Json\ResourceCollection;

class ChronologiesCollection extends ResourceCollection
{
    private $isDetail = false;
    
    public function __construct($resource, $isDetail = false)
    {
        parent::__construct($resource);

        $this->resource = $this->collectResource($resource);
        $this->isDetail = $isDetail;
    }

    /**
     * Transform the resource collection into an array.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    public function toArray($request)
    {
        $this->collection->transform(function ($chronology) {
            if (!is_null($chronology->date_start) && !is_null($chronology->date_end)) {
                return (new Chronologies($chronology, $this->isDetail));
            } else {
                return null;
            }
        });
        return parent::toArray($request);
    }
}
