Ferdigstill oppgave 30.7: podcast import wizard
- Inkluder samlinger med rss-trait (ikke bare podcast-trait) i dropdown - Fiks slug-lesing fra traits.publishing.slug - Installer synops-import-podcast til /usr/local/bin - Marker oppgave 30.7 som ferdig i tasks.md
This commit is contained in:
parent
62b1ecd0b6
commit
a469614ca1
2 changed files with 6 additions and 5 deletions
|
|
@ -251,7 +251,8 @@ pub async fn podcast_collections(
|
|||
SELECT id, title, COALESCE(metadata, '{}'::jsonb)
|
||||
FROM nodes
|
||||
WHERE node_kind = 'collection'
|
||||
AND metadata->'traits'->'podcast' IS NOT NULL
|
||||
AND (metadata->'traits'->'podcast' IS NOT NULL
|
||||
OR metadata->'traits'->'rss' IS NOT NULL)
|
||||
ORDER BY title
|
||||
"#,
|
||||
)
|
||||
|
|
@ -265,8 +266,9 @@ pub async fn podcast_collections(
|
|||
let collections: Vec<PodcastCollection> = rows
|
||||
.into_iter()
|
||||
.map(|(id, title, metadata)| {
|
||||
let slug = metadata
|
||||
.get("publishing")
|
||||
let traits = metadata.get("traits");
|
||||
let slug = traits
|
||||
.and_then(|t| t.get("publishing"))
|
||||
.and_then(|p| p.get("slug"))
|
||||
.and_then(|s| s.as_str())
|
||||
.map(|s| s.to_string());
|
||||
|
|
|
|||
3
tasks.md
3
tasks.md
|
|
@ -434,8 +434,7 @@ prøveimport-flyt.
|
|||
|
||||
### Import
|
||||
- [x] 30.6 `synops-import-podcast` CLI: importer eksisterende podcast fra RSS-feed. Parse metadata, last ned lydfiler/artwork/transkripsjoner til CAS, opprett noder med edges. Duplikatdeteksjon via `<guid>`. `--dry-run` for forhåndsvisning. Idempotent: kjør flere ganger, bare nye episoder importeres.
|
||||
- [~] 30.7 Prøveimport-flyt i frontend: "Importer podcast"-wizard i admin. Steg 1: lim inn RSS-URL, vis forhåndsvisning av episoder. Steg 2: importer (kan ta tid for mange episoder). Steg 3: sjekk resultat, sammenlign feeds. Steg 4: re-importer nye episoder når klar. Steg 5: aktiver 301-redirect på gammel host.
|
||||
> Påbegynt: 2026-03-19T00:10
|
||||
- [x] 30.7 Prøveimport-flyt i frontend: "Importer podcast"-wizard i admin. Steg 1: lim inn RSS-URL, vis forhåndsvisning av episoder. Steg 2: importer (kan ta tid for mange episoder). Steg 3: sjekk resultat, sammenlign feeds. Steg 4: re-importer nye episoder når klar. Steg 5: aktiver 301-redirect på gammel host.
|
||||
|
||||
### Eksport og redirect
|
||||
- [ ] 30.8 Feed-redirect: `redirect_feed`-felt i podcast-trait. Når satt: Caddy returnerer 301 for feed-URL. Brukeren kan alltid flytte bort. Admin-UI med én-klikks aktivering og advarsel.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue