39 lines
1.2 KiB
PHP
39 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Transformers;
|
|
|
|
use App\Models\Questionnaire as Model;
|
|
use App\Models\User;
|
|
use App\Models\Category;
|
|
use League\Fractal\TransformerAbstract;
|
|
use App\Http\Resources\CategoryResource;
|
|
use App\Http\Resources\SectionResource;
|
|
use App\Http\Resources\UserResource;
|
|
|
|
class QuestionnaireTransformer extends TransformerAbstract
|
|
{
|
|
/**
|
|
* @param Model $model
|
|
* @return array
|
|
*/
|
|
public function transform(Model $model)
|
|
{
|
|
return [
|
|
'createdAt' => $model->created_at->toIso8601String(),
|
|
'updatedAt' => $model->updated_at->toIso8601String(),
|
|
'id' => $model->id,
|
|
'category' => new CategoryResource($model->category),
|
|
'title' => $model->title,
|
|
'description' => $model->description,
|
|
'releasedAt' => $model->released_at,
|
|
'closedAt' => $model->closed_at,
|
|
'reviewedAt' => $model->reviewed_at,
|
|
'sections' => SectionResource::collection($model->sections, ['key' => 'sections']),
|
|
'creator' => $model->creator,
|
|
'links' => [
|
|
'relatedTo' => route('questionnaires.index')
|
|
]
|
|
];
|
|
}
|
|
}
|