{% if feeds %}
{{ _('Feed status') }}

{{ _('Configured feeds and their latest synchronization state.') }}

{% for feed in feeds %} {% set state = feed_state.get(feed.id or feed['id'], {}) %} {% endfor %}
{{ _('Feed') }} {{ _('Category') }} {{ _('Status') }} {{ _('Last sync') }} {{ _('Last error') }} {{ _('Actions') }}
{{ feed.title or feed['id'] }}
{{ feed.url|replace('/', '/\u200b') }}
{{ _('Enabled') }}: {{ 'yes' if feed.get('enabled') else 'no' }} {% if feed.get('max_items') %}
{{ _('Max items') }}: {{ feed.get('max_items') }} {% endif %} {% if feed.get('allow_deletions') is not none %}
{{ _('Allow deletions') }}: {{ 'yes' if feed.get('allow_deletions') else 'no' }} {% endif %} {% if feed.get('use_event_details') is not none %}
{{ _('Use event details') }}: {{ 'yes' if feed.get('use_event_details') else 'no' }} {% endif %}
{{ feed.category_id or '–' }} {% set status = state.get('status') %} {% set meta = state.get('status_meta') or {} %} {% set summary = state.get('last_summary') or {} %} {% if status == 'running' %} {{ _('Processing') }}
{{ meta.get('processed', 0) }} / {{ meta.get('total', 0) }} ({{ meta.get('created', 0) }} {{ _('created') }}, {{ meta.get('updated', 0) }} {{ _('updated') }}, {{ meta.get('unchanged', 0) }} {{ _('unchanged') }}, {{ meta.get('deleted', 0) }} {{ _('deleted') }}) {% elif status == 'queued' %} {{ _('Queued') }} {% if meta.get('task_id') %}
{{ _('Task') }}: {{ meta.get('task_id') }} {% endif %} {% elif status == 'completed' %} {% set summary_parts = [ _('%(count)s created', count=summary.get('created', 0)), _('%(count)s updated', count=summary.get('updated', 0)), _('%(count)s unchanged', count=summary.get('unchanged', 0)), _('%(count)s deleted', count=summary.get('deleted', 0)) ] if summary else [] %} {{ _('Completed') }} {% elif status == 'failed' %} {{ _('Failed') }} {% else %} {{ _('Idle') }} {% endif %}
{% if state.last_synced_at or state.get('last_synced_at') %} {% set synced_dt = state.last_synced_at or state.get('last_synced_at') %} {% set display_sync = synced_dt[:16].replace('T', ' ') %} {{ display_sync }} {% else %} {{ _('Never') }} {% endif %} {% if state.last_error or state.get('last_error') %} {{ state.last_error or state.get('last_error') }} {% else %} {{ _('None') }} {% endif %}
{% else %}
{{ _('Feed status') }}

{{ _('No feeds configured yet. Add entries in the JSON field above to start importing events.') }}

{% endif %}