Aller au contenu

Module:Image Du Jour

De Wikiquestia
Version datée du 13 juillet 2025 à 09:38 par Alakihel (discussion | contributions) (Page créée avec « local p = {} -- Fonction : sélectionne un fichier image au hasard depuis Modèle:Liste/ImagesDuJour function p.afficher(frame) local titreListe = "Modèle:Liste/ImagesDuJour" local page = mw.title.new(titreListe) if not page or not page.exists then return "<span style='color:red;'>Erreur : la liste des images n'existe pas.</span>" end local contenu = page:getContent() if not contenu then return "<span style='color:red;'>... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

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

local p = {}

-- Fonction : sélectionne un fichier image au hasard depuis Modèle:Liste/ImagesDuJour
function p.afficher(frame)
    local titreListe = "Modèle:Liste/ImagesDuJour"
    local page = mw.title.new(titreListe)
    if not page or not page.exists then
        return "<span style='color:red;'>Erreur : la liste des images n'existe pas.</span>"
    end

    local contenu = page:getContent()
    if not contenu then
        return "<span style='color:red;'>Erreur : contenu de la liste inaccessible.</span>"
    end

    local images = {}
    for ligne in mw.text.gsplit(contenu, "\n") do
        local nom = mw.ustring.match(ligne, "%[%[Fichier:(.-)%]%]")
        if nom then table.insert(images, nom) end
    end

    if #images == 0 then
        return "<span style='color:gray;'>Aucune image trouvée dans la liste.</span>"
    end

    math.randomseed(os.time())
    local image = images[math.random(#images)]

    return string.format("[[Fichier:%s|300px]]", image)
end

return p