mi-proyecto/app/templates/admin_consultas.html

46 lines
3.6 KiB
HTML

{% extends 'base.html' %}
{% block content %}
<div class="page-toolbar">
<div><h1 class="h3 mb-1">Consultas</h1><p class="text-muted mb-0">Mensajes recibidos desde el formulario de contacto del frontend.</p></div>
</div>
<div class="card table-panel">
<div class="card-header">
<form method="get" class="row g-3 align-items-end filter-toolbar">
<div class="col-lg-6"><label class="form-label">Buscar</label><input class="form-control" name="q" value="{{ request.args.get('q','') }}" placeholder="Nombre, email, teléfono o detalle"></div>
<div class="col-lg-3"><label class="form-label">Estado</label><select class="form-select searchable-select" name="status" data-placeholder="Todos"><option value="">Todos</option><option value="No Leido" {% if request.args.get('status')=='No Leido' %}selected{% endif %}>No Leido</option><option value="Leido" {% if request.args.get('status')=='Leido' %}selected{% endif %}>Leido</option></select></div>
<div class="col-lg-3 d-flex gap-2"><button class="btn btn-outline-primary flex-fill">Filtrar</button><a class="btn btn-outline-secondary" href="{{ url_for('admin_consultas') }}">Limpiar</a></div>
</form>
</div>
<div class="table-responsive wide-table">
<table class="table align-middle mb-0">
<thead><tr><th>Fecha/Hora</th><th>Nombre</th><th>Email</th><th>Teléfono</th><th>Detalle</th><th>Estado</th><th class="text-end">Acciones</th></tr></thead>
<tbody>
{% for item in inquiries %}
<tr>
<td>{{ item.created_at.strftime('%d/%m/%Y %H:%M') }}</td>
<td>{{ item.name }}</td>
<td>{{ item.email }}</td>
<td>{{ item.phone or '—' }}</td>
<td class="text-wrap">{{ item.detail }}</td>
<td><span class="badge {% if item.status == 'No Leido' %}text-bg-warning{% else %}text-bg-success{% endif %}">{{ item.status }}</span></td>
<td class="text-end">
<form method="post" class="d-inline-flex gap-2">
<input type="hidden" name="inquiry_id" value="{{ item.id }}">
{% if item.status == 'No Leido' %}
<button class="btn btn-sm btn-outline-success" name="status" value="Leido">Marcar leído</button>
{% else %}
<button class="btn btn-sm btn-outline-secondary" name="status" value="No Leido">Marcar no leído</button>
{% endif %}
</form>
</td>
</tr>
{% else %}
<tr><td colspan="7" class="text-center text-muted py-4">No hay consultas registradas.</td></tr>
{% endfor %}
</tbody>
</table>
</div>
{% if pagination.pages > 1 %}<div class="card-body border-top"><nav><ul class="pagination mb-0 justify-content-end"><li class="page-item {% if not pagination.has_prev %}disabled{% endif %}"><a class="page-link" href="{{ url_for('admin_consultas', page=pagination.prev_num, q=request.args.get('q',''), status=request.args.get('status','')) }}">Anterior</a></li>{% for page_num in pagination.iter_pages() %}{% if page_num %}<li class="page-item {% if page_num == pagination.page %}active{% endif %}"><a class="page-link" href="{{ url_for('admin_consultas', page=page_num, q=request.args.get('q',''), status=request.args.get('status','')) }}">{{ page_num }}</a></li>{% else %}<li class="page-item disabled"><span class="page-link"></span></li>{% endif %}{% endfor %}<li class="page-item {% if not pagination.has_next %}disabled{% endif %}"><a class="page-link" href="{{ url_for('admin_consultas', page=pagination.next_num, q=request.args.get('q',''), status=request.args.get('status','')) }}">Siguiente</a></li></ul></nav></div>{% endif %}
</div>
{% endblock %}