• Welcome to the Kancolle Wiki!
  • If you have any questions regarding site content, account registration, etc., please visit the KanColle Wiki Discord

Difference between revisions of "Module:EquipmentPage"

From Kancolle Wiki
Jump to navigation Jump to search
Line 1: Line 1:
local Utils = require("Module:Utils")
+
local _ = require("Module:Utils")
 
local Equipment = require('Module:Equipment')
 
local Equipment = require('Module:Equipment')
  
 
function getEquipment(frame)
 
function getEquipment(frame)
     local args = Utils.getTemplateArgs(frame)
+
     local args = _.getTemplateArgs(frame)
 
     local name = args.explicit[1] or args.implicit.pagename or ""
 
     local name = args.explicit[1] or args.implicit.pagename or ""
 
     return Equipment(name)
 
     return Equipment(name)
 +
end
 +
 +
function wikipediaLink(wikipedia)
 +
    if not wikipedia then
 +
        return
 +
    end
 +
    local parts = _.split(wikipedia, ":")
 +
    if parts[1] and parts[2] then
 +
        return string.format("[[wikipedia:%s:%s|%s]]", parts[1], parts[2], parts[2])
 +
    else
 +
        return string.format("[[wikipedia:%s|%s]]", wikipedia, wikipedia)
 +
    end
 
end
 
end
  
Line 13: Line 25:
 
     end,
 
     end,
 
     wikipedia = function(frame)
 
     wikipedia = function(frame)
         return getEquipment(frame):wikipedia()
+
         return wikipediaLink(getEquipment(frame):wikipedia())
 
     end,
 
     end,
 
     buildable = function(frame)
 
     buildable = function(frame)

Revision as of 13:22, 29 November 2018

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

local _ = require("Module:Utils")
local Equipment = require('Module:Equipment')

function getEquipment(frame)
    local args = _.getTemplateArgs(frame)
    local name = args.explicit[1] or args.implicit.pagename or ""
    return Equipment(name)
end

function wikipediaLink(wikipedia)
    if not wikipedia then
        return
    end
    local parts = _.split(wikipedia, ":")
    if parts[1] and parts[2] then
        return string.format("[[wikipedia:%s:%s|%s]]", parts[1], parts[2], parts[2])
    else
        return string.format("[[wikipedia:%s|%s]]", wikipedia, wikipedia)
    end
end

return {
    info = function(frame)
        return getEquipment(frame):info()
    end,
    wikipedia = function(frame)
        return wikipediaLink(getEquipment(frame):wikipedia())
    end,
    buildable = function(frame)
        return getEquipment(frame):buildable() and "true" or ""
    end,
    improvable = function(frame)
        return getEquipment(frame):improvable() and "true" or ""
    end,
}