Open main menu
Home
Random
Donate
Recent changes
Special pages
Community portal
Preferences
About Stockhub
Disclaimers
Search
User menu
Talk
Contributions
Create account
Log in
Editing
Module:Sandbox/0xF8E8/yearsago
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!
functions = {} function functions.nyearsago(frame) current_year = tonumber(os.date("%Y")) given_year = tonumber(frame.args[1]) connector = false capitalize = false if frame.args[2] == "true" then connector = true end if frame.args[3] == "true" then capitalize = true end return "<span title=\"" .. given_year .. "\">" .. spelledout(current_year - given_year, connector, capitalize) .. " years ago</span>" end function functions.rand(frame) math.randomseed(os.time()) num = math.random(1, tonumber(frame.args[1])) return num end function basicdigits(input_number) digits = {"", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"} teens = {"", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen"} tens = {"", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety"} function oneto99(inp) if inp == 0 then return "" elseif inp < 10 then return digits[inp + 1] elseif inp <= 90 and inp % 10 == 0 then return tens[inp / 10 + 1] elseif inp > 9 and inp < 20 then return teens[inp - 9] elseif inp > 19 and inp < 100 then hyphen = "-" if inp % 10 == 0 then hyphen = "" end return tens[(inp - (inp % 10))/10 + 1] .. hyphen .. digits[inp % 10 + 1] end end if input_number < 100 then return oneto99(input_number) elseif input_number > 99 and input_number < 1000 then return digits[(input_number - (input_number % 100)) / 100 +1] .. " hundred" .. connector .. oneto99(input_number % 100) end end function spelledout(given_number, connect, capitalize) connector = " " full_string = "" if tonumber(given_number) == 0 then return "zero" end if connect == true then connector = " and " end suffixes = {"", "thousand", "million", "billion", "trillion", "quadrillion", "quintillion", "sextillion", "septillion", "octillion", "nonillion", "decillion"} j = 1 for i=string.len(given_number), 1, -3 do strend = i - 2 if strend < 1 then strend = 1 end spacing = "" if full_string ~= "" then spacing = " " end full_string = basicdigits(tonumber(string.sub(given_number, strend, i))) .. " " .. suffixes[j] .. spacing .. full_string j = j + 1 end if capitalize == true then return full_string:gsub("^%l", string.upper) else return full_string end end function functions.spelledout(frame) return spelledout(frame.args[1]) end function functions.loopnum(frame) str = "" for i=1, tonumber(frame.args[1]) do str = str .. "\n\n" .. spelledout(i) end return str end return functions
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/0xF8E8/yearsago/doc
(
edit
)