<?php

namespace App\Http\Controllers\Api;

use App\Http\Controllers\Controller;
use App\Http\Resources\Areas;
use App\Http\Controllers\Traits\TaxonomyHelper;
use App\Models\Area;

class AreaController extends Controller
{
    use TaxonomyHelper;

    public function index()
    {

        $query = Area::full()
            ->select(
                'id',
                'language_id',
                'title',
                'website_objects.website_object_id',
                'website_objects.parent_id'
            )
            ->orderBy('website_objects.position', 'asc');

        $areas = $query->get();

        $parents = $this->_buildHierarchy($areas);

        // Loop through all parents.
        $parentsResponse = [];
        forEach ($parents as $key => $parent) {
            $area = new Areas($parent);
            $parentsResponse[] = $area;
        }

        return response()->json($parentsResponse);
    }
}
