Module:Test2: Difference between revisions

From ProleWiki, the proletarian encyclopedia
m (Using raw os.time() function)
m (Refining capture so that it captures more than a single word)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
function splitLines(text)
    local lines = {}
    for line in text:gmatch("[^\r\n]+") do
        table.insert(lines, line)
    end
    return lines
end
local p = {}
local p = {}


function p.randomNumber(frame)
function p.Sitename(frame)
math.randomseed(os.time())
local extDataTable = mw.ext.externalData.getExternalData(frame.args[1])[1]["__text"]
local min = tonumber(frame.args[1]) or 0
local dataLines = splitLines(extDataTable)
local max = tonumber(frame.args[2]) or 100
local sitename = ''
return math.random(min, max)
for i,line in ipairs(dataLines) do
if line:match("og:site_name") then
sitename = line:match('content="([^"]+)"')
break
end
end
return sitename
end
end


return p
return p

Latest revision as of 12:36, 23 April 2024

function splitLines(text)
    local lines = {}
    for line in text:gmatch("[^\r\n]+") do
        table.insert(lines, line)
    end
    return lines
end

local p = {}

function p.Sitename(frame)
	local extDataTable = mw.ext.externalData.getExternalData(frame.args[1])[1]["__text"]
	local dataLines = splitLines(extDataTable)
	local sitename = ''
	for i,line in ipairs(dataLines) do
		if line:match("og:site_name") then
			sitename = line:match('content="([^"]+)"')
			break
		end
	end
	return sitename
end

return p