Aller au contenu

Module:Multiparamètres

Cette page fait l’objet d’une mesure de semi-protection étendue.
Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 7 janvier 2017 à 02:29 et modifiée en dernier par Od1n (discuter | contributions) (code Lua pour Modèle:Multiparamètres). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

 Documentation[voir] [modifier] [historique] [purger]

Fonctions fournies par ce module :

local p = {}

function p.main(frame)

    local args = frame:getParent().args
    local trimFunc = mw.text.trim -- cache accès global

    local gras = (args.gras and args.gras ~= '')
    local items = {}

    for i,v in ipairs(args) do
        local item = trimFunc(v)
        if item ~= '' then
            if gras then
                item = "'''" .. item .. "'''"
            end
            items[#items + 1] = item
        end
    end

    if #items == 0 then
        return ''
    elseif #items == 1 then
        return items[1]
    else
        -- le paramètre "et" peut être défini à vide, exemple : [[Modèle:Module biblio/responsabilité principale]]
        local dernierSeparateur = (args.et and args.et or 'et')

        return table.concat(items, ', ', 1, #items - 1) .. ' ' .. dernierSeparateur .. ' ' .. items[#items]
    end

end

return p