@extends('layouts.admin.theme')
@section('title', env('APP_NAME') . ' :: ' . __('Arquivos do Contrato'))

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

    <div class="card shadow-sm">
        @php $headLine = "<i class='fa-solid fa-folder-open'></i> " . __('Arquivos do Contrato'); @endphp
        @include('components.buttons._headLineButtonsBackAdd', [
            'headLine' => __($headLine),
            'routeBack' => 'admin.contratos.index',
            'routeBackParams' => request()->only(['q', 'ano', 'con_modalidade', 'con_status', 'page']),
            'nameBack' => __('Voltar'),
            'permission' => 'GERENCIADOR_DE_CONTRATOS',
        ])

        <div class="card-body">
            <form method="post" action="{{ route('admin.contratos.arquivos.store', [$contrato->id_contrato] + request()->only(['q', 'ano', 'con_modalidade', 'con_status', 'page'])) }}" enctype="multipart/form-data" class="mb-4">
                @csrf
                @foreach(['q', 'ano', 'con_modalidade', 'con_status', 'page'] as $filterKey)
                    @if(request()->filled($filterKey))
                        <input type="hidden" name="{{ $filterKey }}" value="{{ request($filterKey) }}">
                    @endif
                @endforeach
                <div class="row g-2 align-items-end">
                    <div class="col-md-4">
                        <label class="form-label">{{ __('Arquivo') }}</label>
                        <input type="file" name="arquivo" class="form-control" required>
                    </div>
                    <div class="col-md-2">
                        <label class="form-label">{{ __('Número') }}</label>
                        <input type="text" name="arq_numero" maxlength="50" class="form-control">
                    </div>
                    <div class="col-md-3">
                        <label class="form-label">{{ __('Título') }}</label>
                        <input type="text" name="arq_titulo" maxlength="200" class="form-control">
                    </div>
                    <div class="col-md-1">
                        <label class="form-label">{{ __('Início') }}</label>
                        <input type="text" name="arq_dataini" maxlength="10" class="form-control" data-mask-date placeholder="{{ __('dd/mm/aaaa') }}">
                    </div>
                    <div class="col-md-1">
                        <label class="form-label">{{ __('Fim') }}</label>
                        <input type="text" name="arq_datafim" maxlength="10" class="form-control" data-mask-date placeholder="{{ __('dd/mm/aaaa') }}">
                    </div>
                    <div class="col-md-1">
                        <button class="btn btn-success w-100" type="submit">{{ __('Adicionar') }}</button>
                    </div>
                </div>
            </form>

            <x-tables._table :thead="['#', __('Título'), __('Número'), __('Arquivo'), __('Vigência'), __('Ações')]">
                <x-slot name="body">
                    @php $index = 1; @endphp
                    @forelse($contrato->arquivos as $arquivo)
                        <tr>
                            <td>{{ $index }}</td>
                            <td>{{ $arquivo->arq_titulo ?: '-' }}</td>
                            <td>{{ $arquivo->arq_numero ?: '-' }}</td>
                            <td>
                                @if($arquivo->arq_arquivo)
                                    <a href="{{ $arquivo->arquivo_url }}" target="_blank">{{ basename($arquivo->arq_arquivo) }}</a>
                                @else
                                    -
                                @endif
                            </td>
                            <td>{{ ($arquivo->arq_dataini ?: '-') . ' - ' . ($arquivo->arq_datafim ?: '-') }}</td>
                            <td class="text-center">
                                <div class="d-flex justify-content-center gap-1">
                                    <button type="button"
                                            class="btn btn-sm btn-warning"
                                            data-bs-toggle="modal"
                                            data-bs-target="#modal-editar-arquivo"
                                            data-action="{{ route('admin.contratos.arquivos.update', [$contrato->id_contrato, $arquivo->id_arquivo]) }}"
                                            data-titulo="{{ $arquivo->arq_titulo }}"
                                            data-numero="{{ $arquivo->arq_numero }}"
                                            data-dataini="{{ $arquivo->arq_dataini }}"
                                            data-datafim="{{ $arquivo->arq_datafim }}"
                                            data-filename="{{ basename((string) $arquivo->arq_arquivo) }}"
                                            title="{{ __('Editar') }}"
                                            aria-label="{{ __('Editar arquivo') }}">
                                        <i class="fa-solid fa-pen-to-square"></i>
                                    </button>
                                    <form class="d-inline" action="{{ route('admin.contratos.arquivos.destroy', [$contrato->id_contrato, $arquivo->id_arquivo]) }}" method="post" onsubmit="return confirmDelete(this)">
                                        @csrf
                                        @method('delete')
                                        @foreach(['q', 'ano', 'con_modalidade', 'con_status', 'page'] as $filterKey)
                                            @if(request()->filled($filterKey))
                                                <input type="hidden" name="{{ $filterKey }}" value="{{ request($filterKey) }}">
                                            @endif
                                        @endforeach
                                        <input type="hidden" name="confirm" value="{{ __('* Este arquivo será excluído e esta ação não poderá ser desfeita, deseja continuar?') }}">
                                        <button type="submit" class="btn btn-sm btn-danger" title="{{ __('Excluir') }}" aria-label="{{ __('Excluir arquivo') }}">
                                            <i class="fa-solid fa-trash"></i>
                                        </button>
                                    </form>
                                </div>
                            </td>
                        </tr>
                        @php $index++; @endphp
                    @empty
                        <tr>
                            <td colspan="6" class="text-center">{{ __('Nenhum arquivo vinculado.') }}</td>
                        </tr>
                    @endforelse
                </x-slot>
            </x-tables._table>
        </div>
    </div>

    <!-- Modal: Editar Arquivo -->
    <div class="modal fade" id="modal-editar-arquivo" tabindex="-1"
         aria-labelledby="modal-editar-arquivo-label" aria-hidden="true">
        <div class="modal-dialog modal-lg">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title" id="modal-editar-arquivo-label">
                        <i class="fa-solid fa-pen-to-square me-2"></i>{{ __('Editar Arquivo') }}
                    </h5>
                    <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="{{ __('Fechar') }}"></button>
                </div>
                <form id="edit-arq-form" method="post" enctype="multipart/form-data" action="#">
                    @csrf
                    @method('PUT')
                    @foreach(['q', 'ano', 'con_modalidade', 'con_status', 'page'] as $filterKey)
                        @if(request()->filled($filterKey))
                            <input type="hidden" name="{{ $filterKey }}" value="{{ request($filterKey) }}">
                        @endif
                    @endforeach
                    <div class="modal-body">
                        <div class="row g-3">
                            <div class="col-md-8">
                                <label class="form-label fw-semibold" for="edit-arq-titulo">{{ __('Título') }}</label>
                                <input type="text" id="edit-arq-titulo" name="arq_titulo"
                                       maxlength="200" class="form-control">
                            </div>
                            <div class="col-md-4">
                                <label class="form-label fw-semibold" for="edit-arq-numero">{{ __('Número') }}</label>
                                <input type="text" id="edit-arq-numero" name="arq_numero"
                                       maxlength="50" class="form-control">
                            </div>
                            <div class="col-md-6">
                                <label class="form-label fw-semibold" for="edit-arq-dataini">{{ __('Data de Início') }}</label>
                                <input type="text" id="edit-arq-dataini" name="arq_dataini"
                                       maxlength="10" class="form-control" data-mask-date
                                       placeholder="{{ __('dd/mm/aaaa') }}">
                            </div>
                            <div class="col-md-6">
                                <label class="form-label fw-semibold" for="edit-arq-datafim">{{ __('Data de Fim') }}</label>
                                <input type="text" id="edit-arq-datafim" name="arq_datafim"
                                       maxlength="10" class="form-control" data-mask-date
                                       placeholder="{{ __('dd/mm/aaaa') }}">
                            </div>
                            <div class="col-12">
                                <label class="form-label fw-semibold" for="edit-arq-file">{{ __('Substituir arquivo') }} <span class="text-muted fw-normal">({{ __('opcional') }})</span></label>
                                <input type="file" id="edit-arq-file" name="arquivo" class="form-control">
                                <div class="form-text mt-1">
                                    <i class="fa-solid fa-file me-1 text-secondary"></i>
                                    {{ __('Arquivo atual:') }}
                                    <span id="edit-arq-filename" class="fw-semibold text-body"></span>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="modal-footer modal-footer-arquivos">
                        <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">
                            {{ __('Cancelar') }}
                        </button>
                        <button type="submit" class="btn btn-warning">
                            <i class="fa-solid fa-floppy-disk me-1"></i>{{ __('Salvar alterações') }}
                        </button>
                    </div>
                </form>
            </div>
        </div>
    </div>

@push('scripts')
    <script src="{{ asset('pmar/js/admin/contratos/arquivos.js') }}"></script>
@endpush
@endsection
