{% extends "base.html" %} {% block titulo %}Candidato {{ c.id }}{% endblock %} {% macro csrf_campo() %}{% endmacro %} {% block contenido %}

← Cola de candidatos

Revisión · {{ c.fuente_nombre }}

Candidato {{ c.id }}

Creado {{ c.creado_en|fecha }} · corrida {{ c.corrida_id }}

{% if c.estado == 'abierto' %}Abierto {% elif c.estado == 'publicado' %}Publicado {% else %}Descartado{% endif %}
{% if c.estado == 'publicado' %}

Publicado como {{ c.release_id }} por {{ c.aprobado_por }}, el {{ c.publicado_en|fecha }}.

{% elif c.estado == 'descartado' %}

Descartado por {{ c.decidido_por }}, el {{ c.decidido_en|fecha }}.{% if c.motivo %} Motivo: {{ c.motivo }}{% endif %}

{% endif %} {% if aviso %}

{{ aviso }}{% if n_aviso is not none and aviso == 'Hallazgos aceptados.' %} ({{ n_aviso }}){% endif %}

{% endif %} {% if error %}{% endif %} {% if abierto %}

Períodos nuevos

{{ diff.nuevos }}

Datos ya publicados que cambian

{{ diff.cambiados + diff.faltantes }}

{% if diff.cambiados or diff.faltantes %}

{% if diff.cambiados %}{{ diff.cambiados }} con otro valor{% endif %}{% if diff.cambiados and diff.faltantes %} · {% endif %}{% if diff.faltantes %}{{ diff.faltantes }} que faltan en el candidato{% endif %}

{% endif %}

Hallazgos resueltos

{{ revision.aceptados }} de {{ revision.total }}

{% if revision.rechazados %}

{{ revision.rechazados }} rechazados

{% endif %}
{% endif %}

Archivos de la corrida

{% for a in archivos %} {% else %}{% endfor %}
ArchivoHashModificado en el servidorVisto
{{ a.url.rsplit('/', 1)[-1] }} {{ a.sha256|hash_corto }} {{ a.publicada_en|fecha }} {{ 'Nuevo' if a.estado == 'nueva' else 'Ya conocido' if a.estado == 'identica' else 'Falló' }}
Sin archivos registrados.
{% if abierto and diff.filas %}

Qué cambia respecto de lo vigente

{{ diff.total }} períodos distintos{% if diff.total > diff.filas|length %} (se muestran {{ diff.filas|length }}){% endif %}
{% for f in diff.filas %} {% endfor %}
SeriePeríodoVigenteCandidato
{{ f.serie_id }}{{ f.periodo|mes }} {{ f.vigente|num4 }} {{ f.nuevo|num4 }} {{ {'nuevo': 'Nuevo', 'cambiado': 'Cambia', 'faltante': 'Falta en el candidato'}[f.tipo] }}
{% endif %}

Hallazgos

{% if analisis and abierto %}

El asistente analizó los hallazgos sin resolver y propone: aceptar {{ analisis.aceptar }}, rechazar {{ analisis.rechazar }}, que lo mires vos {{ analisis.investigar }}{% if analisis.sin_resolver > analisis.aceptar + analisis.rechazar + analisis.investigar %} (faltan {{ analisis.sin_resolver - analisis.aceptar - analisis.rechazar - analisis.investigar }} por analizar){% endif %}. Es una sugerencia: la decisión es tuya.

{% endif %} {% if not grupos %}

Este candidato no tiene hallazgos.

{% endif %} {% for regla, items in grupos %} {% set titulo, explicacion = reglas.get(regla, (regla, '')) %} {% set pendientes = items|rejectattr('decision')|list|length %}

{{ titulo }} {{ items|length }}

{{ explicacion }}

{% if abierto and pendientes %}
{{ csrf_campo() }}
{% endif %}
{% endfor %}
{% if abierto %}

Publicar

{% if revision.rechazados %}

Hay {{ revision.rechazados }} hallazgo{{ 's' if revision.rechazados != 1 }} rechazado{{ 's' if revision.rechazados != 1 }}: este candidato no se puede publicar. Descartalo y esperá uno nuevo.

{% elif revision.pendientes %}

Faltan {{ revision.pendientes }} hallazgo{{ 's' if revision.pendientes != 1 }} por resolver antes de publicar.

{% elif revision.propuestas_pendientes %}

Faltan decidir {{ revision.propuestas_pendientes }} propuesta{{ 's' if revision.propuestas_pendientes != 1 }} del agente.

{% else %}

Todos los hallazgos están resueltos. Al publicar se crea un release nuevo; el anterior sigue disponible.

{% endif %}
{{ csrf_campo() }}
{% if revision.pendientes %}
{{ csrf_campo() }}
{% endif %}
Descartar este candidato
{{ csrf_campo() }}

Lo rechaza entero y no toca nada de lo publicado.

{% endif %} {% endblock %}