59 lines
2.4 KiB
HTML
59 lines
2.4 KiB
HTML
{% extends "base.html" %}
|
|
|
|
{% block title %}Dashboard{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="dashboard-grid">
|
|
<div class="stat-card">
|
|
<div class="stat-number">{{ stats.feeds_totales }}</div>
|
|
<div class="stat-label">Feeds Totales</div>
|
|
</div>
|
|
<div class="stat-card">
|
|
<div class="stat-number">{{ stats.noticias_totales }}</div>
|
|
<div class="stat-label">Noticias Totales</div>
|
|
</div>
|
|
<div class="stat-card">
|
|
<div class="stat-number">{{ stats.feeds_caidos }}</div>
|
|
<div class="stat-label">Feeds Caídos</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-md-6 mb-4">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3>Gestión de Feeds RSS</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
<p>Exporta tu lista de feeds RSS o restaura/importa desde un archivo CSV.</p>
|
|
<a href="{{ url_for('backup_feeds') }}" class="btn"><i class="fas fa-download"></i> Exportar Feeds</a>
|
|
<a href="{{ url_for('restore_feeds') }}" class="btn btn-info"><i class="fas fa-upload"></i> Importar Feeds</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6 mb-4">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3>Gestión de Fuentes URL</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
<p>Exporta tu lista de fuentes URL o restaura/importa desde un archivo CSV.</p>
|
|
<a href="{{ url_for('backup_urls') }}" class="btn"><i class="fas fa-download"></i> Exportar URLs</a>
|
|
<a href="{{ url_for('restore_urls') }}" class="btn btn-info"><i class="fas fa-upload"></i> Importar URLs</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3>Operaciones del Sistema</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
<p>Genera una copia de seguridad completa o ejecuta la tarea de recolección manualmente para pruebas.</p>
|
|
<a href="{{ url_for('backup_completo') }}" class="btn btn-secondary"><i class="fas fa-archive"></i> Backup Completo (.zip)</a>
|
|
<a href="{{ url_for('run_fetch_now') }}" class="btn btn-danger" onclick="return confirm('Esto puede tardar un momento. ¿Estás seguro?')"><i class="fas fa-cogs"></i> Ejecutar Recolección Manual</a>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|