Module:DropsLineTest: Difference between revisions

From Roat Pkz
Jump to navigation Jump to search
No edit summary
No edit summary
 
(51 intermediate revisions by the same user not shown)
Line 1: Line 1:
-- Define a function to assign background color based on input numerical value
local p = {}
local function assignBackgroundColor(value)
 
     local color = ""
-- Define a function to generate output numbers based on the input
    -- Define your conditions and corresponding colors
function p.generateOutput(frame)
    if value == 1 then
     local inputNumber = tonumber(frame.args[1]) or 0
        color = "#afeeee" -- Light blue color
     local output = {}
     elseif value == 1/25 then
 
        color = "#56e156" -- Light green color
     -- Add the input number
     elseif value == 1/99.99 then
     table.insert(output, "\" | 1/" .. inputNumber)
        color = "#ffed4c" -- Yellow color
     elseif value == 1/999.99 then
        color = "#ff863c" -- Orange color
    elseif value == 1/9999999 then
        color = "#ff6262" -- Red color
    else
        color = "#FFFFFF" -- Default color (white)
    end
    return color
end


-- Define a function to create a table row with colored cells
    -- Calculate percentages and choose color based on the percentage
local function createColoredRow(data)
    local percentages = {0.85, 0.75, 0.70, 0.65, 0.60} -- Percentages
     local row = "{| class=\"wikitable\"\n"
     local colors = {"#ff9999", "#7aa7ff", "#d699ff", "#fff59e", "#b3f1ff"} -- Corresponding colors
     for _, value in ipairs(data) do
   
         local color = assignBackgroundColor(value)
     for i, percent in ipairs(percentages) do
         row = row .. "| style=\"background-color: " .. color .. ";\" | " .. value .. "\n"
         local value = math.floor(inputNumber * percent)
         local color = colors[i]
        table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. value)
     end
     end
     row = row .. "|}"
      
     return row
     return table.concat(output, '\n')
end
end


-- Test the script with your provided data
return p
local testData = {1, 1/25, 1/99.99, 1/999.99, 1/9999999}
print(createColoredRow(testData))

Latest revision as of 17:59, 7 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 = {}

    -- Add the input number
    table.insert(output, "\" | 1/" .. inputNumber)

    -- Calculate percentages and choose color based on the percentage
    local percentages = {0.85, 0.75, 0.70, 0.65, 0.60} -- Percentages
    local colors = {"#ff9999", "#7aa7ff", "#d699ff", "#fff59e", "#b3f1ff"} -- Corresponding colors
    
    for i, percent in ipairs(percentages) do
        local value = math.floor(inputNumber * percent)
        local color = colors[i]
        table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. value)
    end
    
    return table.concat(output, '\n')
end

return p