Différences entre les versions de « Module:Présentation »
Aller à la navigation
Aller à la recherche
(retrait des tests) |
(vérification supplémentaire) |
||
Ligne 47 : | Ligne 47 : | ||
title = title:subPageTitle( '1' ) | title = title:subPageTitle( '1' ) | ||
list[table.getn(list)+1] = title.fullText | list[table.getn(list)+1] = title.fullText | ||
elseif title.basePageTitle:subPageTitle( tostring(tonumber(title.subpageText)+1) ).exists then | elseif tonumber(title.subpageText) ~= nil and title.basePageTitle:subPageTitle( tostring(tonumber(title.subpageText)+1) ).exists then | ||
title = title.basePageTitle:subPageTitle( tostring(tonumber(title.subpageText)+1) ) | title = title.basePageTitle:subPageTitle( tostring(tonumber(title.subpageText)+1) ) | ||
list[table.getn(list)+1] = title.fullText | list[table.getn(list)+1] = title.fullText |
Version du 10 avril 2015 à 17:59
--[[
]]
local presentation = {}
function presentation.total( frame )
local sequence = presentation._expandSequence( mw.title.getCurrentTitle() ) return table.getn( sequence )
end
function presentation.current( frame )
local sequence = presentation._expandSequence( mw.title.getCurrentTitle() ) for i,v in pairs( sequence ) do if v == mw.title.getCurrentTitle().fullText then return i end end
end
function presentation.next( frame )
local sequence = presentation._expandSequence( mw.title.getCurrentTitle() ) for i,v in pairs( sequence ) do if v == mw.title.getCurrentTitle().fullText then return sequence[i+1] end end
end
function presentation.previous( frame )
local sequence = presentation._expandSequence( mw.title.getCurrentTitle() ) for i,v in pairs( sequence ) do if v == mw.title.getCurrentTitle().fullText then return sequence[i-1] end end
end
function presentation._expandSequence( title )
local list = {}; title = title.rootPageTitle; while true do if title:subPageTitle( '0' ).exists then title = title:subPageTitle( '0' ) list[table.getn(list)+1] = title.fullText elseif title:subPageTitle( '1' ).exists then title = title:subPageTitle( '1' ) list[table.getn(list)+1] = title.fullText elseif tonumber(title.subpageText) ~= nil and title.basePageTitle:subPageTitle( tostring(tonumber(title.subpageText)+1) ).exists then title = title.basePageTitle:subPageTitle( tostring(tonumber(title.subpageText)+1) ) list[table.getn(list)+1] = title.fullText elseif title.baseText ~= title.rootText then title = title.basePageTitle else break end end return list
end
return presentation