Modification de Module:Rotation de contenu

Attention : vous n’êtes pas connecté(e). Votre adresse IP sera visible de tout le monde si vous faites des modifications. Si vous vous connectez ou créez un compte, vos modifications seront attribuées à votre propre nom d’utilisateur(rice) et vous aurez d’autres avantages.

La modification peut être annulée. Veuillez vérifier les différences ci-dessous pour voir si c’est bien ce que vous voulez faire, puis publier ces changements pour finaliser l’annulation de cette modification.

Version actuelle Votre texte
Ligne 1 : Ligne 1 :
local p = {}
local p = {}


function p.choose(content, fragment_size)
function p.choose(content, size)
local size = tonumber(fragment_size)
-- On retourne tout le contenu
if not size then
if not size or size >= #content then
return content
return content
end
end
local day_number = os.date("*t").yday
day_number = os.date("*t").yday
local n = day_number % #content
n = day_number % #content
m = (day_number + size - 1) % #content
if n == 0 then
if n == 0 then
n = 1
n = 1
m = m + 1
elseif m == 0 then
m = 1
n = n - 1
end
end
local gap = #content - n + 1
local fragment = {}
if n < m then
local m
fragment = { unpack(content, n, m) }
if gap < size then
m = size - gap
else
else
m = n + size - 1
end
local fragment = {}
if n > m then
fragment = { unpack(content, n) }
fragment = { unpack(content, n) }
for i = 1, m do
for i = 1, m do
table.insert(fragment, content[i])
table.insert(fragment, content[i])
end
end
else
fragment = { unpack(content, n, m) }
end
end
Ligne 38 : Ligne 34 :


function p.build(frame)  
function p.build(frame)  
local fragment_size = frame.args['nombre']
content = frame.args
local content = {}
fragment_size = frame:getParent().args[1]
for i, v in ipairs(frame.args) do
table.insert(content, v)
end
local list = '<ul class="avt-anecdotes">'
local list = '<ul>'
for i, k in ipairs(p.choose(content, fragment_size)) do
for i, k in ipairs(p.choose(content, fragment_size)) do
list = list .. '<li>' .. k .. '</li>'
list = list .. '<li>' .. k .. '</li>'
Notez bien que toutes les contributions à Les Archives de Vault-Tec sont considérées comme publiées sous les termes de la creative Commons - CC BY-NC-SA 3.0 (voir Les Archives de Vault-Tec:Copyrights pour plus de détails). Si vous ne désirez pas que vos écrits soient modifiés et distribués à volonté, merci de ne pas les soumettre ici.
Vous nous promettez aussi que vous avez écrit ceci vous-même, ou que vous l’avez copié d’une source placée dans le domaine public ou d’une ressource libre similaire. N’utilisez aucun travail sous droits d’auteur sans autorisation expresse !
Annuler Aide pour la modification (s’ouvre dans une nouvelle fenêtre)