Module:CommandTable
De Eco - Wiki Français
Documentation
Ce module fournit la fonctionnalité de backend du Modèle:ChatCommands.
Si le modèle est utilisé, ce module crée une liste en utilisant les détails des modules suivants :
Crédit
La liste originale des commandes de chat a été créée par Utilisateur:StalEF.
local p = {}
local Utils = require('Module:Utils')
local Lang = Utils.getLanguageName()
function p.main()
local wiki = ''
local wikiuser = ''
local wikiadmin = ''
local wikidev = ''
local commandsData = require("Module:CommandData")
local commands = commandsData.commands
-- Table header
local header = '<table class="wikitable sortable">\n'
header = header .. '<tr>\n'
header = header .. '<th>Access<br>level</th>\n'
header = header .. '<th>Command</th>\n'
header = header .. '<th>Short<br>call</th>\n'
header = header .. '<th>Description<br>Arguments</th>\n'
header = header .. '</tr>\n'
wiki = header
for _, v in pairs(commands) do
local row = ''
-- Sécurisation parent
local parent = v.parent or ''
if parent ~= '' then parent = parent .. ' ' end
-- Construction arguments
local argsText = ''
if v.parameters then
local function fmt(arg)
if not arg then return '' end
return "<br><b>" .. arg[1] .. "</b> (" .. arg[2] .. ")"
end
argsText =
fmt(v.parameters.Arg1)
.. fmt(v.parameters.Arg2)
.. fmt(v.parameters.Arg3)
.. fmt(v.parameters.Arg4)
.. fmt(v.parameters.Arg5)
.. fmt(v.parameters.Arg6)
else
argsText = '-'
end
-- Shortcut
local shortcut = v.shortCut or ''
if shortcut ~= '' then
shortcut = '/' .. shortcut
end
-- Description
local help = ''
if v.helpText then
help = v.helpText[Lang] or v.helpText.English or ''
end
-- Ligne HTML
row = row .. '<tr>\n'
row = row .. '<td>' .. (v.level or '') .. '</td>\n'
row = row .. '<td><b>/' .. parent .. (v.command or '') .. '</b></td>\n'
row = row .. '<td><b>' .. shortcut .. '</b></td>\n'
row = row .. '<td>' .. help .. argsText .. '</td>\n'
row = row .. '</tr>\n'
-- Tri par niveau d’accès
if v.level == 'User' then
wikiuser = wikiuser .. row
elseif v.level == 'Admin' then
wikiadmin = wikiadmin .. row
elseif v.level == 'DevTier' then
wikidev = wikidev .. row
end
end
wiki = wiki .. wikiuser .. wikiadmin .. wikidev .. '</table>'
return wiki
end
return p