Модул:Klimatska tabela/Boje — разлика између измена

Iz Vojne Enciklopedije
Пређи на навигацију Пређи на претрагу
мНема описа измене
 
м (1 измена увезена)
 
(нема разлике)

Тренутна верзија на датум 5. фебруар 2021. у 13:50

Документацију овог модула можете да направите на страници Модул:Klimatska tabela/Boje/док

--
-- KLIMATSKA TABELA - BOJE
--

w = {};
math_mod = require('Module:Math');

function w._temperature_color(val)
	local background, text_color;
 
    if val == nil then
        return {background = "#FFFFFF", 
			color = "#000000"};
    end
 
	-- background-color
    if val < -20 then background = '#6495ED'
    elseif val < -15 then background = '#8AB0FF'
    elseif val < -10 then background = '#B9D3FF'
	elseif val < -5 then background = '#CFE8FF'
	elseif val < 0 then background = '#F0F8FF'
	elseif val < 5 then background = '#FFFFEE'
	elseif val < 10 then background = '#FFFF99'
	elseif val < 15 then background = '#FFCC66'
	elseif val < 20 then background = '#FFA500'
	elseif val < 25 then background = '#FF8C00'
	elseif val < 30 then background = '#FF6347'
	elseif val < 35 then background = '#FF4040'
	else background = '#EE0000'
    end
	
	-- text-color
	if val >= 35 then text_color = "#FFFFFF";
    else text_color = "#000000";
    end
	
    return {background = background, 
		color = text_color};
end

function w._precipitation_color(val)
	local background, text_color;
 
    if val == nil then
        return {background = "#FFFFFF", 
			color = "#000000"};
    end
 
	-- background-color
    if val < 10 then background = '#EED8AE'
    elseif val < 20 then background = '#FFF8DC'
    elseif val < 30 then background = '#FFFFF0'
	elseif val < 40 then background = '#F0F8FF'
	elseif val < 50 then background = '#CFE8FF'
	elseif val < 60 then background = '#B9D3FF'
	elseif val < 70 then background = '#8AB0FF'
	elseif val < 80 then background = '#6495ED'
	elseif val < 90 then background = '#4169E1'
	elseif val < 100 then background = '#002FA7'
	elseif val < 110 then background = '#00008B'
	elseif val < 120 then background = '#000060'
	else background = '#00004F'
    end
	
	-- text-color
	if val >= 80 then text_color = "#FFFFFF";
    else text_color = "#000000";
    end
	
    return {background = background, 
		color = text_color};
end

function w._snowfall(val)
	local background, text_color;
 
    if val == nil then
        return {background = "#FFFFFF", 
			color = "#000000"};
    end
 
	-- background-color
    if val < 2 then background = '#EED8AE'
    elseif val < 5 then background = '#FFF8DC'
    elseif val < 8 then background = '#FFFFF0'
	elseif val < 10 then background = '#F0F8FF'
	elseif val < 13 then background = '#CFE8FF'
	elseif val < 15 then background = '#B9D3FF'
	elseif val < 17 then background = '#8AB0FF'
	elseif val < 20 then background = '#6495ED'
	elseif val < 22 then background = '#4169E1'
	elseif val < 25 then background = '#002FA7'
	elseif val < 27 then background = '#00008B'
	elseif val < 30 then background = '#000060'
	else background = '#00004F'
    end
	
	-- text-color
	if val >= 20 then text_color = "#FFFFFF";
    else text_color = "#000000";
    end
	
    return {background = background, 
		color = text_color};
end

function w._humidity(val)
	local background, text_color;
 
    if val == nil then
        return {background = "#FFFFFF", 
			color = "#000000"};
    end
 
	-- background-color
    if val < 8 then background = '#EED8AE'
    elseif val < 16 then background = '#FFF8DC'
    elseif val < 24 then background = '#FFFFF0'
	elseif val < 32 then background = '#F0F8FF'
	elseif val < 40 then background = '#CFE8FF'
	elseif val < 48 then background = '#B9D3FF'
	elseif val < 56 then background = '#8AB0FF'
	elseif val < 64 then background = '#6495ED'
	elseif val < 72 then background = '#4169E1'
	elseif val < 80 then background = '#002FA7'
	elseif val < 88 then background = '#00008B'
	elseif val < 96 then background = '#000060'
	else background = '#00004F'
    end
	
	-- text-color
	if val >= 64 then text_color = "#FFFFFF";
    else text_color = "#000000";
    end
	
    return {background = background, 
		color = text_color};
end

function w._sunshine_hours(val)
	local background, text_color;
 
    if val == nil then
        return {background = "#FFFFFF", 
			color = "#000000"};
    end
 
	-- background-color
    if val < 1 then background = '#929292'
    elseif val < 2 then background = '#AFAFAF'
    elseif val < 3 then background = '#D0D0D0'
	elseif val < 4 then background = '#E4E4E4'
	elseif val < 5 then background = '#F4F3F3'
	elseif val < 6 then background = '#FEFCEE'
	elseif val < 7 then background = '#F9F5C0'
	elseif val < 8 then background = '#F9F199'
	elseif val < 9 then background = '#FDCB67'
	elseif val < 10 then background = '#F6A316'
	else background = '#F18918'
    end
	
	-- text-color
    text_color = "#000000";
	
    return {background = background, 
		color = text_color};
end

function w.temperature(frame)
    local val = math_mod._cleanNumber(frame.args[1])
	local t_val = w._temperature_color(val) 
    return "background:" .. t_val.background .. "; color:" .. t_val.color .. ";"
end

function w.precipitation(frame)
    local val = math_mod._cleanNumber(frame.args[1])
	local p_val = w._precipitation_color(val) 
    return "background:" .. p_val.background .. "; color:" .. p_val.color .. ";"
end

function w.snowfall(frame)
    local val = math_mod._cleanNumber(frame.args[1])
	local p_val = w._snowfall(val) 
    return "background:" .. p_val.background .. "; color:" .. p_val.color .. ";"
end

function w.humidity(frame)
    local val = math_mod._cleanNumber(frame.args[1])
	local h_val = w._humidity(val) 
    return "background:" .. h_val.background .. "; color:" .. h_val.color .. ";"
end

function w.sunshine_hours(frame)
    local val = math_mod._cleanNumber(frame.args[1])
	local s_val = w._sunshine_hours(val) 
    return "background:" .. s_val.background .. "; color:" .. s_val.color .. ";"
end

return w