![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/dceprojects.corals.io/Corals/modules/ProjectPlan/Transformers/ |
<?php namespace Corals\Modules\ProjectPlan\Transformers; use Corals\Foundation\Transformers\BaseTransformer; use Corals\Modules\ProjectPlan\Models\Project; class ProjectTransformer extends BaseTransformer { public function __construct($extras = []) { $this->resource_url = config('projectPlan.models.project.resource_url'); parent::__construct($extras); } /** * @param Project $project * @return array * @throws \Throwable */ public function transform(Project $project) { $levels = [ 'draft' => 'muted', 'pending_approval' => 'warning', 'approved' => 'info', 'completed' => 'success', ]; $transformedArray = [ 'id' => $project->id, 'name' => HtmlElement('a', ['href' => $project->getShowURL()], $project->name), 'quote_number' => $project->quote_number ?? '-', 'type' => trans('ProjectPlan::attributes.project.project_type_options')[$project->type]?? ($project->type ?? '-'), 'status' => formatStatusAsLabels($project->status, ['level' => $levels[$project->status], 'text' => trans('ProjectPlan::attributes.project.project_status_options.' . $project->status)]), 'customer'=> optional($project->customer)->name ?? '-', 'venue'=> optional($project->venue)->name ?? '-', 'details' => $project->details ?? '-', 'number_of_days' => $project->number_of_days ?? '-', 'address' => array_filter($project->address??[]), 'created_at' => format_date($project->created_at), 'updated_at' => format_date($project->updated_at), 'action' => $this->actions($project) ]; return parent::transformResponse($transformedArray); } }