@extends('layouts.admin.theme') @section('title', env('APP_NAME') . ' :: ' . ($linha ? __('Editar Linha') : __('Nova Linha')) . ' - MobiAngra') @section('content')
@php $isEdicao = $linha !== null; $headLine = " " . ($isEdicao ? __('Linha :cod - :nome', ['cod' => $linha->codigo, 'nome' => $linha->nome]) : __('Nova Linha de Horários')); @endphp @include('components.buttons._headLineButtonsBackAdd', [ 'headLine' => $headLine, 'routeBack' => 'admin.mobiangra.index', 'routeBackParams' => ['tab' => 'horarios'], 'nameBack' => __('Voltar'), 'permission' => 'GERENCIADOR_DE_MOBIANGRA', ])
@include('errors.messageFlash') {{-- ===== DADOS BÁSICOS DA LINHA ===== --}}
@csrf @if ($isEdicao) @method('PUT') @endif
{{ __('Dados da Linha') }}
@error('codigo')
{{ $message }}
@enderror
@error('nome')
{{ $message }}
@enderror
@error('nome_completo')
{{ $message }}
@enderror
@error('tarifa')
{{ $message }}
@enderror
@error('tarifa_cidadao')
{{ $message }}
@enderror
publicada ?? true) ? 'checked' : '' }}>
@if ($isEdicao) {{-- -- Legendas de cores --------------------------------- --}}
{{ __('Legendas de cores') }}

{{ __('Explique o significado dos horários marcados em cores diferentes na planilha.') }}

@foreach ($linha->legendas as $i => $leg)
@endforeach
{{-- -- Integrações ---------------------------------------- --}}
{{ __('Integrações') }}

{{ __('Indique quais linhas o passageiro pode usar em sequência pagando apenas uma passagem, e por quanto tempo.') }}

@foreach ($linha->integracoes as $i => $integ) @php $envolvidas = $integ->linhas_envolvidas ?? []; @endphp
{{ __('Integração') }} {{ $i + 1 }}
{{-- Tempo de integração --}}
{{ __('minutos') }}
{{-- Linhas envolvidas --}}
@foreach ($envolvidas as $j => $lenv)
@if ($j > 0) @else @endif @if ($j >= 2) @else @endif
@endforeach
@endforeach
@endif
@if ($isEdicao && (auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_MOBIANGRA')['visualizar'] ?? false)) publicada) title="{{ __('Esta linha está oculta no site. Publique-a para que o público possa vê-la.') }}" @else title="{{ __('Abrir a grade de horários desta linha no site público') }}" @endif> {{ __('Visualizar no site') }} @endif @if (auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_MOBIANGRA')['editar'] ?? false) {{ __('Cancelar') }} @endif
{{-- ===== SEÇÕES E GRADES (somente em edição) ===== --}} @if ($isEdicao)
{{ __('Seções e Horários') }}
@if (auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_MOBIANGRA')['adicionar'] ?? false)
@csrf
@endif
@forelse ($linha->secoes as $secao)
{{-- Cabeçalho da seção --}}
@csrf @method('PUT') @if (auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_MOBIANGRA')['editar'] ?? false) @endif
@if (auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_MOBIANGRA')['excluir'] ?? false)
@csrf @method('DELETE')
@endif
{{-- Grades existentes --}} @if ($secao->grades->isNotEmpty())
@foreach ($secao->grades as $grade)
{{ $grade->label }} @if (auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_MOBIANGRA')['excluir'] ?? false)
@csrf @method('DELETE')
@endif
@if (auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_MOBIANGRA')['editar'] ?? false)
@csrf @if ($linha->legendas->isNotEmpty())

{{ __('Clique em um horário para alternar a cor. Abra "Edição em lote" para colar ou alterar a lista inteira.') }}

@foreach ($linha->legendas as $leg) {{ __(':cor: :desc', ['cor' => ucfirst($leg->cor), 'desc' => $leg->descricao]) }} @endforeach
@foreach ($grade->horariosItens() as $item) @endforeach
{{ __('Edição em lote (colar lista)') }}
@else

{{ __('Salve ao menos uma legenda de cor acima para pintar horários.') }}

@endif
{{ count($grade->horariosItens()) }} {{ __('horários') }}
@else
@foreach ($grade->horariosItens() as $item) empty($item['c']), 'horarios-pintor-chip--' . $item['c'] => ! empty($item['c']), ])>{{ $item['h'] }} @endforeach
{{ count($grade->horariosItens()) }} {{ __('horários') }}
@endif
@endforeach
@endif {{-- Adicionar novo período --}} @if (auth()->user()->getPermissaoDetalhes('GERENCIADOR_DE_MOBIANGRA')['adicionar'] ?? false) @php $periodosExistentes = $secao->grades->pluck('periodo')->all(); $periodosDisponiveis = array_diff_key($periodos, array_flip($periodosExistentes)); @endphp @if (!empty($periodosDisponiveis))
@csrf
{{ __('Adicionar período') }}
@endif @endif
@empty
{{ __('Nenhuma seção cadastrada. Adicione ao menos uma seção para incluir os horários.') }}
@endforelse @endif
{{-- card-body --}}
{{-- card --}} @endsection @push('scripts') @endpush @push('after-scripts') @endpush