@extends('layouts.admin.theme')
@section('title', env('APP_NAME') . ' :: ' . __('Unidades Organizacionais'))

@section('content')
    @include('errors.messageFlash')

    <div class="card shadow-sm">

        @php $headLine = "<i class='fa-solid fa-sitemap'></i> " . __('Unidades Organizacionais'); @endphp
        @include('components.buttons._headLineButtonsBackAdd', [
            'headLine'        => __($headLine),
            'routeBack'       => 'admin.dashboard',
            'routeBackParams' => [],
            'nameBack'        => __('Voltar'),
            'routeAdd'        => 'admin.unidadesOrganizacionais.create',
            'routeAddParams'  => request()->only(['q', 'structure_id', 'status', 'page']),
            'nameAdd'         => __('Nova unidade'),
            'permission'      => 'GERENCIADOR_DE_UNIDADES_ORGANIZACIONAIS',
        ])

        <div class="card-body">

            <form method="get" class="row g-2 mb-3">
                <div class="col-sm-12 col-md-5">
                    <label class="form-label">{{ __('Buscar') }}</label>
                    <input type="text"
                           class="form-control"
                           name="q"
                           value="{{ request('q') }}"
                           placeholder="{{ __('Nome ou sigla...') }}">
                </div>
                <div class="col-sm-12 col-md-4">
                    <label class="form-label">{{ __('Secretaria') }}</label>
                    <select name="structure_id" class="form-select">
                        <option value="">{{ __('Todas as secretarias') }}</option>
                        @foreach($secretarias as $s)
                            <option value="{{ $s->id }}" {{ request('structure_id') === $s->id ? 'selected' : '' }}>
                                {{ $s->abbreviation }} — {{ $s->name }}
                            </option>
                        @endforeach
                    </select>
                </div>
                <div class="col-sm-12 col-md-2">
                    <label class="form-label">{{ __('Status') }}</label>
                    <select name="status" class="form-select">
                        <option value="">{{ __('Todos') }}</option>
                        <option value="ATIVADO"   {{ request('status') === 'ATIVADO'    ? 'selected' : '' }}>{{ __('Ativado') }}</option>
                        <option value="DESATIVADO" {{ request('status') === 'DESATIVADO' ? 'selected' : '' }}>{{ __('Desativado') }}</option>
                    </select>
                </div>
                <div class="col-sm-12 col-md-1 d-flex align-items-end">
                    <button class="btn btn-success w-100" type="submit">{{ __('Filtrar') }}</button>
                </div>
            </form>

            @php
                $filterParams = request()->only(['q', 'structure_id', 'status', 'page']);
            @endphp

            <x-tables._table
                :thead="['#', __('Sigla'), __('Nome'), __('Secretaria'), __('Status'), __('Ações')]"
                :pagination="$unidades->links()">
                <x-slot name="body">
                    @php $index = $unidades->firstItem(); @endphp
                    @forelse($unidades as $unidade)
                        <tr>
                            <td>{{ $index }}</td>
                            <td><strong>{{ $unidade->abbreviation }}</strong></td>
                            <td>{{ $unidade->name }}</td>
                            <td>
                                @if($unidade->secretaria)
                                    {{ $unidade->secretaria->abbreviation }} — {{ $unidade->secretaria->name }}
                                @else
                                    <span class="text-muted">—</span>
                                @endif
                            </td>
                            <td>
                                @include('components/buttons/_status', [
                                    'index'       => $index,
                                    'route'       => 'admin.unidadesOrganizacionais.status',
                                    'id'          => [$unidade->id],
                                    'status'      => $unidade->status,
                                    'permission'  => 'GERENCIADOR_DE_UNIDADES_ORGANIZACIONAIS',
                                    'queryParams' => array_filter($filterParams),
                                ])
                            </td>
                            <td>
                                <div class="d-flex gap-2 justify-content-center">
                                    @include('components/buttons/_editButton', [
                                        'route'      => 'admin.unidadesOrganizacionais.edit',
                                        'id'         => [$unidade->id],
                                        'fontawesome' => null,
                                        'title'      => __('Editar'),
                                        'permission' => 'GERENCIADOR_DE_UNIDADES_ORGANIZACIONAIS',
                                    ])

                                    @if(auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_UNIDADES_ORGANIZACIONAIS')['excluir'])
                                        <form class="d-inline"
                                              action="{{ route('admin.unidadesOrganizacionais.destroy', $unidade->id) }}"
                                              method="post"
                                              onsubmit="return confirmDelete(this)">
                                            @csrf
                                            @method('delete')
                                            @foreach($filterParams as $key => $value)
                                                @if($value)
                                                    <input type="hidden" name="{{ $key }}" value="{{ $value }}">
                                                @endif
                                            @endforeach
                                            <input type="hidden" name="confirm"
                                                   value="{{ __('* Esta unidade será excluída e os vínculos com usuários serão removidos. Esta ação não pode ser desfeita. Deseja continuar?') }}">
                                            <button type="submit" class="btn btn-sm btn-danger" title="{{ __('Excluir') }}">
                                                <i class="fa-solid fa-trash"></i>
                                            </button>
                                        </form>
                                    @endif
                                </div>
                            </td>
                        </tr>
                        @php $index++; @endphp
                    @empty
                        <tr>
                            <td colspan="6" class="text-center">{{ __('Nenhuma unidade organizacional encontrada.') }}</td>
                        </tr>
                    @endforelse
                </x-slot>
            </x-tables._table>
        </div>
    </div>
@endsection
