]> git.sesse.net Git - vlc/blob - share/lua/sd/appletrailers.lua
3afd1846801207cc32a5a9455d9eea7ba96233e7
[vlc] / share / lua / sd / appletrailers.lua
1 --[[
2  $Id$
3
4  Copyright © 2010 VideoLAN and AUTHORS
5
6  Authors: Ilkka Ollakka <ileoo at videolan dot org >
7
8  This program is free software; you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation; either version 2 of the License, or
11  (at your option) any later version.
12
13  This program is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  GNU General Public License for more details.
17
18  You should have received a copy of the GNU General Public License
19  along with this program; if not, write to the Free Software
20  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
21 --]]
22
23 function descriptor()
24     return { title="Apple Trailers" }
25 end
26
27 function find( haystack, needle )
28     local _,_,r = string.find( haystack, needle )
29     return r
30 end
31
32 function main()
33     fd = vlc.stream( "http://trailers.apple.com/trailers/iphone/home/feeds/just_added.json" )
34     if not fd then return nil end
35     options = {":http-user-agent='iPhone'"}
36     while true
37     do
38          line = fd:readline()
39          if not line then break end
40          if string.match( line, "title" ) and string.match( line, "hd\":true")then
41             title = vlc.strings.resolve_xml_special_chars( find( line, "title\":\"(.-)\""))
42             art = find( line, "poster\":\"(.-)\"")
43             url = find( line, "location\":\"(.-)\"")
44             trailertype = ""
45             trailertype = find( line, "type\":\"(.-)\"")
46             vlc.msg.err(trailertype)
47             if trailertype then
48                trailertype = string.gsub( trailertype, " ", "")
49                trailertype = string.lower( trailertype )
50             else
51                trailertype = "trailer"
52             end
53             url = "http://trailers.apple.com"..url..trailertype.."/"
54             vlc.sd.add_item( { path = url, name=title, title=title, options=options, arturl=art})
55          end
56     end
57 end