Module:Boucle

From Wikipedia

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

--Bacasable
local p = {}

    --Fonction hello : Affichage de "Hello world!" classique
    --Le paramètre s est une chaine de caractère qui est concaténé avec la chaine a
    function p.hello(frame)
        local s = frame.args["s"]
        local a = "Hello world!" .. s
       return a
    end
    
    --Fonction wikitable : 
    --
    function p.wikitable(frame)
        local deb = '{|class="wikitable' .. ' sortable"\n'
        local cor = "!Classement (".. frame.args[1] .. ")\n" .. "!Meilleure<br />position\n"
        .. "|-\n" .. "|" .. frame.args[2] .. "\n" .. '|style="text-align: center;"|' .. frame.args[3] .. "\n"
        .. "|-\n" .. "|" .. frame.args[4] .. "\n" .. '|style="text-align: center;"|' .. frame.args[5] .. "\n"
        local fin = "|}\n"
        a = deb .. cor .. fin
       return a
    end

    --Fonction boucle : affiche n fois la chaine de caractère "Test "
    --Le paramètre n est invoqué lorsque le modèle est appelé, sinon, la valeur est de (entier)30
    --{{Boucle}} contenant "{{#invoke:Boucle|boucle}}" : {{Boucle}} != {{Boucle|n=100}}
    function p.boucle(frame)
        local arguments = frame:getParent().args
        local n = arguments.n or 30
        a = ""
        for i = 1, n do
            concat(a, "Test ")
        end
        return a
    end
    
    function p.concat(a, b)
            a = a .. b
        return a
    end
 
return p