Module:SiteList: Difference between revisions

From Porn Base Central
Jump to navigation Jump to search
No edit summary
Tag: Manual revert
No edit summary
Line 1: Line 1:
local p = {}
local p = {}


local function buildRow(siteType, site, id, sceneid, alias, notes)
local function buildRow(siteType, site, sceneid, id, alias, notes)
local siteInfo = mw.loadData('Module:SiteDictionary')[site:lower()]
local siteInfo = mw.loadData('Module:SiteDictionary')[site:lower()]
local link = 'N/A'
local link = 'N/A'
Line 25: Line 25:
local siteType = args[1]
local siteType = args[1]
local site = args.site or ''
local site = args.site or ''
local id = args.id or ''
local idWithSceneId = args.id or ''
local sceneid = args.sceneid or ''
local id, sceneid = idWithSceneId:match("(sceneid=)(.*)") or idWithSceneId, idWithSceneId:match("(sceneid=)(.*)") and '' or idWithSceneId
local alias = args.alias
local alias = args.alias
local notes = args.notes
local notes = args.notes
return buildRow(siteType, site, id, sceneid, alias, notes)
return buildRow(siteType, site, sceneid, id, alias, notes)
end
end



Revision as of 18:17, 21 July 2023

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

local p = {}

local function buildRow(siteType, site, sceneid, id, alias, notes)
    local siteInfo = mw.loadData('Module:SiteDictionary')[site:lower()]
    local link = 'N/A'
    local siteLabel = 'N/A'
    if siteInfo then
        if sceneid and sceneid ~= '' then
            link = string.format(siteInfo.sceneFormat, sceneid)
        elseif id and id ~= '' then
            link = string.format(siteInfo.idFormat, id)
        else
            link = siteInfo.defaultLink
        end
        siteLabel = string.format("[%s %s]", link, siteInfo.name)
    else
        siteLabel = siteType
    end

    return string.format('|-\n| style="text-align:center;vertical-align:middle;" | %s\n| style="text-align:center;vertical-align:middle;" | %s\n| style="text-align:center;vertical-align:middle;" | %s\n| style="text-align:center;vertical-align:middle;" | %s\n', siteType, siteLabel, alias or 'N/A', notes or 'N/A')
end

function p.siteList(frame)
    local args = frame:getParent().args
    local siteType = args[1]
    local site = args.site or ''
    local idWithSceneId = args.id or ''
    local id, sceneid = idWithSceneId:match("(sceneid=)(.*)") or idWithSceneId, idWithSceneId:match("(sceneid=)(.*)") and '' or idWithSceneId
    local alias = args.alias
    local notes = args.notes
    return buildRow(siteType, site, sceneid, id, alias, notes)
end

return p