Модуль: Infobox: различия между версиями 🔗
Материал из VEDA Wiki
Sphynkx (обсуждение | вклад) Нет описания правки |
Sphynkx (обсуждение | вклад) Нет описания правки |
||
Строка 24: | Строка 24: | ||
function p.event_members( frame ) | function p.event_members( frame ) | ||
local t = { | local t = {} | ||
local name = frame.args[1] | local name = frame.args[1] | ||
for i in string.gmatch(name, "[^;]+") do | for i in string.gmatch(name, "[^;]+") do | ||
Строка 72: | Строка 70: | ||
<td align="left" width="10%" bgcolor="#{{#dplvar:boxbgcolor}}" style="font-weight: bold;">Общее число:</td> | <td align="left" width="10%" bgcolor="#{{#dplvar:boxbgcolor}}" style="font-weight: bold;">Общее число:</td> | ||
<td>не менее | <td>не менее | ||
]] .. #t/2 .. '</td></tr | ]] .. #t/2 .. '</td></tr>') | ||
local out = table.concat(t, "~") | |||
out = [[<div {{DivWrapOpts}}> | |||
titla | |||
<div class="mw-collapsible-content">]]..out..'</div></div>' | |||
return | return out | ||
end | end | ||
return p | return p |
Версия от 21:40, 1 октября 2024
Для документации этого модуля может быть создана страница Модуль:Infobox/doc
local p = {} -- p stands for package
function p.synonyms( frame )
local t = {}
local name = frame.args[1]
local listitem = frame.args['listitem'] == 'true' and '<br>' or '; ' -- additional param for items lists
if #name == 0 then
return ''
end
for i in string.gmatch(name, "[^;]+") do
table.insert(t, "[[" .. i .. "]]")
end
--table.insert(t, ")")
local out = table.concat(t, listitem)
if listitem == '; ' then
out = "(" .. out
out = out .. ")"
end
return out
end
function p.event_members( frame )
local t = {}
local name = frame.args[1]
for i in string.gmatch(name, "[^;]+") do
local field3 = ''
table.insert(t, [[<tr>
<td colspan="2" bgcolor="#{{#dplvar:boxbgcolor}}" style="font-weight: bold; text-align: center;">Участник</td>
</tr>]])
local l = {}
for k in string.gmatch(i, "[^!]+") do
table.insert(l, k)
end
if l[3] == nil or l[3] == '' or l[3] == ' ' then
field3 = ''
else
--l[3]=' '
--table.insert(t, 'XXXXXXXXXXXXXXX')
field3 = [[<tr>
<td colspan="2"><hr></td>
</tr><tr>
<td align="left" width="10%" bgcolor="#{{#dplvar:boxbgcolor}}" style="font-weight: bold;">Количество:</td>
<td>]]..l[3]..'</td></tr>'
end -- if l[3]
table.insert(t,
[[<tr>
<td colspan="2"><hr></td>
</tr><tr>
<td align="left" width="10%" bgcolor="#{{#dplvar:boxbgcolor}}" style="font-weight: bold;">Участник:</td>
<td>]]..l[1]..'</td></tr>'
..
[[<tr>
<td colspan="2"><hr></td>
</tr><tr>
<td align="left" width="10%" bgcolor="#{{#dplvar:boxbgcolor}}" style="font-weight: bold;">Категория:</td>
<td>]]..l[2]..'</td></tr>'
..
field3)
end -- 'for i' cycle
table.insert(t, [[<tr>
<td align="left" width="10%" bgcolor="#{{#dplvar:boxbgcolor}}" style="font-weight: bold;">Общее число:</td>
<td>не менее
]] .. #t/2 .. '</td></tr>')
local out = table.concat(t, "~")
out = [[<div {{DivWrapOpts}}>
titla
<div class="mw-collapsible-content">]]..out..'</div></div>'
return out
end
return p