2 -- Copyright (C) 2012,2013 Toni Gundogdu <legatvs@gmail.com>
4 -- This file is part of libquvi-scripts <http://quvi.sourceforge.net/>.
6 -- This program is free software: you can redistribute it and/or
7 -- modify it under the terms of the GNU Affero General Public
8 -- License as published by the Free Software Foundation, either
9 -- version 3 of the License, or (at your option) any later version.
11 -- This program is distributed in the hope that it will be useful,
12 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
13 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 -- GNU Affero General Public License for more details.
16 -- You should have received a copy of the GNU Affero General
17 -- Public License along with this program. If not, see
18 -- <http://www.gnu.org/licenses/>.
21 -- Parse scan properties.
25 local paths
= {'/embed/([-_%w]+)', '/%w/([-_%w]+)', '/([-_%w]+)'}
26 local hosts
= {'youtu%.be', 'youtube%.com'}
28 local Y
= require
'quvi/youtube'
29 local U
= require
'socket.url'
31 local scheme
= U
.parse(qargs
.input_url
).scheme
33 for _
,h
in pairs(hosts
) do
34 for _
,p
in pairs(paths
) do
35 local r
= table.concat({h
,p
})
36 for v
in qargs
.content
:gmatch(r
) do
38 local u
= table.concat({scheme
, '://youtube.com/watch?v=', v
})
39 Y
.append_if_unique(qargs
, u
)
47 -- vim: set ts=2 sw=2 tw=72 expandtab: