conversions web4
This commit is contained in:
@@ -1,8 +1,6 @@
|
||||
<section class="panel">
|
||||
<h2>
|
||||
{{ nav.tr("ecb-import-attempts") }} <span class="count">{{ page.batches.len() }}</span>
|
||||
{%- if page.failure_count() > 0 %}<span class="tag tag-bad">{{ page.failed_count_label() }}</span>{% endif -%}
|
||||
</h2>
|
||||
<details class="panel">
|
||||
<summary><strong>{{ nav.tr("ecb-technical-history") }}</strong> <span class="count">{{ page.batches.len() }}</span></summary>
|
||||
<p class="hint">{{ nav.tr("ecb-technical-history-hint") }}</p>
|
||||
{% if page.batches.is_empty() %}
|
||||
<p class="hint">{{ nav.tr("ecb-no-attempts-hint") }}</p>
|
||||
{% else %}
|
||||
@@ -55,4 +53,4 @@
|
||||
</div>
|
||||
<p class="hint">{{ nav.tr("ecb-audit-hint") }}</p>
|
||||
{% endif %}
|
||||
</section>
|
||||
</details>
|
||||
|
||||
@@ -18,63 +18,6 @@
|
||||
|
||||
{% include "pages/admin/ecb/status.html" %}
|
||||
|
||||
<section class="panel">
|
||||
<h2>
|
||||
{{ nav.tr("ecb-import-attempts") }} <span class="count">{{ page.batches.len() }}</span>
|
||||
{%- if page.failure_count() > 0 %}<span class="tag tag-bad">{{ page.failed_count_label() }}</span>{% endif -%}
|
||||
</h2>
|
||||
{% if page.batches.is_empty() %}
|
||||
<p class="hint">{{ nav.tr("ecb-no-attempts-hint") }}</p>
|
||||
{% else %}
|
||||
<div class="table-scroll">
|
||||
<table class="builder-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="mark">#</th><th>{{ nav.tr("ecb-th-result") }}</th><th>{{ nav.tr("ecb-th-started") }}</th><th>{{ nav.tr("ecb-th-finished") }}</th>
|
||||
<th>{{ nav.tr("ecb-th-took") }}</th><th>{{ nav.tr("ecb-th-window") }}</th><th class="numeric">{{ nav.tr("ecb-th-observations") }}</th>
|
||||
<th>{{ nav.tr("ecb-th-verified-through") }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for batch in page.batches %}
|
||||
<tr{% if batch.failed() %} class="attempt-failed"{% endif %}>
|
||||
<td class="mark">{{ batch.batch_id }}</td>
|
||||
<td>
|
||||
{%- if batch.succeeded() %}<span class="tag tag-ok">{{ nav.tr("ecb-batch-succeeded") }}</span>
|
||||
{%- else if batch.running() %}<span class="tag">{{ nav.tr("ecb-batch-running") }}</span>
|
||||
{%- else %}<span class="tag tag-bad">{{ nav.tr("ecb-batch-failed") }}</span>{% endif -%}
|
||||
</td>
|
||||
<td class="moment">{{ batch.started() }}</td>
|
||||
<td class="moment">
|
||||
{%- if let Some(finished) = batch.finished() %}{{ finished }}
|
||||
{%- else %}<span class="hint">{{ nav.tr("ecb-still-running") }}</span>{% endif -%}
|
||||
</td>
|
||||
<td class="numeric">
|
||||
{%- if let Some(took) = batch.took(nav.locale) %}{{ took }}
|
||||
{%- else %}<span class="hint">—</span>{% endif -%}
|
||||
</td>
|
||||
<td>
|
||||
{{ batch.window() }}
|
||||
<div class="hint endpoint" title="{{ batch.endpoint }}"><code>{{ batch.endpoint }}</code></div>
|
||||
</td>
|
||||
<td class="numeric">{{ batch.observations(nav.locale) }}</td>
|
||||
<td class="moment">
|
||||
{%- if let Some(date) = batch.verified_through_date %}{{ date }}
|
||||
{%- else %}<span class="hint">—</span>{% endif -%}
|
||||
</td>
|
||||
</tr>
|
||||
{% if let Some(message) = batch.error_message %}
|
||||
<tr class="attempt-error">
|
||||
<td class="mark"></td>
|
||||
<td colspan="7">{{ message }}</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<p class="hint">{{ nav.tr("ecb-audit-hint") }}</p>
|
||||
{% endif %}
|
||||
</section>
|
||||
{% include "pages/admin/ecb/attempts.html" %}
|
||||
</main>
|
||||
{% endblock %}
|
||||
|
||||
@@ -16,10 +16,6 @@
|
||||
</h2>
|
||||
<p class="hint">{{ page.explanation() }}</p>
|
||||
|
||||
{# The question a reader came with. Coverage is a publication date, and
|
||||
turning it into "which transaction dates will post" means applying the
|
||||
rule the backend applies -- so the backend applies it and sends both
|
||||
bounds, rather than the page inviting the reader to do it in their head. #}
|
||||
<div class="postable">
|
||||
<p class="postable-lead">{{ nav.tr("ecb-postable-lead") }}</p>
|
||||
{% if let Some(through) = page.transactions_postable_through %}
|
||||
@@ -27,48 +23,21 @@
|
||||
<div>
|
||||
<dt>{{ nav.tr("ecb-ordinary-transactions") }}</dt>
|
||||
<dd>{{ nav.tr("ecb-dated-up-to") }} <strong>{{ through }}</strong></dd>
|
||||
<dd class="hint">{{ nav.tr("ecb-ordinary-rate-hint") }}</dd>
|
||||
</div>
|
||||
<div>
|
||||
<dt>{{ nav.tr("ecb-statements-title") }}</dt>
|
||||
<dd>{{ nav.tr("ecb-dated-up-to") }} <strong>{{ page.statements_postable_through.as_deref().unwrap_or("—") }}</strong></dd>
|
||||
<dd class="hint">{{ nav.tr("ecb-statements-rate-hint") }}</dd>
|
||||
</div>
|
||||
</dl>
|
||||
<p class="hint">{{ nav.tr("ecb-postable-limit-hint") }}</p>
|
||||
{% else %}
|
||||
<p>
|
||||
<strong>{{ nav.tr("ecb-nothing") }}</strong> {{ nav.tr("ecb-no-publication-hint") }}
|
||||
</p>
|
||||
<p><strong>{{ nav.tr("ecb-nothing") }}</strong> {{ nav.tr("ecb-no-publication-hint") }}</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
{# Coverage first and on its own line: the two dates and the gap between
|
||||
them are the whole answer, and burying them in a four-column grid made
|
||||
them read as trivia. #}
|
||||
<div class="coverage">
|
||||
<div class="coverage-point">
|
||||
<span class="coverage-label">{{ nav.tr("ecb-verified-through") }}</span>
|
||||
<span class="coverage-date">
|
||||
{%- if let Some(date) = page.verified_through_date %}{{ date }}
|
||||
{%- else %}{{ nav.tr("ecb-never") }}{% endif -%}
|
||||
</span>
|
||||
</div>
|
||||
<div class="coverage-gap">
|
||||
{%- if page.healthy %}<span class="tag tag-ok">{{ nav.tr("ecb-up-to-date") }}</span>
|
||||
{%- else if page.days_behind > 0 %}<span class="tag tag-bad">{{ page.behind_label() }}</span>
|
||||
{%- else %}<span class="tag tag-bad">{{ nav.tr("ecb-no-coverage") }}</span>{% endif -%}
|
||||
</div>
|
||||
<div class="coverage-point">
|
||||
<span class="coverage-label">{{ nav.tr("ecb-should-reach") }}</span>
|
||||
<span class="coverage-date">{{ page.latest_verifiable_date }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<dl class="status-grid">
|
||||
<div>
|
||||
<dt>{{ nav.tr("ecb-last-attempt") }}</dt>
|
||||
<dd>{% if let Some(when) = page.last_attempt() %}{{ when }}{% else %}<span class="hint">{{ nav.tr("ecb-none-recorded") }}</span>{% endif %}</dd>
|
||||
<dt>{{ nav.tr("ecb-verified-through") }}</dt>
|
||||
<dd>{% if let Some(date) = page.verified_through_date %}<strong>{{ date }}</strong>{% else %}<span class="hint">{{ nav.tr("ecb-never") }}</span>{% endif %}</dd>
|
||||
</div>
|
||||
<div>
|
||||
<dt>{{ nav.tr("ecb-last-success") }}</dt>
|
||||
@@ -78,25 +47,21 @@
|
||||
<dt>{{ nav.tr("ecb-next-import") }}</dt>
|
||||
<dd>{{ page.next_import() }}</dd>
|
||||
</div>
|
||||
<div>
|
||||
<dt>{% if let Some(date) = page.verified_through_date %}{{ nav.tr_args("ecb-currencies-on", [("date", date.clone())]) }}{% else %}{{ nav.tr("ecb-the-covered-day") }}{% endif %}</dt>
|
||||
<dd>
|
||||
{%- if page.covered_currencies.is_empty() %}<span class="hint">{{ nav.tr("ecb-none") }}</span>
|
||||
{%- else %}{{ page.covered_currencies.len() }}{% endif -%}
|
||||
</dd>
|
||||
</div>
|
||||
</dl>
|
||||
|
||||
{% if !page.covered_currencies.is_empty() %}
|
||||
<div class="currency-list">
|
||||
<strong>{{ nav.tr("ecb-ready-currencies") }}</strong>
|
||||
{% for currency in page.currencies() %}<span class="tag">{{ currency }}</span>{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if let Some(failure) = page.last_failure() %}
|
||||
<p class="hint failure-note">
|
||||
{{ nav.tr_args("ecb-most-recent-failure", [("batch", failure.batch_id.to_string()), ("started", failure.started())]) }}
|
||||
{% if let Some(message) = failure.error_message %}{{ message }}{% else %}{{ nav.tr("ecb-no-reason-recorded") }}{% endif %}
|
||||
</p>
|
||||
{% if !page.healthy %}
|
||||
{% if let Some(failure) = page.last_failure() %}
|
||||
<p class="failure-note">
|
||||
<strong>{{ nav.tr("ecb-latest-problem") }}</strong>
|
||||
{% if let Some(message) = failure.error_message %}{{ message }}{% else %}{{ nav.tr("ecb-no-reason-recorded") }}{% endif %}
|
||||
</p>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</section>
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
</section>
|
||||
|
||||
<section id="providers">
|
||||
<div class="heading"><div><p class="eyebrow">{{ nav.tr("rates-provider-operations") }}</p><h2>{{ nav.tr("rates-provider-health") }}</h2><p>{{ nav.tr("rates-provider-health-hint") }}</p></div></div>
|
||||
<div class="heading"><div><h2>{{ nav.tr("rates-provider-health") }}</h2><p>{{ nav.tr("rates-provider-health-hint") }}</p></div></div>
|
||||
{{ provider_status|safe }}
|
||||
{{ provider_attempts|safe }}
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user