Module:LoyasseTable

La bibliothèque libre.

La documentation pour ce module peut être créée à Module:LoyasseTable/Documentation

-- Dérivé du rendu de [[Module:Table]]
function table(frame)
    local args = frame.args;
    local res = '';

    local line_offset = 0;
    while args[line_offset + 1] ~= nil do
        local name = args[line_offset + 1];
        local zone = args[line_offset + 2];
        local number = args[line_offset + 3];
        local page = args[line_offset + 4];
        line_offset = line_offset + 4;
        
        if page == nil then
           res = res .. '<div class="error">{{LoyasseTable}} : nombre de paramètres non multiple de 4 !</div>';
           break;
        end
        
        res = res
        .. '<div class="tableItem" style="position:relative;margin:.125em auto;background:#FFF;line-height:normal">'
        ..   '<div style="margin-right:0px">'
        ..     '<div style="float:left;width:100%">'
        ..       '<div style="position:relative;z-index:2;">'
        ..         '<span style="background:#FFF">' .. name .. '&nbsp;</span>'
        ..       '</div>'
        ..       '<div class="ws-noexport" style="position:relative;margin-left:1em">'
        ..         '<div style="position:absolute;z-index:1;bottom:.3em;width:100%;border-bottom:0.135em dotted"></div>'
        ..       '</div>'
        ..     '</div>'
        ..     '<div class="ws-noexport" style="float:right">'
        ..       '<div style="position:absolute;z-index:2;bottom:0;right:0;text-indent:0;text-align:right;white-space:nowrap">'
        ..         '<span style="background:#FFF">&nbsp;'
        ..           '<span style="display:inline-block; width:1em">' .. zone .. '</span>'
        ..           '<span style="display:inline-block; width:3em">' .. number .. '</span>'
        ..           '<span style="display:inline-block; width:3em">' .. page .. '</span>'
        ..         '</span>'
        ..       '</div>'
        ..     '</div>'
        ..     '<div style="clear:both"></div>'
        ..   '</div>'
        .. '</div>';
    end
    
    return res;
end

local p = {};
 
function p.table(frame)
    return table(frame:getParent());
end
 
return p