יחידה:ParamValidator

מתוך אוצר מהרי''ט
קפיצה לניווט קפיצה לחיפוש

ניתן ליצור תיעוד על היחידה הזאת בדף יחידה:ParamValidator/תיעוד

local p = {}

function p.validate(options)
    local frame = options.frame
    local args = options.args
    local params = options.params
    
    for param, rules in pairs(params) do
        if rules.required and (args[param] == nil or args[param] == '') then
            return false, 'Parameter "' .. param .. '" is required.'
        end
        if rules.isa == 'number' and tonumber(args[param]) == nil then
            return false, 'Parameter "' .. param .. '" should be a number.'
        end
        if rules.isa == 'string' and type(args[param]) ~= 'string' then
            return false, 'Parameter "' .. param .. '" should be a string.'
        end
    end
    
    return true
end

return p