« Module:Rotation de contenu » : différence entre les versions

aucun résumé des modifications
Kharmitch (discussion | contributions)
Aucun résumé des modifications
Kharmitch (discussion | contributions)
Aucun résumé des modifications
 
(8 versions intermédiaires par le même utilisateur non affichées)
Ligne 4 : Ligne 4 :
local size = tonumber(fragment_size)
local size = tonumber(fragment_size)
if not fragment_size or fragment_size > #content then
if not size or size >= #content then
return content
return content
end
end
local day_number = os.date("*t").yday
local day_number = os.date("*t").yday
local n = day_number % #anecdotes
local n = day_number % #content
local m = (day_number + number_of_anecdotes - 1) % #anecdotes
if n == 0 then
if n == 0 then
n = 1
n = 1
m = m + 1
end
elseif m == 0 then
m = 1
local gap = #content - n + 1
n = n - 1
local m
if gap < size then
m = size - gap
else
m = n + size - 1
end
end
local fragment = {}
local fragment = {}
if n < m then
if n > m then
fragment = { unpack(content, n, m) }
else
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 34 : Ligne 38 :


function p.build(frame)  
function p.build(frame)  
content = frame.args
local fragment_size = frame.args['nombre']
fragment_size = frame.args['nombre']
local content = {}
for i, v in ipairs(frame.args) do
table.insert(content, v)
end
local list = '<ul class="avt-anecdotes">'
local list = '<ul class="avt-anecdotes">'
Bureaucrate, commentadmin, emailconfirmed, Administrateurs d’interface, staff, Administrateur
62 734

modifications