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/Plugin » : différence entre les versions

De Nefald
Hiob (discussion | contributions)
statut > autocatégorisation
Hiob (discussion | contributions)
mAucun résumé des modifications
Ligne 19 : Ligne 19 :
         return nil
         return nil
     end,
     end,
    -- Configuration des valeurs validées
    statusField = {
        allowedValues = {
            ['installé'] = {
                display = '[[Plugin installé|Installé]]',
                category = 'Plugins installés'
            },
            ['non-installé'] = {
                display = '[[Plugin non-installé|Non-installé]]',
                category = 'Plugins non-installés'
            }
        }
    },
    typeField = {
        allowedValues = {
            ['économie'] = {
                display = 'Économie',
                category = 'Plugins d\'économie'
            },
            ['pvp'] = {
                display = 'PvP',
                category = 'Plugins de PvP'
            },
            ['roleplay'] = {
                display = 'Roleplay',
                category = 'Plugins de roleplay'
            },
            ['administration'] = {
                display = 'Administration',
                category = 'Plugins d\'administration'
            },
            ['protection'] = {
                display = 'Protection',
                category = 'Plugins de protection'
            },
            ['cosmétique'] = {
                display = 'Cosmétique',
                category = 'Plugins cosmétiques'
            },
            ['communication'] = {
                display = 'Communication',
                category = 'Plugins de communication'
            },
            ['utilitaire'] = {
                display = 'Utilitaire',
                category = 'Plugins utilitaires'
            },
            ['mini-jeu'] = {
                display = 'Mini-jeu',
                category = 'Plugins de mini-jeux'
            },
            ['monde'] = {
                display = 'Monde',
                category = 'Plugins de monde'
            },
            ['inventaire'] = {
                display = 'Inventaire',
                category = 'Plugins d\'inventaire'
            },
            ['transport'] = {
                display = 'Transport',
                category = 'Plugins de transport'
            },
            ['magie'] = {
                display = 'Magie',
                category = 'Plugins de magie'
            },
            ['mob'] = {
                display = 'Mob',
                category = 'Plugins de mobs'
            }
        }
    },


     sections = {
     sections = {
Ligne 105 : Ligne 30 :
                             return nil
                             return nil
                         end
                         end
                       
                        -- Configuration locale des types
                        local typeValues = {
                            ['économie'] = 'Économie',
                            ['pvp'] = 'PvP',
                            ['roleplay'] = 'Roleplay',
                            ['administration'] = 'Administration',
                            ['protection'] = 'Protection',
                            ['cosmétique'] = 'Cosmétique',
                            ['communication'] = 'Communication',
                            ['utilitaire'] = 'Utilitaire',
                            ['mini-jeu'] = 'Mini-jeu',
                            ['monde'] = 'Monde',
                            ['inventaire'] = 'Inventaire',
                            ['transport'] = 'Transport',
                            ['magie'] = 'Magie',
                            ['mob'] = 'Mob'
                        }
                          
                          
                         local cleanValue = mw.text.trim(mw.ustring.lower(value))
                         local cleanValue = mw.text.trim(mw.ustring.lower(value))
                        local typeConfig = config.typeField.allowedValues[cleanValue]
                          
                          
                         if typeConfig then
                         if typeValues[cleanValue] then
                             return typeConfig.display
                             return typeValues[cleanValue]
                         else
                         else
                             return '<span style="color: red; font-weight: bold;">Type invalide: "' .. value .. '"</span>[[Catégorie:Pages avec erreurs]]'
                             return '<span style="color: red; font-weight: bold;">Type invalide: "' .. value .. '"</span>[[Catégorie:Pages avec erreurs]]'
Ligne 124 : Ligne 66 :
                             return nil
                             return nil
                         end
                         end
                       
                        -- Configuration locale des statuts
                        local statusValues = {
                            ['installé'] = '[[Plugin installé|Installé]]',
                            ['non-installé'] = '[[Plugin non-installé|Non-installé]]'
                        }
                          
                          
                         local cleanValue = mw.text.trim(mw.ustring.lower(value))
                         local cleanValue = mw.text.trim(mw.ustring.lower(value))
                        local statusConfig = config.statusField.allowedValues[cleanValue]
                          
                          
                         if statusConfig then
                         if statusValues[cleanValue] then
                             return statusConfig.display
                             return statusValues[cleanValue]
                         else
                         else
                             return '<span style="color: red; font-weight: bold;">Statut invalide: "' .. value .. '"</span>[[Catégorie:Pages avec erreurs]]'
                             return '<span style="color: red; font-weight: bold;">Statut invalide: "' .. value .. '"</span>[[Catégorie:Pages avec erreurs]]'
Ligne 217 : Ligne 164 :
     categories = function(args, config, frame)
     categories = function(args, config, frame)
         local cats = {}
         local cats = {}
       
        -- Configuration des catégories par type
        local typeCategories = {
            ['économie'] = 'Plugins d\'économie',
            ['pvp'] = 'Plugins de PvP',
            ['roleplay'] = 'Plugins de roleplay',
            ['administration'] = 'Plugins d\'administration',
            ['protection'] = 'Plugins de protection',
            ['cosmétique'] = 'Plugins cosmétiques',
            ['communication'] = 'Plugins de communication',
            ['utilitaire'] = 'Plugins utilitaires',
            ['mini-jeu'] = 'Plugins de mini-jeux',
            ['monde'] = 'Plugins de monde',
            ['inventaire'] = 'Plugins d\'inventaire',
            ['transport'] = 'Plugins de transport',
            ['magie'] = 'Plugins de magie',
            ['mob'] = 'Plugins de mobs'
        }
       
        -- Configuration des catégories par statut
        local statusCategories = {
            ['installé'] = 'Plugins installés',
            ['non-installé'] = 'Plugins non-installés'
        }
          
          
         -- Catégorie basée sur le type
         -- Catégorie basée sur le type
         if args.type then
         if args.type then
             local cleanType = mw.text.trim(mw.ustring.lower(args.type))
             local cleanType = mw.text.trim(mw.ustring.lower(args.type))
             local typeConfig = config.typeField.allowedValues[cleanType]
             if typeCategories[cleanType] then
            if typeConfig then
                 table.insert(cats, typeCategories[cleanType])
                 table.insert(cats, typeConfig.category)
             end
             end
         end
         end
Ligne 230 : Ligne 200 :
         if args.status then
         if args.status then
             local cleanStatus = mw.text.trim(mw.ustring.lower(args.status))
             local cleanStatus = mw.text.trim(mw.ustring.lower(args.status))
             local statusConfig = config.statusField.allowedValues[cleanStatus]
             if statusCategories[cleanStatus] then
            if statusConfig then
                 table.insert(cats, statusCategories[cleanStatus])
                 table.insert(cats, statusConfig.category)
             end
             end
         end
         end
Les témoins (''cookies'') nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de témoins.