Модул:Infobox — разлика између измена
Пређи на навигацију
Пређи на претрагу
м (string -> ustring) |
м (Ispravka logike za dohvatanje RTI semestra) |
||
| Ред 17: | Ред 17: | ||
end | end | ||
if (not matchSI) or matchRTI then | if (not matchSI) or matchRTI then | ||
cat(cats, data.semesters[ | local semesterRTI = matchRTI and tonumber(matchRTI) or semester | ||
cat(cats, data.semesters[semesterRTI] .. ' семестар (РТИ)') | |||
end | end | ||
end | end | ||
Верзија на датум 20. фебруар 2022. у 00:28
Модул за аутокатегоризацију на основу података прослеђених у инфокутију за предмет. Овај модул такође довлачи потребне податке за рад из модула са подацима.
local p = {}
local data = mw.loadData('Module:Infobox/data')
local function cat(cats, name)
table.insert(cats, '[[Категорија:')
table.insert(cats, name)
table.insert(cats, ']]')
end
local function catSemester(cats, arg)
local semester = tonumber(mw.ustring.match(arg, '%d+'))
local matchSI = mw.ustring.match(arg, '%d+ %(СИ%)')
local matchRTI = mw.ustring.match(arg, '(%d+) %(РТИ%)')
if (not matchRTI) or matchSI then
cat(cats, data.semesters[semester] .. ' семестар')
end
if (not matchSI) or matchRTI then
local semesterRTI = matchRTI and tonumber(matchRTI) or semester
cat(cats, data.semesters[semesterRTI] .. ' семестар (РТИ)')
end
end
function p.main(frame)
local cats = {}
local args = frame:getParent().args
catSemester(cats, args['семестар'])
return table.concat(cats)
end
return p