« Module:RemovePrefix » : différence entre les versions

De wikiviefr
(Page créée avec « local p = {} function p.removePrefix(frame) local category = frame.args.category or "CVCandidat" local prefix = frame.args.prefix or "CVCandidat/" local pages = mw.site.stats.pagesInCategory(category) local result = {} for _, page in ipairs(pages) do local title = page.title local displayTitle = mw.ustring.gsub(title, "^" .. prefix, "") -- Retire le préfixe table.insert(result, string.format("* %s", title,... »)
 
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
local p = {}
local p = {}


function p.removePrefix(frame)
function p.listPages(frame)
     local category = frame.args.category or "CVCandidat"
     local category = frame.args.category or ""
     local prefix = frame.args.prefix or "CVCandidat/"
     local prefix = frame.args.prefix or ""
     local pages = mw.site.stats.pagesInCategory(category)
     local categoryObj = mw.site.categories[category]
     local result = {}
 
   
    if not categoryObj then
     for _, page in ipairs(pages) do
        return "La catégorie n'existe pas ou est vide."
    end
 
     local result = "{| class='wikitable sortable'\n|+ Liste des pages sans préfixe\n! Nom de la page\n"
 
     for page in categoryObj:pages() do
         local title = page.title
         local title = page.title
         local displayTitle = mw.ustring.gsub(title, "^" .. prefix, "") -- Retire le préfixe
         if prefix ~= "" and title:sub(1, #prefix) == prefix then
         table.insert(result, string.format("* [[%s|%s]]", title, displayTitle))
            title = title:sub(#prefix + 1) -- Supprimer le préfixe
         end
        result = result .. "|-\n| [[" .. page.title .. "|" .. title .. "]]\n"
     end
     end
      
 
     return table.concat(result, "\n")
     result = result .. "|}"
     return result
end
end


return p
return p

Version du 22 décembre 2024 à 13:24

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

local p = {}

function p.listPages(frame)
    local category = frame.args.category or ""
    local prefix = frame.args.prefix or ""
    local categoryObj = mw.site.categories[category]

    if not categoryObj then
        return "La catégorie n'existe pas ou est vide."
    end

    local result = "{| class='wikitable sortable'\n|+ Liste des pages sans préfixe\n! Nom de la page\n"

    for page in categoryObj:pages() do
        local title = page.title
        if prefix ~= "" and title:sub(1, #prefix) == prefix then
            title = title:sub(#prefix + 1) -- Supprimer le préfixe
        end
        result = result .. "|-\n| [[" .. page.title .. "|" .. title .. "]]\n"
    end

    result = result .. "|}"
    return result
end

return p