More actions
m default herolabs_text_size to blank |
m Reverted edit by 149.28.42.29 (talk) to last revision by Sur Tag: Rollback |
||
(6 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
local heroes_data = mw.loadJsonData("Data:HeroData.json") | local heroes_data = mw.loadJsonData("Data:HeroData.json") | ||
local hero_release_module = require('Module:HeroData/release') | |||
local lang_module = require('Module:Lang') | local lang_module = require('Module:Lang') | ||
Line 10: | Line 11: | ||
local sticker_size = frame.args['sticker_size'] | local sticker_size = frame.args['sticker_size'] | ||
local herolabs_text_size = frame.args['herolabs_text_size'] | local herolabs_text_size = frame.args['herolabs_text_size'] | ||
local debug_mode = frame.args['debug_mode'] | |||
local lang_code = frame.args['lang_code'] | |||
if | -- Turn debug_mode from string to bool, default to false | ||
if debug_mode == nil then | |||
debug_mode = false | |||
elseif debug_mode == 'true' then | |||
debug_mode = true | |||
elseif debug_mode == 'false' then | |||
debug_mode = false | |||
end | |||
if in_herolabs ~= 'true' and in_herolabs ~= 'false' then | if in_herolabs ~= 'true' and in_herolabs ~= 'false' then | ||
return 'in_herolabs must be either true or false | return 'in_herolabs must be either true or false' | ||
end | end | ||
local subpage = '' | |||
if lang_code ~= nil and lang_code ~= 'en' then subpage = '/' .. lang_code end | |||
--Iterate heroes | --Iterate heroes | ||
Line 23: | Line 36: | ||
-- if herolabs is requested, only needs to have herolabs=true | -- if herolabs is requested, only needs to have herolabs=true | ||
-- otherwise, needs to be not disabled, in development, nd herolabs is nil or false | -- otherwise, needs to be not disabled, in development, nd herolabs is nil or false | ||
local this_hero_status = hero_release_module.get_hero_release_status(hero_key) | |||
if this_in_herolabs == nil then this_in_herolabs = false end | if this_in_herolabs == nil then this_in_herolabs = false end | ||
if ((in_herolabs == 'true' and | if ((in_herolabs == 'true' and this_hero_status == 'HeroLabs') or | ||
(in_herolabs == 'false' and | (in_herolabs == 'false' and this_hero_status == 'Released')) then | ||
local is_recommended = hero_data['IsRecommended'] | local is_recommended = hero_data['IsRecommended'] | ||
Line 34: | Line 48: | ||
end | end | ||
local hero_str = lang_module.get_string(hero_key) .. '|recommended=' .. tostring(is_recommended) | local sub_page_str = '' | ||
local hero_str = '|name=' .. lang_module.get_string(hero_key, nil, 'en') .. '|link=' .. lang_module.get_string(hero_key, 'en') .. '|subpage=' .. subpage .. '|recommended=' .. tostring(is_recommended) | |||
table.insert(heroes, hero_str) | table.insert(heroes, hero_str) | ||
Line 47: | Line 64: | ||
local ret = '' | local ret = '' | ||
for index, hero_name in ipairs(heroes) do | for index, hero_name in ipairs(heroes) do | ||
ret = ret .. '{{Hero card2 | ret = ret .. '{{Hero card2' .. hero_name | ||
ret = ret .. '|text_size=' .. text_size | ret = ret .. '|text_size=' .. text_size | ||
ret = ret .. '|herolabs=' .. in_herolabs | ret = ret .. '|herolabs=' .. in_herolabs | ||
Line 59: | Line 76: | ||
ret = string.sub(ret, 1, -(string.len(' '))-1) | ret = string.sub(ret, 1, -(string.len(' '))-1) | ||
return frame:preprocess(ret) | |||
if debug_mode then | |||
return ret | |||
else -- evaluate wikitext if not in debug mode | |||
return frame:preprocess(ret) | |||
end | |||
end | end | ||
return p | return p |