Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

« Module:Infobox/Configs » : différence entre les versions

De Nefald
Hiob (discussion | contributions)
Aucun résumé des modifications
Balise : Révoqué
Hiob (discussion | contributions)
Aucun résumé des modifications
Balise : Révoqué
Ligne 1 : Ligne 1 :
local configs = {}
local configs = {}


-- Charge dynamiquement les configurations depuis les sous-pages
-- Fonction pour charger dynamiquement les configurations
local function loadConfig(configName)
function configs.load(configName)
     local success, config = pcall(require, 'Module:Infobox/Configs/' .. configName)
    -- Si déjà en cache, retourner directement
    if configs[configName] then
        return configs[configName]
    end
   
    -- Essayer de charger la configuration
     local moduleName = 'Module:Infobox/Configs/' .. configName
    local success, config = pcall(require, moduleName)
   
     if success then
     if success then
        -- Mettre en cache pour les prochaines utilisations
        configs[configName] = config
         return config
         return config
     else
     else
         -- Fallback en cas d'erreur
         -- Erreur plus descriptive
         mw.log('Erreur lors du chargement de la configuration: ' .. configName)
         error('Type d\'infobox inconnu : ' .. configName .. ' (Module: ' .. moduleName .. ')')
        return nil
    end
end
 
-- Charge toutes 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


return configs
return configs

Version du 24 septembre 2025 à 14:11

La documentation pour ce module peut être créée à Module:Infobox/Configs/doc

local configs = {}

-- Fonction pour charger dynamiquement les configurations
function configs.load(configName)
    -- Si déjà en cache, retourner directement
    if configs[configName] then
        return configs[configName]
    end
    
    -- Essayer de charger la configuration
    local moduleName = 'Module:Infobox/Configs/' .. configName
    local success, config = pcall(require, moduleName)
    
    if success then
        -- Mettre en cache pour les prochaines utilisations
        configs[configName] = config
        return config
    else
        -- Erreur plus descriptive
        error('Type d\'infobox inconnu : ' .. configName .. ' (Module: ' .. moduleName .. ')')
    end
end

return configs