Modul:SK/Helper

Izvor: Hrvatska internetska enciklopedija
Inačica 736281 od 26. ožujak 2026. u 12:43 koju je unio WikiSysop (razgovor | doprinosi)
(razl) ←Starija inačica | vidi trenutačnu inačicu (razl) | Novija inačica→ (razl)
Prijeđi na navigaciju Prijeđi na pretraživanje

Script error: The function "nonexistent" does not exist.

local h = {}

-- Funkcija koja popravlja sve: razmake, tablice i pretvara u broj ako treba
local function fix(val, asNumber)
    if type(val) == 'table' then val = val[1] end
    if type(val) == 'string' then 
        val = val:match("^%s*(.-)%s*$") -- Briše razmake (Trim)
    end
    if asNumber then
        return tonumber(val)
    end
    return val
end

-- Format broja s tisućicama
function h.num(n)
    local num = fix(n, true)
    if not num then return "" end
    local s = tostring(math.floor(num))
    local i, j, minus, int, fraction = s:find('^([-+]?)(%d+)([.]?%d*)$')
    int = int:reverse():gsub('(%d%d%d)', '%1 '):reverse():gsub('^ ', '')
    return minus .. int .. fraction
end

-- Format površine
function h.area(a)
    local num = fix(a, true)
    if not num then return "" end
    return string.format("%.2f", num):gsub("%.", ",") .. " km²"
end

-- Format gustoće
function h.density(d)
    local num = fix(d, true)
    if not num then return "" end
    return string.format("%.1f", num):gsub("%.", ",") .. " st./km²"
end

-- Za naziv (čisti tekst)
function h.text(t)
    return fix(t, false) or ""
end

function h.pop(p) return h.num(p) end

return h