Модуль:Tools

Версия от 09:01, 9 декабря 2021; JustPlayer (обсуждение | вклад)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

local p = {}

function p.getTodoTable(frame) local tableNode = mw.html.create('table')

   tableNode
       :addClass('pc-block service-table')
       :cssText('width: 100%; display: table; margin: 0 auto; text-align: center;')
       :newline()
   
   tableNode
       :tag('tr')
           :css('white-space', 'nowrap')
           :tag('th')
               :wikitext('Задача')
               :done()
           :tag('th')
               :wikitext('Описание')
               :done()
           :tag('th')
               :wikitext('Ответственный')
               :done()
           :tag('th')
               :wikitext('Статус')
               :done()
           :done()
           
   local list     = mw.loadData('Module:Tools/todo')
   local statuses = mw.loadData('Module:Tools/todo/statuses')
   local member   = ""
   local status   = ""
   for k, v in ipairs(list) do
   	if v[3] == "" or v[3] == nil then
   		member = "Все желающие"
   	else
   		member = mw.ustring.format('%s', v[3], v[3])
   	end
   	
   	if v[4] == 1 then
   		status = mw.ustring.format('%s', statuses[v[4]])
   	elseif v[4] == 2 then
   		status = mw.ustring.format('%s', statuses[v[4]])
   	elseif v[4] == 3 then
   		status = mw.ustring.format('%s', statuses[v[4]])
   	end
   	
       local rowNode = mw.html.create('tr')
       rowNode
           :tag('td')
           	:css('color', '#25a6f2')
               :wikitext(mw.ustring.format('%s', v[1]))
               :done()
           :tag('td')
           	:css('text-align', 'left')
               :wikitext(mw.ustring.format('%s', v[2]))
               :done()
           :tag('td')
               :wikitext(mw.ustring.format('%s', member))
               :done()
           :tag('td')
               :wikitext(mw.ustring.format('%s', status))
               :done()
           :done()
       tableNode:node(rowNode):newline()
   end
   
   return frame:preprocess(tostring(tableNode))

end

return p