feat: módulo de evaluaciones para admin con constructor dinámico
- Modelos completos: Evaluacion, EvaluacionTipo, Pregunta, PreguntaTipo,
PreguntaOpcion, EvaluacionSubmission, Respuesta (con $table explícito
para nombres en español que Laravel pluraliza incorrectamente)
- Relaciones evaluaciones() añadidas a Plantel y Nivel
- EvaluacionBuilder (Livewire): constructor interactivo con preguntas
de tipo texto libre, opción múltiple, escala 1-5/1-10 y sí/no;
reorden con flechas, vista previa por tipo, selección de planteles
y niveles, configuración de estado, fechas y flag de anónima
- EvaluacionController: CRUD completo + toggleStatus
- Vistas: index, create/edit (con Livewire builder), show con detalle
de preguntas y cambio de estado
- Rutas resource /evaluacion + PATCH /evaluacion/{id}/status
- Migraciones: evaluaciones, preguntas, pregunta_opciones,
evaluacion_submissions, respuestas, evaluacion_plantel, evaluacion_nivel
- Menú: enlace Evaluaciones en panel de Administrador
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -104,6 +104,14 @@
|
||||
@can('horario.index')
|
||||
<a class="collapse-item" href="{{ route('horario.index') }}" style="color:#85888e">Horarios</a>
|
||||
@endcan
|
||||
|
||||
<a class="collapse-item" href="{{ route('anuncio.index') }}" style="color:#85888e">
|
||||
<i class="fas fa-bullhorn mr-1"></i> Anuncios
|
||||
</a>
|
||||
|
||||
<a class="collapse-item" href="{{ route('evaluacion.index') }}" style="color:#85888e">
|
||||
<i class="fas fa-clipboard-list mr-1"></i> Evaluaciones
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
@@ -179,15 +187,30 @@
|
||||
|
||||
@hasrole(['Alumno'])
|
||||
|
||||
@can('pago.index')
|
||||
@can('pago.index')
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('pago.index') }}">
|
||||
<i class="fas fa-money-bill-alt" style="color: #e8e8e8;"></i>
|
||||
<span>Mis pagos</span></a>
|
||||
</li>
|
||||
@endcan
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('pago.index') }}">
|
||||
<i class="fas fa-money-bill-alt" style="color: #e8e8e8;"></i>
|
||||
<span>Mis pagos</span></a>
|
||||
</li>
|
||||
@endcan
|
||||
<a class="nav-link" href="{{ route('mis.tareas') }}">
|
||||
<i class="fas fa-fw fa-tasks" style="color: #e8e8e8;"></i>
|
||||
<span>Mis Tareas</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@endrole
|
||||
|
||||
@hasrole(['Docente'])
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('grupo.index') }}">
|
||||
<i class="fa-duotone fa-regular fa-user-group" style="--fa-primary-color: rgb(255, 255, 255); --fa-secondary-color: rgb(255, 255, 255);"></i>
|
||||
<span>Mis grupos</span></a>
|
||||
</li>
|
||||
@endrole
|
||||
|
||||
|
||||
@@ -196,25 +219,32 @@
|
||||
<!-- Heading -->
|
||||
<div class="sidebar-heading" style="color:white">Adicionales</div>
|
||||
|
||||
@can('comunidad')
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('feed') }}">
|
||||
<i class="fas fa-fw fa-stream" style="color:#e8e8e8"></i>
|
||||
<span>Comunidad</span>
|
||||
</a>
|
||||
</li>
|
||||
@endcan
|
||||
|
||||
@can('amigos')
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('friendships.index') }}">
|
||||
<i class="fas fa-fw fa-user-friends" style="color:#e8e8e8"></i>
|
||||
<span>Amigos</span>
|
||||
</a>
|
||||
</li>
|
||||
@endcan
|
||||
|
||||
@can('mensajes')
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('chat.index') }}">
|
||||
<i class="fas fa-fw fa-comment-dots" style="color:#e8e8e8"></i>
|
||||
<span>Mensajes</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@endcan
|
||||
|
||||
@can('asistencia')
|
||||
<li class="nav-item">
|
||||
@@ -236,17 +266,17 @@
|
||||
|
||||
|
||||
|
||||
<!-- Nav Item - notes -->
|
||||
@can('note.index')
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{route('note.index')}}">
|
||||
<i class="fas fa-fw fa-sticky-note" style="color: #e8e8e8;"></i>
|
||||
<span>Notas</span></a>
|
||||
</li>
|
||||
@endcan
|
||||
<!-- Nav Item - notes -->
|
||||
@can('note.index')
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{route('note.index')}}">
|
||||
<i class="fas fa-fw fa-sticky-note" style="color: #e8e8e8;"></i>
|
||||
<span>Notas</span></a>
|
||||
</li>
|
||||
@endcan
|
||||
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
</ul>
|
||||
<!-- Sidebar Toggler (Sidebar) -->
|
||||
<div class="text-center d-none d-md-inline">
|
||||
<button class="rounded-circle border-0" id="sidebarToggle"></button>
|
||||
</div>
|
||||
</ul>
|
||||
|
||||
Reference in New Issue
Block a user