« Module:Infobox/Configs » : différence entre les versions
De Nefald
Autres actions
Aucun résumé des modifications Balise : Révoqué |
Aucun résumé des modifications Balise : Révoqué |
||
| Ligne 1 : | Ligne 1 : | ||
local configs = {} | local configs = {} | ||
-- | -- Charge dynamiquement les configurations depuis les sous-pages | ||
function | local function loadConfig(configName) | ||
local success, config = pcall(require, 'Module:Infobox/Configs/' .. configName) | |||
if success then | if success then | ||
return config | return config | ||
else | else | ||
-- | -- Fallback en cas d'erreur | ||
mw.log('Erreur lors du chargement de la configuration: ' .. configName) | |||
return nil | |||
end | |||
end | |||
-- Ne pas charger immédiatement, juste déclarer les configurations disponibles | |||
-- configs.Edifice = loadConfig('Edifice') | |||
-- configs.Localite = loadConfig('Localite') | |||
-- configs.Monde = loadConfig('Monde') | |||
-- configs.Personnage = loadConfig('Personnage') | |||
-- Fonction pour ajouter dynamiquement d'autres configurations | |||
function configs.load(configName) | |||
if not configs[configName] then | |||
configs[configName] = loadConfig(configName) | |||
end | end | ||
return configs[configName] | |||
end | end | ||
-- Métatable pour chargement automatique | |||
setmetatable(configs, { | |||
__index = function(t, key) | |||
return t.load(key) | |||
end | |||
}) | |||
return configs | return configs | ||