Module:PageRef
Jump to navigation
Jump to search
Documentation for this module may be created at Module:PageRef/doc
local p = {}
local lang_module = require("Module:Lang")
local heroes_data = mw.loadJsonData("Data:HeroData.json")
local hero_keys = {}
for key, _ in pairs(heroes_data) do
table.insert(hero_keys, key)
end
local heroes_data = nil --free memory
local function is_hero(resource_name_localized)
for _, hero_key in ipairs(hero_keys) do
if lang_module.get_string(hero_key) == resource_name_localized then
return true
end
end
return false
end
-- Generates appropriate filename from resource_name_localized
p.get_file_name = function(frame)
local resource_name_localized = frame.args[1]
-- Prefix with File namespace
file_name = "File:" .. resource_name_localized
--Determine the filename to use
--Heroes use <hero_name>_MM.ext
--Items use <item_name>.ext
--Abilities use <ability_name>.ext
if is_hero(resource_name_localized) then
file_name = file_name .. "_MM"
--elseif is_item(resource_name_localized) then
--file_name = file_name .. ""
--elseif is_ability(resource_name_localized) then
--file_name = file_name .. ""
end
-- Try to grab SVG if possible
local svg_file_name = file_name .. ".svg"
if mw.title.new(svg_file_name).exists then
file_name = svg_file_name
else
file_name = file_name .. ".png"
end
return file_name
end
return p