Для документации этого модуля может быть создана страница Модуль:Mount table/doc
local itemIcon = require('Модуль:Item_icon')
local p = {}
local cargo = mw.ext.cargo
local insignia = {
['Универсальная ячейка'] = '[[Файл:Универсальная ячейка знаков.png|32px|Универсальная ячейка знаков|ссылка=]]',
['универсальная ячейка'] = '[[Файл:Универсальная ячейка знаков.png|32px|Универсальная ячейка знаков|ссылка=]]',
['Ячейка просвещенных знаков'] = '[[Файл:Просвещенный знак.png|32px|Ячейка просвещенных знаков|ссылка=]]',
['ячейка просвещенных знаков'] = '[[Файл:Просвещенный знак.png|32px|Ячейка просвещенных знаков|ссылка=]]',
['Ячейка серповидных знаков'] = '[[Файл:Серповидный знак.png|32px|Ячейка серповидных знаков|ссылка=]]',
['ячейка серповидных знаков'] = '[[Файл:Серповидный знак.png|32px|Ячейка серповидных знаков|ссылка=]]',
['Ячейка украшенных знаков'] = '[[Файл:Украшенный знак.png|32px|Ячейка украшенных знаков|ссылка=]]',
['ячейка украшенных знаков'] = '[[Файл:Украшенный знак.png|32px|Ячейка украшенных знаков|ссылка=]]',
['Ячейка царственных знаков'] = '[[Файл:Царственный знак.png|32px|Ячейка царственных знаков|ссылка=]]',
['ячейка царственных знаков'] = '[[Файл:Царственный знак.png|32px|Ячейка царственных знаков|ссылка=]]',
['Ячейка шипастых знаков'] = '[[Файл:Шипастый знак.png|32px|Ячейка шипастых знаков|ссылка=]]',
['ячейка шипастых знаков'] = '[[Файл:Шипастый знак.png|32px|Ячейка шипастых знаков|ссылка=]]',
}
function p.Main( frame )
tables = 'Items'
fields = '_pageName,name,quality,icon,slot1,slot2,slot3,insignia_bonuses,equip_power,combat_power'
local args = {
where='type HOLDS "Скакун" AND quality="'..frame.args['качество']..'"',
groupBy = "_pageName" ,
orderBy = '_pageName',
}
local result = cargo.query( tables, fields, args )
local r = result[1]
local tbl = mw.html.create('table')
tbl:addClass('wikitable sortable filter-table-mount jquery-tablesorter')
tbl:tag("th"):attr('style', 'width: 15%'):wikitext("Скакун"):done()
tbl:tag("th"):attr('style', 'width: 12%'):wikitext("Ячейки знаков"):done()
tbl:tag("th"):attr('style', 'width: 20%'):wikitext("Бонусы знаков"):done()
if r['equip_power'] ~= "" then
tbl:tag("th"):wikitext("Умение экипировки"):done()
end
if r['combat_power'] ~= "" then
tbl:tag("th"):wikitext("Боевое умение"):done()
end
tbl:done()
count = 0
for k,v in pairs(tbl) do
count = count + 1
end
--Construct the rows in the table
for _,row in ipairs(result) do
local dataFilter = {row.slot1, row.slot2, row.slot3}
tr = tbl:tag("tr"):attr("data-filter", table.concat(dataFilter,', '))
tr:tag("td"):wikitext(itemIcon.Main({args={row._pageName,""}})):done()
if row.slot3 ~= "" then
tr:tag("td"):wikitext(insignia[row.slot1], ' + ', insignia[row.slot2], ' + ', insignia[row.slot3]):done()
else
tr:tag("td"):wikitext(insignia[row.slot1], ' + ', insignia[row.slot2]):done()
end
local insigniaBonuses = {}
for i in string.gmatch(row.insignia_bonuses, "[^,]+") do
table.insert(insigniaBonuses , '<li>[['..i..']]</li>')
end
tr:tag("td"):wikitext('<ul>'..table.concat(insigniaBonuses,'\n')..'</ul>'):done()
if r['equip_power'] ~= "" then
tr:tag("td"):wikitext(row.equip_power):done()
end
if r['combat_power'] ~= "" then
tr:tag("td"):wikitext(row.combat_power):done()
end
end
tr = tbl:tag("tr"):attr('style','rtext-align: center; display: none')
tr:tag("td"):attr('colspan', count):wikitext('<b>Не найдено</b>'):done()
return tbl
end
return p