Module:TagList: Difference between revisions
From Eco - English Wiki
[checked revision] | [checked revision] |
No edit summary |
m StalEF moved page Module:TagsList to Module:TagList without leaving a redirect |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 3: | Line 3: | ||
local p = {} | local p = {} | ||
local Utils = require('Module:Utils') | |||
local L = require('Module:Localization') | |||
-- Main entry point for the Module | -- Main entry point for the Module | ||
function p.main() | function p.main(frame) | ||
-- get args from the Template | |||
local args = | local args = Utils.normaliseArgs(frame) | ||
if args.list == nil or args.list == '' then | |||
return '\'list\' must be specified.' | |||
end | |||
-- assign variables for list | |||
local list = args.list | |||
-- load lists | |||
local itemData = mw.loadData("Module:ItemData") | |||
local tagsList = '' | |||
--Check Passes | |||
if list ~= 'tags' then | |||
return tagsList .. ' Incorrect use of pass. ' | |||
end | |||
local a = {} | |||
--Tags List | |||
if list == 'tags' then | |||
tagsList = tagsList .. '<div style=\"column-count:3;-moz-column-count:3;-webkit-column-count:3\">\n' | |||
for k, v in pairs(itemData.tags) do | |||
if itemData.tags[k] ~= nil then | |||
table.insert(a, k) | |||
end | |||
end | |||
table.sort(a) | |||
for i, n in ipairs(a) do | |||
local link = L.t('%s Tag'):format(n) | |||
tagsList = tagsList .. '* [[' .. link .. '|' .. n .. ']]\n' | |||
end | end | ||
tagsList = tagsList .. '[[Category:Tags]]</div>' | |||
end | |||
return tagsList | |||
return tagsList | |||
end | end | ||
return p | return p |
Latest revision as of 11:26, 25 June 2024
This module provides the back end functionality of the Template:TagsList.
If the template is passed, this module creates a list using details from the following Modules:
Credit[edit source]
Original SkillList was created by Fyre (FishAus) then edited by Scotty (ZeelNightwolf) and used as a base for TagsList.
-- Credit: Original SkillList was created by Fyre (FishAus) then edited by Scotty (ZeelNightwolf) and used as a base for tagsList.
local p = {}
local Utils = require('Module:Utils')
local L = require('Module:Localization')
-- Main entry point for the Module
function p.main(frame)
-- get args from the Template
local args = Utils.normaliseArgs(frame)
if args.list == nil or args.list == '' then
return '\'list\' must be specified.'
end
-- assign variables for list
local list = args.list
-- load lists
local itemData = mw.loadData("Module:ItemData")
local tagsList = ''
--Check Passes
if list ~= 'tags' then
return tagsList .. ' Incorrect use of pass. '
end
local a = {}
--Tags List
if list == 'tags' then
tagsList = tagsList .. '<div style=\"column-count:3;-moz-column-count:3;-webkit-column-count:3\">\n'
for k, v in pairs(itemData.tags) do
if itemData.tags[k] ~= nil then
table.insert(a, k)
end
end
table.sort(a)
for i, n in ipairs(a) do
local link = L.t('%s Tag'):format(n)
tagsList = tagsList .. '* [[' .. link .. '|' .. n .. ']]\n'
end
tagsList = tagsList .. '[[Category:Tags]]</div>'
end
return tagsList
end
return p