Home
Random
Recent changes
Special pages
Community portal
Preferences
About Stockhub
Disclaimers
Search
User menu
Talk
Contributions
Create account
Log in
Editing
Module:Sandbox/Userring
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
--Userring Google Code-in 2019, Introduction to Lua in Wikipedia --Lua Task 2 - Working with modules local p = {} function p.hello( frame ) return "Hello, world!" end p.Hi = function(frame) strName = frame.args.name or "Jimmy" return "Hello from Lua to my friend " .. strName .. ".<br>" end function p.converttemp(frame) cels = tonumber(frame.args.celsius) or 0 fahr = ((cels * 9)/5) + 32 msg = "".. cels .." degrees Celsius is ".. fahr .." in degrees Fahrenheit." if cels > 9 then msg2 = "It is warm." else msg2 = "It is cold." end msg = msg .. msg2 return msg end -- Task 4 function p.timestable(frame) local numb = tonumber( frame.args.numb ) or 2 local out = numb .. " Times table<br>" for i = 1, 12 do currentout = i * numb currentmsg = numb .. " times by " .. i .. " equals " .. currentout out = out .. currentmsg .. "<br>" end return out end function p.people(frame) local friends = {"Agnetha", "Betty", "Carlos", "Davinder", "Eloise", "Name", "Namer", "Naming"} local msg = "The index iterating way:" .. "<br>" for i = 1, #friends do msg = msg .. "Hello " .. friends[i] .. "<br>" end msg = msg .. "<br>" .. "The ipairs() way: " .. "<br>" for i, friend in ipairs(friends) do msg = msg .. "Hello " .. friends[i] .. "<br>" end return msg end function p.sent(frame) local txt = frame.args.text or "" local cap = string.upper(string.sub(txt, 1, 1)) local uncap = string.sub(txt, 2) local out = cap .. uncap return out end function p.unpack(frame) local dmy = frame.args.dmydate or "" local d, m, y = string.match(dmy, "(%d+) (%w+) (%d+)") return "Year = " .. y .. "<br>Day = " .. d .. "<br>Month = " .. m end function p.langs(frame) local langslist = mw.language.fetchLanguageNames() local out = "" local count = 0 for k, v in pairs(langslist) do out = out .. k .. " - " .. v .. "<br>" count = count + 1 end return out .. "<br>= " .. count .. " languages" end function p.fallbacklangs(frame) local fallbacklangcode = frame.args.langcode local fallbacklanglist = mw.language.getFallbacksFor(fallbacklangcode) local fallbackout = "" for a, b in pairs(fallbacklanglist) do fallbackout = fallbackout .. a .." - " .. b .. "<br>" end return fallbackout end p.pgtitle = function( frame ) local title = frame.args.title local ttlobj = mw.title.new( title ) local txt = ttlobj.text return txt end function p.pginfo(frame) local title = frame.args.title or "User:Userring" if title == nil or title == "" then title = "User:Userring" end local ttlobj = mw.title.new(title) if ttlobj == nil or ttlobj == "" then ttlobj = mw.title.new("User:Userring") end local txt = ttlobj.text local ex = ttlobj.exists local isr = ttlobj.isRedirect exout = " does not exist" isrout = " and is not a redirect" if ex == true then exout = " does exist" end if isr == true then isrout = " and is a redirect" end return txt .. exout .. isrout end -- Get date function p.getdate(frame) local qid = frame.args.qid local prop = frame.args.prop local valtbl = mw.wikibase.getBestStatements(qid, prop) local timestamp = valtbl[1].mainsnak.datavalue.value.time timestamp = string.sub(timestamp, 2, 11) return timestamp end function p.getfulldate(frame) local qid = frame.args.qid local prop = frame.args.prop local monthname = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" } local valtbl = mw.wikibase.getBestStatements(qid, prop) local timestamp = valtbl[1].mainsnak.datavalue.value.time timestamp = string.sub(timestamp, 2, 11) local year = string.sub(timestamp, 1, 4) local month = monthname[tonumber(string.sub(timestamp, 6, 7))] local day = string.sub(timestamp, 9, 10) return day .." ".. month .. " " .. year end function p.getitem(frame) local qid = frame.args.qid local prop = frame.args.prop local valtbl = mw.wikibase.getBestStatements(qid, prop) local id = valtbl[1].mainsnak.datavalue.value.id local id_in_words = mw.wikibase.getLabel(id) return id_in_words end return p
Summary:
Please note that all contributions to Stockhub may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Stockhub:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Template used on this page:
Module:Sandbox/Userring/doc
(
edit
)