Module:Weblink
Apparence
[voir] [modifier] [historique] [purger]
Transforme des textes en lien externe
Utilisation
Fonctions :
makelink(lien, texte)– crée un lien verslienet affiche le textetexte, ou à défaut, affiche l'URL du lien moins le "http://" initial. Ne retourne rien silienest nul ou égal à "-".makelinks(liste, séparateur)– crée des liens vers toutes les URL indiquées dans la tablelisteet les sépare par le paramètreséparateur.
Exemples
Pour des exemples, voir la page de test permettant de tester diverses modifications apportées.
La documentation de ce module est générée par le modèle {{Documentation module}}.
Elle est incluse depuis sa sous-page de documentation. Veuillez placer les catégories sur cette page-là.
Les éditeurs peuvent travailler dans le bac à sable (modifier).
Voir les statistiques d'appel depuis le wikicode sur l'outil wstat et les appels depuis d'autres modules.
local p = {}
function p.makelink(url, showntext)
if (not url) or (url == "-") then
return nil
end
--I validation de l'url (paramètre URL)
url = mw.text.trim(url)
-- II texte à afficher (paramètre "showntext")
--- valeur spéciale : aucun texte
if showntext == "-" then
return url
end
--- laissé vide : texte basé sur l'URL
if not showntext then
if mw.ustring.sub(url, 1, 1) == "[" then
return url
end
if mw.ustring.sub(url, 1, 19) == '<span class="url">[' then
-- résultat produit par [[Module:URL]]
return url
end
local space = mw.ustring.find(url, ' ') -- si le nom du site est passé par mégarde dans l'URL, le séparer
if space then
local full = url
url = mw.ustring.sub(full, 1, space - 1)
showntext = mw.ustring.sub(full, space + 1)
else
showntext = string.gsub( url, 'https?://', '')
---- remove trailing slash
if string.sub(showntext, #showntext, #showntext) == '/' then
showntext = string.sub(showntext, 1, #showntext - 1)
end
end
end
return '[' .. url .. ' ' .. showntext .. ']'
end
function p.makelinks(stringlist, separator)
if not type(stringlist) == table then
return error('stringlist should be table')
end
if not separator then
separator = '<br />'
end
for i, j in pairs(stringlist) do
stringlist[i] = p.makelink(j)
end
return table.concat(stringlist, separator)
end
return p