@extends('admin.layouts.admin') @section('title', 'Consejos') @php // El eje de la pantalla es la clasificación (level): cuatro niveles, en su orden. $niveles = [ 'general' => ['nombre' => 'General', 'sub' => 'Valen para cualquier fermento. Los diarios rotan en portada.'], 'category' => ['nombre' => 'Categoría', 'sub' => 'Remedios por estante (solucionador). Categoría es alcance, no destino.'], 'ferment' => ['nombre' => 'Fermento', 'sub' => 'Remedios del fermento (solucionador).'], 'step' => ['nombre' => 'Paso', 'sub' => 'El consejo proactivo: sale en la guía, dentro de una tanda (Pro).'], ]; $idiomas = \App\Http\Controllers\Admin\HintController::LOCALES; $recuentosDesiguales = $diariosPorIdioma->unique()->count() > 1; @endphp @section('content')
Consejos

El conocimiento editorial del mentor: cuatro niveles, tres idiomas, tres ventanas. Solo consejos — los avisos del motor y los insights no se editan aquí.

+ Nuevo consejo
{{-- El recuento de diarios por idioma: la rotación depende de él (briefing §6) --}}
Consejo del día por idioma: @foreach($idiomas as $idioma) {{ $idioma }}: {{ $diariosPorIdioma[$idioma] ?? 0 }} @endforeach @if($recuentosDesiguales) ⚠ recuentos desiguales — la rotación diverge entre idiomas @endif
{{-- Filtros: tres desplegables, no un panel --}}
@if(request()->hasAny(['nivel', 'dueno', 'idioma'])) Quitar filtros @endif
@if($porNivel->isEmpty())
Nada con estos filtros
Prueba a quitarlos, o crea el primer consejo.
@endif @foreach($niveles as $clave => $nivel) @php $delNivel = $porNivel[$clave] ?? collect(); @endphp @continue($delNivel->isEmpty())
{{ $nivel['nombre'] }} {{ $delNivel->count() }}
{{ $nivel['sub'] }}
@php // Agrupado por dueño: es lo que permite ver el hueco (briefing §6). $grupos = match ($clave) { 'category' => $delNivel->groupBy(fn ($h) => $h->category?->name ?? '—'), 'ferment' => $delNivel->groupBy(fn ($h) => $h->guide?->name ?? '—'), 'step' => $delNivel->groupBy(fn ($h) => ($h->guideStep?->guide?->name ?? '—') . ' · paso ' . ($h->guideStep?->step_number ?? '?') . ' — ' . ($h->guideStep?->title ?? 'sin paso')), default => $delNivel->groupBy(fn ($h) => $h->is_daily ? 'Diarios (rotación de portada)' : 'Sueltos'), }; @endphp @foreach($grupos as $dueno => $filas)
{{ $dueno }}
@foreach($filas as $consejo) @php $esDiario = $consejo->is_daily; $sinVentana = $clave === 'general' && ! $esDiario && $consejo->symptom === null; @endphp @endforeach
{{ $consejo->order }} {{ $consejo->locale }} @if($consejo->title){{ $consejo->title }}.@endif {{ \Illuminate\Support\Str::limit($consejo->content, 140) }} @if($esDiario) diario @endif @if($consejo->symptom) {{ $consejo->symptom }} @endif @if($consejo->symptom) {{-- El distintivo de §4: pista de despegue, no cajón --}} 🔜 sin ventana todavía @elseif($sinVentana) sin ventana @endif Editar
locale}» y desiguala los idiomas. ¿Eliminar?" : ($clave === 'step' ? '¿Eliminar? Deja de salir en la guía dentro de la tanda (Pro). Es el único sitio donde se muestra.' : '¿Eliminar? Esta fila aún no sale en ninguna pantalla.')))"> @csrf @method('DELETE')
@endforeach
@endforeach @endsection