Module:SubjectivityNavbox

From No Subject
Jump to navigation Jump to search

Documentation for this module may be created at Module:SubjectivityNavbox/doc

-- Module:SubjectivityNavbox
-- Renders Template:SubjectivityNavbox from structured data in Module:SubjectivityNavbox/data
local p = {}

function p.main(frame)
  local parent = frame:getParent()
  local args = parent and parent.args or frame.args

  local state = args.state or "collapsed"
  local title = args.title or "Subject and Otherness"

  local data = mw.loadData("Module:SubjectivityNavbox/data")

  local nav = {
    name = "SubjectivityNavbox",
    title = title,
    state = state,
    navbar = "plain",
    listclass = "hlist",
  }

  for i, row in ipairs(data.rows) do
    nav["group" .. i] = row.group
    nav["list" .. i]  = row.list
  end

  -- Requires Template:Navbox
  return frame:expandTemplate{ title = "Navbox", args = nav }
end

return p