51 lines
1.9 KiB
PHP
51 lines
1.9 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Resources;
|
|
|
|
use Illuminate\Http\Resources\Json\JsonResource;
|
|
|
|
class AdminCategoryWithMenusResource extends JsonResource
|
|
{
|
|
public function toArray($request)
|
|
{
|
|
$title = json_decode($this->getRawOriginal('title'), true);
|
|
$description = json_decode($this->getRawOriginal('description'), true);
|
|
return [
|
|
'title' => [
|
|
'en' => $title['en'] ?? '',
|
|
'it' => $title['it'] ?? '',
|
|
],
|
|
'description' => [
|
|
'en' => $description['en'] ?? '',
|
|
'it' => $description['it'] ?? '',
|
|
],
|
|
'sortingIndex' => $this->sortingIndex,
|
|
'isActive' => $this->isActive,
|
|
'thumbnail' => $this->thumbnail,
|
|
'created_at' => $this->created_at,
|
|
'updated_at' => $this->updated_at,
|
|
'menus' => $this->menus->map(function ($menu) {
|
|
$menuTitle = json_decode($menu->getRawOriginal('title'), true);
|
|
$menuDescription = json_decode($menu->getRawOriginal('description'), true);
|
|
return [
|
|
'id' => $menu->id, // Removed as per request
|
|
'menu_id' => $menu->menu_id,
|
|
'title' => [
|
|
'en' => $menuTitle['en'] ?? '',
|
|
'it' => $menuTitle['it'] ?? '',
|
|
],
|
|
'description' => [
|
|
'en' => $menuDescription['en'] ?? '',
|
|
'it' => $menuDescription['it'] ?? '',
|
|
],
|
|
'price' => $menu->price,
|
|
'image' => $menu->image,
|
|
'isActive' => $menu->isActive,
|
|
//'category_id' => $menu->category_id, // Removed as per request
|
|
'created_at' => $menu->created_at,
|
|
'updated_at' => $menu->updated_at,
|
|
];
|
|
})
|
|
];
|
|
}
|
|
}
|