<?php

namespace App\Http\Controllers;

use App\BrandModel;
use App\Http\Resources\BrandModelResource;
use App\Http\Resources\TroubleResource;
use App\Trouble;
use Illuminate\Http\Request;
use Illuminate\Support\Arr;
use App\Http\Resources\BrandResource;
use App\Brand;

class BrandController extends Controller
{
    const ITEM_PER_PAGE = 50;

    public function index(Request $request)
    {
        $params = $request->all();
        $limit = Arr::get($params, 'limit', static::ITEM_PER_PAGE);
        $list = Brand::select('id', 'name', 'slug')->isPublished();

        return BrandResource::collection($list->paginate($limit));
    }

    public function modelList(Request $request) {
        $params = $request->all();
        $limit = Arr::get($params, 'limit', static::ITEM_PER_PAGE);
        $list = BrandModel::select('id', 'brand_id', 'name', 'description')->isPublished()->orderBy('name');

        return BrandModelResource::collection($list->paginate($limit));
    }

    public function troubleList(Request $request) {
        $params = $request->all();
        $limit = Arr::get($params, 'limit', static::ITEM_PER_PAGE);
        $list = Trouble::select('id', 'name', 'description')->isPublished()->orderBy('id');

        return TroubleResource::collection($list->paginate($limit));
    }


}
