<?php

namespace App\Http\Controllers\Frontend;

use App\Facades\OfficesService;
use App\Http\Controllers\Controller;
use App\Http\Requests\OfficeRequest;
use App\Http\Resources\Offices\OfficeResource;
use Illuminate\Support\Facades\Auth;

class OfficeController extends Controller
{
    public function getOffices()
    {
        $user = Auth::user();
        $offices = OfficesService::getOffices($user);

        return OfficeResource::collection($offices);
    }

    public function createOffice(OfficeRequest $request)
    {
        $data = $request->validated();
        $user = Auth::user();

        $office = OfficesService::createOffice($user, $data);

        return new OfficeResource($office);
    }

    public function updateOffice(OfficeRequest $request, $officeId)
    {
        $data = $request->validated();
        $user = Auth::user();

        $office = OfficesService::updateOffice($user, $data, $officeId);

        return new OfficeResource($office);
    }
    public function deleteOffice($officeId)
    {
        $user = Auth::user();

        $office = OfficesService::deleteOffice($user, $officeId);

        return response()->json(['success' => $office != null]);
    }
}
