Module:DYK: Difference between revisions
Jump to navigation
Jump to search
m Protected "Module:DYK" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite)) |
No edit summary |
||
| Line 26: | Line 26: | ||
tinsert(ret, sformat("*...that %s?", my_fact)) | tinsert(ret, sformat("*...that %s?", my_fact)) | ||
end | end | ||
end | |||
return table.concat(ret, "\n") | |||
end | |||
function p.full() | |||
local ret = {} | |||
local tinsert = table.insert | |||
local sformat = string.format | |||
for i, v in ipairs(facts) do | |||
tinsert(ret, sformat("*...that %s?", v)) | |||
end | end | ||
Revision as of 06:07, 18 September 2024
Documentation for this module may be created at Module:DYK/doc
local p = {}
local facts = mw.loadJsonData("module:DYK/list")["facts"]
function p.subset(frame)
local ret = {}
local facts_len = 0
for i in ipairs(facts) do facts_len = facts_len + 1 end
math.randomseed(math.floor(os.time()/(60*60*24)))
local tinsert = table.insert
local mrandom = math.random
local sformat = string.format
while #ret < tonumber(frame.args[1]) do
local my_fact = facts[mrandom(1, facts_len)]
local do_insert = true
for i, v in ipairs(ret) do
if v == my_fact then
do_insert = false
break
end
end
if do_insert then
tinsert(ret, sformat("*...that %s?", my_fact))
end
end
return table.concat(ret, "\n")
end
function p.full()
local ret = {}
local tinsert = table.insert
local sformat = string.format
for i, v in ipairs(facts) do
tinsert(ret, sformat("*...that %s?", v))
end
return table.concat(ret, "\n")
end
return p