rss-news Admin Dashboard

Angemeldet als {{ user }}

Artikelliste Veröffentlichungsplan Connectivity Check
{% if flash_msg %}
{{ flash_msg }}
{% endif %}
Quellen
{{ sources|length }}
Feeds
{{ feeds|length }}
Artikel
{{ articles|length }}
Runs
{{ runs|length }}

Quelle anlegen

Feed anlegen

Ingestion starten

Publisher ausführen

Rewrite Run (geplante Artikel)

Verarbeitet alle Artikel im Status rewrite und setzt sie auf publish.

Quellen + Policy

{% for s in sources %} {% endfor %}
IDNameRiskLizenzTermsPolicy
{{ s.id }} {{ s.name }} {{ s.risk_level }} {{ s.license_name or "-" }} {{ s.terms_url or "-" }} {% if source_policy[s.id] %} BLOCKED ({{ source_policy[s.id]|length }})
{{ source_policy[s.id]|join(", ") }}
{% else %} OK {% endif %}

Quellen verwalten

{% for s in sources %} {% set source_form_id = 'source-update-' ~ s.id %} {% endfor %}
IDNameURLsMetaAktionen
#{{ s.id }}

Feeds verwalten

{% for f in feeds %} {% set feed_form_id = 'feed-update-' ~ f.id %} {% endfor %}
IDNameURLQuelleStatusAktionen
#{{ f.id }}

Artikel (Review)

Reset Export JSON Export CSV
{% for a in articles %} {% endfor %}
IDArtikelStatusDetailsRewriteTransition
{{ a.id }} {{ a.title }}
Autor: {{ a.author or "-" }}
Datum: {{ a.published_at or "-" }} | Alter: {{ a.days_old if a.days_old is not none else "-" }} Tage | Relevanz: {{ a.relevance }}
Original öffnen
Details anzeigen {% if a.canonical_url and a.canonical_url != a.source_url %}
Canonical öffnen {% endif %}
{{ a.status_ui }}
Publish: {{ "bereit" if a.publish_ready else "blockiert" }}
{% if not a.publish_ready and a.publish_blockers %}
{{ a.publish_blockers|join(", ") }}
{% endif %} {% if a.selected_image_url %}
Hauptbild gesetzt
Hauptbild {% endif %} {% if a.summary %}
Summary: {{ a.summary }}
{% endif %} {% if a.generated_tags %}
Tags: {{ a.generated_tags|join("; ") }}
{% endif %} {% if a.content_raw %}
Volltext anzeigen
{{ a.content_raw }}
{% endif %}
Bilder: {{ a.extracted_images|length }}
{% if a.extracted_images %}
Bild-URLs
    {% for img in a.extracted_images %}
  • {{ img }}
  • {% endfor %}
{% endif %} {% if a.press_contact %}
Pressekontakt
{{ a.press_contact }}
{% endif %} {% if a.extraction_error %}
Extraktionsfehler: {{ a.extraction_error }}
{% endif %}
{% if a.status_ui in ["new", "rewrite"] %}
{% else %} - {% endif %}
{% if allowed_transitions.get(a.status_ui, []) %} {% else %} keine Aktion {% endif %}
{% if a.status_ui == 'close' %}
{% endif %}

Runs

{% for r in runs %} {% endfor %}
IDTypStatusStartEnde
{{ r.id }} {{ r.run_type }} {{ r.status }} {{ r.started_at }} {{ r.finished_at or "-" }}

Publish Jobs

{% for j in publish_jobs %} {% endfor %}
IDArtikelStatusAttemptsWP PostFehlerHinweis
{{ j.id }} #{{ j.article_id }} {{ j.article_title or "-" }} {{ j.status }} {{ j.attempts }}/{{ j.max_attempts }} {% if j.wp_post_url %} #{{ j.wp_post_id }} {% elif j.wp_post_id %} #{{ j.wp_post_id }} {% else %} - {% endif %} {% if j.error_message %} {{ j.error_category }}
{{ j.error_message }}
{% else %} - {% endif %}
{{ j.error_hint or "-" }}