« Module:Utils » : différence entre les versions
De Eco - Wiki Français
| [version vérifiée] | [version vérifiée] |
Contenu remplacé par « local p = {} --- Trims and parses the args into a table, then returns the table function p.normalise(args) for k, v in pairs(args) do v = mw.text.trim(tostring(v)) if v ~= '' then args[k] = v end end return args end --- Trims and parses the args into a table, then returns the table --- @author User:Avaren function p.normaliseArgs(frame) local origArgs = frame:getParent().args local args = {} for k, v in pairs(origArgs) do v = mw.text.trim(to... » Balise : Contenu remplacé |
Aucun résumé des modifications Balise : Révoqué |
||
| Ligne 62 : | Ligne 62 : | ||
end | end | ||
return count | return count | ||
end | |||
function p.getLanguageCode() | |||
local language = mw.language.getContentLanguage() | |||
local languageCode = language:getCode() | |||
return languageCode | |||
end | |||
function p.getLanguageName() | |||
local languageName = "English" | |||
local language = mw.language.getContentLanguage() | |||
local languageCode = language:getCode() | |||
if languageCode == "ru" then languageName = "Russian" end | |||
if languageCode == "de" then languageName = "German" end | |||
if languageCode == "fr" then languageName = "French" end | |||
return languageName | |||
end | end | ||
return p | return p | ||
Version du 30 juin 2025 à 14:46
Ce module fournit des fonctions utilitaires utilisées par d'autres modules.
Utilisation
Ajoutez la ligne de code suivante en haut de votre fichier :
local Utils = require("Module:Utils")
-- Vous pouvez ensuite appeler les fonctions de ce module dans votre script. Par exemple :
local tableLength = Utils.tableLen(maTable)
local p = {}
--- Trims and parses the args into a table, then returns the table
function p.normalise(args)
for k, v in pairs(args) do
v = mw.text.trim(tostring(v))
if v ~= '' then
args[k] = v
end
end
return args
end
--- Trims and parses the args into a table, then returns the table
--- @author User:Avaren
function p.normaliseArgs(frame)
local origArgs = frame:getParent().args
local args = {}
for k, v in pairs(origArgs) do
v = mw.text.trim(tostring(v))
if v ~= '' then
args[k] = v
end
end
return args
end
function p.CheckId(name)
local itemData = mw.loadData("Module:ItemData")
local itemTable = itemData.items[name]
if itemTable == nil then return 'NoItem' end
local IconName = itemTable.ID
return IconName
end
--- Check if item is in given array.
--- @author User:Avaren
local function in_array(item, array)
-- Should only use on short arrays
local set = {}
for _, l in ipairs(array) do
set[l] = true
end
return set[item] ~= nil
end
--- Calculate the length of a table by iterating over every item in it.
--- @author User:Avaren
function p.tableLen(tbl)
local count = 0
for _, v in ipairs(tbl) do
if v == nil then
return count
end
count = count + 1
end
return count
end
function p.getLanguageCode()
local language = mw.language.getContentLanguage()
local languageCode = language:getCode()
return languageCode
end
function p.getLanguageName()
local languageName = "English"
local language = mw.language.getContentLanguage()
local languageCode = language:getCode()
if languageCode == "ru" then languageName = "Russian" end
if languageCode == "de" then languageName = "German" end
if languageCode == "fr" then languageName = "French" end
return languageName
end
return p