Module:Sandbox/Clockery
Appearance
-- Google Code-in 2017, Introduction to Lua in Wikipedia.
-- Google Code-in 2017, Create your own Lua module on English Wikipedia
local p = {}
function p.hello( frame )
return "Hello, world!"
end
p.Hi = function(frame)
strName = frame.args.name or "Jimbo"
return "Hello from Lua to my friend " .. strName .. ".<br>"
end
p.Hitchhiker = function(frame)
num = frame.args.num or 42
if (num == 42)
then msg = num .. "is the answer, but what is the question?<br>"
else msg = num .. " is not the answer to the Ultimate Question of Life, the Universe, and Everything, please try again.<br>"
end
return msg
end
p.temperature = function(frame)
cel = frame.args.celsius
fah = (cel * 9 / 5) + 32
return cel .. " degrees Celsius is " .. fah .. " degrees Fahrenheit.<br>"
end
p.temperature2 = function(frame)
c = tonumber(frame.args.c) or 0
fah = (c * 9 / 5) + 32
msg = c .. " degrees Celsius is " .. fah .. " degrees Fahrenheit.<br>"
if c > 9 then
msg = msg .. "It is warm.<br>"
else
msg = msg .. "It is cold.<br>"
end
return msg
end
p.times = function(frame)
local num = tonumber( frame.args.num ) or 2
local out = "Times table of " .. num .. "<br>"
for i = 1, 12 do
out = out .. num .. " times " .. i .. " equals " .. i * num .. "<br>"
end
return out
end
p.mum = function(frame)
local family = {"Dad", "Mum", "Uncle Stan", "Aunty Elsie", "Brian", "Mama Coco", "Mama Imelda", "Miguel"}
local number = #family
local msg = ""
for i = 1, number do
msg = msg .. "Hello " .. family[i] .. "<br>"
end
return msg
end
p.langnames = function( frame )
local langs = mw.language.fetchLanguageNames()
local langlist = ""
local count = 0
for key, value in pairs( langs ) do
langlist = langlist .. key .. " - " .. value .. "<br>"
count = count + 1
end
return langlist .. "<br>= " .. count .. " languages"
end
p.pageinfo = function (frame)
local pagetitle = frame.args.ptitle
local newobj = mw.title.new(pagetitle)
local id = newobj.id
if id == 0 then
returntext1 = " does not exist "
else
returntext1 = " exists "
end
if newobj.isRedirect == true then
returntext2 = " is a redirect.<br>"
else
returntext2 = " is not a redirect.<br>"
end
return pagetitle .. returntext1 .. "and" .. returntext2
end
return p