Module:HTML coding

From Historical Hastings

Documentation for this module may be created at Module:HTML coding/doc

local p = {}

function p.decode( frame )
    local oFrameParent = frame:getParent()
    local s = frame.args[1] 
    if (oFrameParent) then s = oFrameParent.args[1] end
return mw.text.decode( s, true )

Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters.  This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
function p._getParameters( frame_args, arg_list )
    local new_args = {};
    local index = 1;
    local value;
    for i,arg in ipairs( arg_list ) do
        value = frame_args[arg]
        if value == nil then
            value = frame_args[index];
            index = index + 1;
        new_args[arg] = value;
    return new_args;

return p