Module:DropsLineTest: Difference between revisions

From Roat Pkz
Jump to navigation Jump to search
No edit summary
No edit summary
 
(53 intermediate revisions by the same user not shown)
Line 1: Line 1:
local p = {}
local p = {}


function p.determineColor(r)
-- Define a function to generate output numbers based on the input
     if tonumber(r) <= 1 then
function p.generateOutput(frame)
        return "#afeeee"
     local inputNumber = tonumber(frame.args[1]) or 0
    elseif tonumber(r) <= 25 then
     local output = {}
        return "#56e156"
 
     elseif tonumber(r) <= 100 then
     -- Add the input number
        return "#ffed4c"
     table.insert(output, "\" | 1/" .. inputNumber)
     elseif tonumber(r) <= 1000 then
        return "#ff863c"
     elseif tonumber(r) <= 9999999 then
        return "#ff6262"
    else
        return "#ffffff"
    end
end


function p.determineCellStyle(r, n)
    -- Calculate percentages and choose color based on the percentage
     r = tonumber(r) or 0 -- Convert r to a number or default to 0 if nil
     local percentages = {0.85, 0.75, 0.70, 0.65, 0.60} -- Percentages
     mw.log("Value of r: " .. r) -- Output the value of r to the debug log
     local colors = {"#ff9999", "#7aa7ff", "#d699ff", "#fff59e", "#b3f1ff"} -- Corresponding colors
     local color
      
     if n == 1 then
     for i, percent in ipairs(percentages) do
        color = p.determineColor(r)
         local value = math.floor(inputNumber * percent)
         mw.log("Color chosen based on determineColor: " .. color) -- Output the chosen color to the debug log
         local color = colors[i]
    elseif r <= 30 then
         table.insert(output, "| style=\"background-color: " .. color .. ";\" | 1/" .. value)
         color = "#56e156"
         mw.log("Color chosen: " .. color) -- Output the chosen color to the debug log
    else
        color = "#afeeee"
        mw.log("Color chosen: " .. color) -- Output the chosen color to the debug log
     end
     end
     return string.format('style="background-color: %s;"', color)
   
     return table.concat(output, '\n')
end
end


return p
return p

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