Mercurial > prosody-modules
comparison mod_pubsub_feeds/feeds.lib.lua @ 2378:649f733aa3dc
mod_pubsub_feeds/feeds.lib: Fix converting RSS items to more than one Atom entry (thanks walduhu)
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 19 Nov 2016 18:48:49 +0100 |
parents | 85762420a2c0 |
children | c402b273f2e3 |
comparison
equal
deleted
inserted
replaced
2377:02532f28b207 | 2378:649f733aa3dc |
---|---|
62 -- Translate a single item to atom | 62 -- Translate a single item to atom |
63 local function translate_rss(rss_feed) | 63 local function translate_rss(rss_feed) |
64 local feed = st.stanza("feed", { xmlns = "http://www.w3.org/2005/Atom" }); | 64 local feed = st.stanza("feed", { xmlns = "http://www.w3.org/2005/Atom" }); |
65 local channel = rss_feed:get_child("channel"); | 65 local channel = rss_feed:get_child("channel"); |
66 -- TODO channel properties | 66 -- TODO channel properties |
67 feed:tag("entry"); | |
68 for item in channel:childtags("item") do | 67 for item in channel:childtags("item") do |
68 feed:tag("entry"); | |
69 for tag in item:childtags() do | 69 for tag in item:childtags() do |
70 local translator = rss2atom[tag.name]; | 70 local translator = rss2atom[tag.name]; |
71 if translator then | 71 if translator then |
72 translator(feed, tag); | 72 translator(feed, tag); |
73 end | 73 end |
74 end | 74 end |
75 feed:reset(); | |
75 end | 76 end |
76 feed:reset(); | |
77 return feed; | 77 return feed; |
78 end | 78 end |
79 | 79 |
80 return { translate_rss = translate_rss } | 80 return { translate_rss = translate_rss } |