本网站正在建设中(~ ̄▽ ̄)~

  • 你好~!欢迎来到中文歌声合成个人收集站-VCPedia.cn!
  • 若发现页面信息有误投稿至本站,请联系管理员。

Module:Sandbox

VCPedia.cn ——关于中文歌声合成的一切。
跳到导航 跳到搜索

可在Module:Sandbox/doc创建此模块的帮助文档

local p = {}
local pageTitle = mw.title.getCurrentTitle()
local nsTemplate = "Template:Editnotices/Namespace/"
local pageTemplate = "Template:Editnotices/Page/"

function templateCheck( template )
    if mw.title.new( template ).exists then
        return mw.getCurrentFrame():expandTemplate{ title = template }
    end
end

function MediaWikiPages()
    local title = pageTitle.rootText
    if (string.match(title, "^Gadget") and (string.match(title, "%.js$") or string.match(title, "%.css$"))) then
        return templateCheck( nsTemplate .. "MediaWiki/Gadget" )
    elseif (string.match(title, "%.js$") or string.match(title, "%.css$")) then
        return templateCheck( nsTemplate .. "MediaWiki/SiteStyle" )
    elseif (string.match(title, "^Editnotice")) then
        return templateCheck( nsTemplate .. "MediaWiki/Editnotice" )
    else return templateCheck( nsTemplate .. "MediaWiki" ) 
    end
end

function classifyNamespace()
    local ns = pageTitle.namespace
    if (ns == 1 or ns == 5 or ns == 11) then
        return templateCheck( nsTemplate .. "Talk" )
    elseif ns == 2 then
        return templateCheck( nsTemplate .. "User" )
    elseif ns == 3 then
        return templateCheck( nsTemplate .. "User talk" )
    elseif ns == 4 then
        return templateCheck( nsTemplate .. "Project" )
    elseif ns == 6 then
        return templateCheck( nsTemplate .. "File" )
    elseif ns == 8 then
        return MediaWikiPages()
    elseif ns == 10 then
        return templateCheck( nsTemplate .. "Template" )
    end
end

function classifyPage()
    local title = pageTitle.fullText
    return templateCheck( pageTemplate .. title )
end

function p.main( frame )
    local ns = classifyNamespace()
    local page = classifyPage()
    if type(ns) ~= "string" and type(page) ~= "string" then
    	return ""
    elseif type(ns) == "string" and type(page) == "string" then
    	return ns .. page
    elseif type(ns) == "string" then
    	return ns
    else return page
    end
end

return p