Module:Iteminfo/datacache
Aller à la navigation
Aller à la recherche
Documentation
Voir aussi la page anglaise du module : Module:Iteminfo/datacache. Elle pourra contenir des informations plus complètes et actuelles.
Aucune sous-page de documentation n'existe déjà pour ce module. En créer une maintenant.
-- Manage database cache for Module:Iteminfo and Module:ItemNames.
local cache = mw.ext.LuaCache
return {
-- for Module:Iteminfo/loaddata.
-- load main iteminfo datbase.
load = function()
local status, result = pcall(function ()
return mw.text.jsonDecode(cache.get(':_iteminfo:data'))
end)
if status and result then
return result
end
-- fallback
local info = require('Module:Iteminfo/data').data
-- cache it.
cache.set( ':_iteminfo:data', info)
return mw.text.jsonDecode(info)
end,
-- db for {{itemNameFromId}} {{itemIdFromName}} {{itemInternalNameFromId}} {{itemIdFromInternalName}}
loadNameDB = function()
local status, result = pcall(function ()
return mw.text.jsonDecode(cache.get(':_iteminfo:data:nameDB'))
end)
if status and result then
return result
end
-- fallback
local info = require('Module:Iteminfo/data').nameDB
-- cache it.
cache.set( ':_iteminfo:data:nameDB', info)
return mw.text.jsonDecode(info)
end,
-- purge cache.
purge = function()
cache.delete(':_iteminfo:data')
cache.delete(':_iteminfo:data:nameDB')
end,
}