Module:PageRef: Difference between revisions
Appearance
m if the icon doesn't exist at all, return blank from get_file_name |
m hero file no longer requires _MM at the end, simplifying time complexity greatly |
||
Line 7: | Line 7: | ||
end | end | ||
local heroes_data = nil --free memory | local heroes_data = nil --free memory | ||
-- Generates appropriate filename from resource_name_localized | -- Generates appropriate filename from resource_name_localized | ||
Line 27: | Line 17: | ||
file_name = alt_file_name | file_name = alt_file_name | ||
else | else | ||
file_name = resource_name_localized | |||
end | end | ||
-- Prefix with File namespace | -- Prefix with File namespace |
Revision as of 04:59, 22 December 2024
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
-- Generates appropriate filename from resource_name_localized
p.get_file_name = function(frame)
local resource_name_localized = frame.args[1]
local alt_file_name = frame.args[2]
--alt_file_name is optional; if not provided, assume resource_name_localized is correct
if alt_file_name ~= nil and alt_file_name ~= '' then
file_name = alt_file_name
else
file_name = resource_name_localized
end
-- Prefix with File namespace
file_name = "File:" .. file_name
-- Try to grab SVG if possible
local svg_file_name = file_name .. ".svg"
local png_file_name = file_name .. ".png"
if mw.title.new(svg_file_name).exists then
file_name = svg_file_name
elseif mw.title.new(png_file_name).exists then
file_name = png_file_name
else
file_name = ""
end
return file_name
end
return p