查看“模块:Lua banner”的源代码
←
模块:Lua banner
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
--[=[ 这个模块由[[Template:Lua]]调用 暂无模块调用 /****************************/ 這個模組由[[Template:Lua]]調用 暫無模組調用 ]=]-- local yesno = require('Module:Yesno') local mList = require('Module:List') local mTableTools = require('Module:TableTools') local mMessageBox = require('Module:Message box') local p = {} function p.main(frame) local origArgs = frame:getParent().args local args = {} for k, v in pairs(origArgs) do v = v:match('^%s*(.-)%s*$') if v ~= '' then args[k] = v end end return p._main(frame, args) end function p._main(frame, args) local modules = mTableTools.compressSparseArray(args) local box = p.renderBox(modules) local trackingCategories = p.renderTrackingCategories(args, modules) return box .. trackingCategories end -- if action=edit function p.main2(frame) local origArgs = frame:getParent().args local args = {} for k, v in pairs(origArgs) do v = v:match('^%s*(.-)%s*$') if v ~= '' then args[k] = v end end local modules = mTableTools.compressSparseArray(args) return p.renderBox(modules) end --end function p.renderBox(modules) local boxArgs = {} if #modules < 1 then boxArgs.text = '<strong class="error">错误:没有指定-{zh-hans:模块; zh-hant:模組;}-</strong>' else local moduleLinks = {} for i, module in ipairs(modules) do moduleLinks[i] = string.format('%s', module) moduleLinks[i] = '[[:Module:' .. mw.title.new(moduleLinks[i]).text .. ']]' end local moduleList = mList.makeList('bulleted', moduleLinks) boxArgs.text = '此' .. (mw.title.getCurrentTitle():inNamespaces(828,829) and '-{zh-hans:模块; zh-hant:模組;}-' or '模板') .. '使用[[Wikipedia:Lua|Lua语言]]:\n' .. moduleList end boxArgs.type = 'notice' boxArgs.small = true boxArgs.image = '[[File:Lua-logo-nolabel.svg|30px|alt=|link=]]' return mMessageBox.main('mbox', boxArgs) end function p.renderTrackingCategories(args, modules, titleObj) if yesno(args.nocat) then return '' end local cats = {} -- 错误分类 if #modules < 1 then cats[#cats + 1] = '有错误的Lua模板' end -- Lua templates category titleObj = titleObj or mw.title.getCurrentTitle() local subpageBlacklist = { doc = true, sandbox = true, sandbox2 = true, testcases = true } if titleObj.namespace == 10 and not subpageBlacklist[titleObj.subpageText] then local category = args.category if not category then local categories = { ['Module:String'] = '使用Module:String的模板', --['Module:Math'] = '使用LuaMath的模板', --['Module:BaseConvert'] = '使用LuaBaseConvert的模板', --['Module:Citation'] = '使用LuaCitation的模板' } categories['Module:Citation/CS1'] = categories['Module:Citation'] category = modules[1] and categories[modules[1]] category = category or 'x' end cats[#cats + 1] = category local protLevels = { autoconfirmed = 1, extendedconfirmed = 2, templateeditor = 3, sysop = 4 } local currentProt = titleObj.protectionLevels["edit"][1] if currentProt == nil then currentProt = 0 else currentProt = protLevels[currentProt] end for i, module in ipairs(modules) do if mw.title.new(module).protectionLevels["edit"] then local moduleProt = mw.title.new(module).protectionLevels["edit"][1] if moduleProt == nil then moduleProt = 0 else moduleProt = protLevels[moduleProt] end if moduleProt < currentProt then cats[#cats + 1] = "使用受保护Lua模块的模板" break end end end end for i, cat in ipairs(cats) do cats[i] = string.gsub(string.format('[[Category:%s]]', cat), '%[%[Category:x%]%]', '') end return table.concat(cats) .. '[[Category:Lua模板]]' end return p
该页面使用的模板:
模块:Lua banner/doc
(
查看源代码
)
返回至“
模块:Lua banner
”。
导航菜单
个人工具
登录
名字空间
模块
讨论
变体
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
检索
作品
人物
地点
文化
石心之壁
石心之壁
游戏资源
日历
工具
链入页面
相关更改
特殊页面
页面信息