Module:DropsLineTest: Difference between revisions

From Roat Pkz
Jump to navigation Jump to search
No edit summary
No edit summary
Line 9: Line 9:
     table.insert(output, "style=\"background-color: #FFCCCC;\" | 1/" .. inputNumber)
     table.insert(output, "style=\"background-color: #FFCCCC;\" | 1/" .. inputNumber)


     -- Calculate and add percentages with pipe symbol
     -- Define color ranges
     table.insert(output, "| style=\"background-color: #FFCCCC;\" | 1/" .. (inputNumber * 0.85)) -- 10%
     local colorRanges = {
    table.insert(output, "| style=\"background-color: #FF9999;\" | 1/" .. (inputNumber * 0.75)) -- 20%
        {1, 25, "#00FF00"},  -- Green for 1-25
     table.insert(output, "| style=\"background-color: #FF6666;\" | 1/" .. (inputNumber * 0.70)) -- 30%
        {26, 100, "#FFFF00"}, -- Yellow for 26-100
     table.insert(output, "| style=\"background-color: #FF3333;\" | 1/" .. (inputNumber * 0.65)) -- 40%
        {101, 1000, "#FFA500"} -- Orange for 101-1000
    table.insert(output, "| style=\"background-color: #FF0000;\" | 1/" .. (inputNumber * 0.60)) -- 50%
    }
 
    -- Determine color based on input number
    local color = "#FF0000" -- Default to red if not in specified ranges
     for _, range in ipairs(colorRanges) do
        local min, max, rangeColor = unpack(range)
        if inputNumber >= min and inputNumber <= max then
            color = rangeColor
            break
        end
    end
 
    -- Add output with chosen color
     table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. inputNumber)
      
      
     return table.concat(output, '\n')
     return table.concat(output, '\n')

Revision as of 17:36, 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 = {}

    -- Add the input number
    table.insert(output, "style=\"background-color: #FFCCCC;\" | 1/" .. inputNumber)

    -- 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
    }

    -- Determine color based on input number
    local color = "#FF0000" -- Default to red if not in specified ranges
    for _, range in ipairs(colorRanges) do
        local min, max, rangeColor = unpack(range)
        if inputNumber >= min and inputNumber <= max then
            color = rangeColor
            break
        end
    end

    -- Add output with chosen color
    table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. inputNumber)
    
    return table.concat(output, '\n')
end

return p