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

Aucun résumé des modifications
Aucun résumé des modifications
 
Ligne 17 : Ligne 17 :
end
end
return data.json
return data.json
end
-- Fonction utilitaire de formatage
local function htmlDecode(str)
if not str then return nil end
return str
:gsub(":", ":")
:gsub("[", "[")
:gsub("]", "]")
:gsub(""", '"')
:gsub("&", "&")
end
end


Ligne 42 : Ligne 53 :
function p.alternateLink(frame)
function p.alternateLink(frame)
local data = fetchZoteroData(frame.args[1])
local data = fetchZoteroData(frame.args[1])
if not data or not data.links or not data.links.alternate then return "" end
if data and data.links and data.links.alternate and data.links.alternate.href then
return mw.text.nowiki(data.links.alternate.href or "")
return htmlDecode(data.links.alternate.href)
end
return ""
end
end


Ligne 91 : Ligne 104 :


function p.url(frame)
function p.url(frame)
return getField(frame, { "data", "url" })
local data = fetchZoteroData(frame.args[1])
if data and data.data and data.data.url then
return htmlDecode(data.data.url)
end
return ""
end
end