diff --git a/src/routers/sources.py b/src/routers/sources.py index b0265d3..3c06602 100644 --- a/src/routers/sources.py +++ b/src/routers/sources.py @@ -34,7 +34,7 @@ class GlobalSourceCreate(BaseModel): name: str = Field(min_length=1, max_length=200) url: Optional[str] = None domain: Optional[str] = None - source_type: str = Field(default="rss_feed", pattern="^(rss_feed|web_source|excluded|telegram_channel)$") + source_type: str = Field(default="rss_feed", pattern="^(rss_feed|web_source|excluded|telegram_channel|podcast_feed)$") category: str = Field(default="sonstige") status: str = Field(default="active", pattern="^(active|inactive)$") notes: Optional[str] = None @@ -44,7 +44,7 @@ class GlobalSourceUpdate(BaseModel): name: Optional[str] = Field(default=None, max_length=200) url: Optional[str] = None domain: Optional[str] = None - source_type: Optional[str] = Field(default=None, pattern="^(rss_feed|web_source|excluded|telegram_channel)$") + source_type: Optional[str] = Field(default=None, pattern="^(rss_feed|web_source|excluded|telegram_channel|podcast_feed)$") category: Optional[str] = None status: Optional[str] = Field(default=None, pattern="^(active|inactive)$") notes: Optional[str] = None @@ -597,7 +597,7 @@ async def run_health_check_stream( "message": f"HTTP {resp.status_code} - nicht erreichbar"}) else: checks.append({"type": "reachability", "status": "ok", "message": "Erreichbar"}) - if source["source_type"] == "rss_feed": + if source["source_type"] in ("rss_feed", "podcast_feed"): text = resp.text[:20000] if "RSS-Feed + - + + diff --git a/src/static/js/sources.js b/src/static/js/sources.js index 9a91bea..eb864a4 100644 --- a/src/static/js/sources.js +++ b/src/static/js/sources.js @@ -33,6 +33,7 @@ const TYPE_LABELS = { rss_feed: "RSS-Feed", web_source: "Webquelle", telegram_channel: "Telegram-Kanal", + podcast_feed: "Podcast-Feed", excluded: "Ausgeschlossen", };