From 8ba97d7d0adf48be9effa7fb952436184e4d3467 Mon Sep 17 00:00:00 2001 From: Toni Gundogdu Date: Wed, 12 Sep 2012 15:39:17 +0300 Subject: [PATCH] playlist/youtube.lua: Rewrite for can_parse_url --- share/playlist/youtube.lua | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/share/playlist/youtube.lua b/share/playlist/youtube.lua index abe81c4..230ba97 100644 --- a/share/playlist/youtube.lua +++ b/share/playlist/youtube.lua @@ -23,11 +23,10 @@ local YouTube = {} -- Utility functions unique to this script -- Identify the playlist script. function ident(qargs) - local A = require 'quvi/accepts' - local r = { - accepts = A.accepts(qargs.input_url, {"youtube%.com"}, nil, {"list=%w+"}) + return { + domains = table.concat({'youtube.com'}, ','), + can_parse_url = YouTube.can_parse_url(qargs) } - return r end -- Parse playlist properties. @@ -82,6 +81,19 @@ end -- Utility functions -- +function YouTube.can_parse_url(qargs) + local U = require 'quvi/url' + local t = U.parse(qargs.input_url) + if t and t.scheme and t.scheme:lower():match('^https?$') + and t.host and t.host:lower():match('youtube%.com$') + and t.query and t.query:lower():match('list=%w+') + then + return true + else + return false + end +end + function YouTube.config_url(qargs, start_index, max_results) return string.format( -- Refer to http://is.gd/0msY8X 'http://gdata.youtube.com/feeds/api/playlists/%s?v=2' -- 2.11.4.GIT