« Module:Urldecode » : différence entre les versions
Contenu supprimé Contenu ajouté
{{urlencode:}} trimme les paramètres, et je ne vois pas de cas de figure où on souhaiterait préserver les leading/trailing spaces ; donc trimmons ici aussi, pour harmonisation et moindre surprise |
correction de bug (sournois) dans le cas où serait utilisé un paramètre "2" contenant des espaces, et uniquement des espaces |
||
Ligne 4 : | Ligne 4 : | ||
local args = frame.args |
local args = frame.args |
||
local ret = mw.text.trim( args[ 1 ] ) |
local ret = mw.text.trim( args[ 1 ] ) |
||
local enctype = args[ 2 ] and mw.text.trim( args[ 2 ] ) |
|||
if |
if enctype and enctype ~= '' then |
||
enctype = enctype:upper() |
|||
if enctype == "QUERY" or enctype == "PATH" or enctype == "WIKI" then |
if enctype == "QUERY" or enctype == "PATH" or enctype == "WIKI" then |
||
ret = mw.uri.decode( ret, enctype ) |
ret = mw.uri.decode( ret, enctype ) |
Version du 10 décembre 2023 à 04:00
[voir] [modifier] [historique] [purger]
Utilisation
La fonction urlDecode
inverse la transformation par le mot magique {{urlencode:}}
.
Exemples
{{#invoke:Urldecode|urlDecode|C%C3%B4te+d%27Ivoire}}
donne : Côte d'Ivoire{{#invoke:Urldecode|urlDecode|2+2|PATH}}
donne : 2+2
Voir aussi
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 (créer).
Voir les statistiques d'appel depuis le wikicode sur l'outil wstat et les appels depuis d'autres modules.
local p = {}
function p.urlDecode( frame )
local args = frame.args
local ret = mw.text.trim( args[ 1 ] )
local enctype = args[ 2 ] and mw.text.trim( args[ 2 ] )
if enctype and enctype ~= '' then
enctype = enctype:upper()
if enctype == "QUERY" or enctype == "PATH" or enctype == "WIKI" then
ret = mw.uri.decode( ret, enctype )
else
error( "paramètre de type d'encodage invalide" )
end
else
ret = mw.uri.decode( ret )
end
ret = ret:gsub( "{", "{" )
ret = ret:gsub( "}", "}" )
return ret
end
return p