"""Podcast MVP API endpoints. Job ID: MTAD-IMPL-2025-11-18-CL""" from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from app.database import get_db from app.models import PodcastEpisode router = APIRouter() @router.get("/episodes") async def list_episodes(skip: int = 0, limit: int = 20, db: Session = Depends(get_db)): """List all podcast episodes.""" episodes = db.query(PodcastEpisode).filter(PodcastEpisode.published_at.isnot(None)).order_by(PodcastEpisode.published_at.desc()).offset(skip).limit(limit).all() return {"items": episodes} @router.get("/episodes/{episode_id}") async def get_episode(episode_id: str, db: Session = Depends(get_db)): """Get a specific episode.""" episode = db.query(PodcastEpisode).filter(PodcastEpisode.id == episode_id).first() if not episode: from fastapi import HTTPException, status raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Episode not found") return episode @router.post("/episodes") async def create_episode(title: str, audio_url: str, db: Session = Depends(get_db)): """Create podcast episode (admin only).""" return {"message": "Episode creation not yet implemented"}