From 649b36da356659f7cb077d12de1c94fbdce72715 Mon Sep 17 00:00:00 2001 From: Fabio Ritrovato Date: Thu, 18 Feb 2010 23:13:13 +0100 Subject: [PATCH] Lua SD: simplify fmc.lua --- share/lua/sd/fmc.lua | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/share/lua/sd/fmc.lua b/share/lua/sd/fmc.lua index 9ca3ebe29c..ffcebf86ee 100644 --- a/share/lua/sd/fmc.lua +++ b/share/lua/sd/fmc.lua @@ -24,29 +24,29 @@ require "simplexml" function main() local tree = simplexml.parse_url("http://www.archive.org/download/freemusiccharts.songs/fmc.xml") - for i = 1, table.getn(tree.children) do - simplexml.add_name_maps( tree.children[i] ) - local node = vlc.sd.add_node( {title=tree.children[i].children_map["description"][1].children[1]} ) - if tonumber( tree.children[i].children_map["songcount"][1].children[1] ) > 0 then + for _, show_node in ipairs( tree.children ) do + simplexml.add_name_maps( show_node ) + local node = vlc.sd.add_node( {title=show_node.children_map["description"][1].children[1]} ) + if tonumber( show_node.children_map["songcount"][1].children[1] ) > 0 then local songs_node = node:add_node( {title="Songs"} ) - for j = 1, table.getn( tree.children[i].children_map["songs"][1].children ) do - _, _, artist, title = string.find( tree.children[i].children_map["songs"][1].children[j].children_map["name"][1].children[1], "(.+)%s*-%s*(.+)" ) - local rank = tree.children[i].children_map["songs"][1].children[j].children_map["rank"][1].children[1] + for _, song_node in ipairs( show_node.children_map["songs"][1].children ) do + _, _, artist, title = string.find( song_node.children_map["name"][1].children[1], "(.+)%s*-%s*(.+)" ) + local rank = song_node.children_map["rank"][1].children[1] if rank ~= nil then rank = "Rank: " .. rank else rank = "Rank: N/A" end - local votes = tree.children[i].children_map["songs"][1].children[j].children_map["votes"][1].children[1] + local votes = song_node.children_map["votes"][1].children[1] if votes ~= nil then - votes = "Votes: " .. rank + votes = "Votes: " .. votes else votes = "Votes: N/A" end - songs_node:add_subitem( {url=tree.children[i].children_map["songs"][1].children[j].children_map["url"][1].children[1],title=title,artist=artist,description=rank .. ", " .. votes} ) + songs_node:add_subitem( {url=song_node.children_map["url"][1].children[1],title=title,artist=artist,description=rank .. ", " .. votes} ) end end - node:add_subitem( {title=tree.children[i].children_map["date"][1].children[1] .. " MP3 Podcast",url=tree.children[i].children_map["podcastmp3"][1].children[1]} ) - node:add_subitem( {title=tree.children[i].children_map["date"][1].children[1] .. " OGG Podcast",url=tree.children[i].children_map["podcastogg"][1].children[1]} ) + node:add_subitem( {title=show_node.children_map["date"][1].children[1] .. " MP3 Podcast",url=show_node.children_map["podcastmp3"][1].children[1]} ) + node:add_subitem( {title=show_node.children_map["date"][1].children[1] .. " OGG Podcast",url=show_node.children_map["podcastogg"][1].children[1]} ) end end -- 2.39.2