Module:Random Video
From Comprehensible Input Wiki
Documentation for this module may be created at Module:Random Video/doc
local p = {}
function randomVideo()
local g = mw.ext.externaldata.getWebData {
url = 'https://comprehensibleinputwiki.com/rvid.php',
format = 'JSON'
}
vidJson = '[ '
h=0
for k, v in ipairs(g) do
main_index = v['main_index']
id = v['id']
difficulty = v['difficulty']
title = string.gsub(v['title'], "[\\\"]", "\\%1")
language_name = (v['language_name'] ~= nil and v['language_name'] or '')
channel = v['channel']
comma = (h < 99 and ',' or '')
h = h + 1
vidJson = vidJson .. '{"main_index": ' .. main_index .. ', "id": "' .. id .. '", "difficulty": "' .. difficulty .. '", "title": "' .. title .. '", "language": "' .. language_name .. '", "channel": "' .. channel .. '"}' .. comma .. ' '
end
vidJson = vidJson .. ']'
return vidJson
end
function dump(o)
if type(o) == 'table' then
local s = '{ '
for k,v in pairs(o) do
if type(k) ~= 'number' then k = '"'..k..'"' end
s = s .. '\n['..k..'] = ' .. dump(v) .. ','
end
return s .. '} '
else
return tostring(o)
end
end
p.randomVideo = function()
return randomVideo()
end
return p