Module:ZoteroData
La documentation pour ce module peut être créée à Module:ZoteroData/doc
local p = {}
function p.getZoteroItemsFromTitle(frame)
local title = frame.args["title"]
local url = "https://api.zotero.org/groups/4893620/items?q=" .. mw.uri.encode(title) .. "&qmode=everything&format=json"
local data = mw.ext.externalData.getExternalData{
url = url,
format = "json",
data = {
"key=key",
"title=data.title",
"creators=data.creators[1].lastName",
"date=data.date",
"type=data.itemType"
}
}
local html = mw.html.create("table"):addClass("wikitable sortable")
html:tag("tr")
:tag("th"):wikitext("Clé"):done()
:tag("th"):wikitext("Titre"):done()
:tag("th"):wikitext("Auteur"):done()
:tag("th"):wikitext("Date"):done()
:tag("th"):wikitext("Type"):done()
for _, item in ipairs(data) do
local row = html:tag("tr")
row:tag("td"):wikitext(item.key)
row:tag("td"):wikitext(item.title)
row:tag("td"):wikitext(item.creators)
row:tag("td"):wikitext(item.date)
row:tag("td"):wikitext(item.type)
end
return tostring(html)
end
return p