Module:DropsLineTest: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 10: | Line 10: | ||
{1, 25, "#00FF00"}, -- Green for 1-25 | {1, 25, "#00FF00"}, -- Green for 1-25 | ||
{26, 100, "#FFFF00"}, -- Yellow for 26-100 | {26, 100, "#FFFF00"}, -- Yellow for 26-100 | ||
{101, 1000, "#FFA500"} -- Orange for 101-1000 | {101, 1000, "#FFA500"},-- Orange for 101-1000 | ||
{1001, math.huge, "#FF0000"} -- Red for 1001+ | |||
} | } | ||
-- Determine color based on input number for each part of the output | -- Determine color based on input number for each part of the output | ||
for _, range in ipairs(colorRanges) do | for _, range in ipairs(colorRanges) do | ||
local min, max, rangeColor = unpack(range) | local min, max, rangeColor = unpack(range) | ||
if inputNumber >= min and inputNumber <= max then | if inputNumber >= min and inputNumber <= max then | ||
color = rangeColor | for i = 1, 3 do | ||
local value = inputNumber * (0.85 - (i - 1) * 0.10) | |||
local color = rangeColor | |||
if value > max then | |||
color = "#FF0000" -- Red if value exceeds maximum range | |||
end | |||
table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. value) | |||
end | |||
break | break | ||
end | end | ||
end | end | ||
return table.concat(output, '\n') | return table.concat(output, '\n') |
Revision as of 17:46, 5 May 2024
Documentation for this module may be created at Module:DropsLineTest/doc
local p = {}
-- Define a function to generate output numbers based on the input
function p.generateOutput(frame)
local inputNumber = tonumber(frame.args[1]) or 0
local output = {}
-- Define color ranges
local colorRanges = {
{1, 25, "#00FF00"}, -- Green for 1-25
{26, 100, "#FFFF00"}, -- Yellow for 26-100
{101, 1000, "#FFA500"},-- Orange for 101-1000
{1001, math.huge, "#FF0000"} -- Red for 1001+
}
-- Determine color based on input number for each part of the output
for _, range in ipairs(colorRanges) do
local min, max, rangeColor = unpack(range)
if inputNumber >= min and inputNumber <= max then
for i = 1, 3 do
local value = inputNumber * (0.85 - (i - 1) * 0.10)
local color = rangeColor
if value > max then
color = "#FF0000" -- Red if value exceeds maximum range
end
table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. value)
end
break
end
end
return table.concat(output, '\n')
end
return p