Changes
Jump to navigation
Jump to search
-- Fetch the banner dataand copy it into the object. obj.reason = args-- This could be problematic if the data table and the banner object have -- any duplicate keys, so check for those.reason do local data if objargs.reason and cfg.banners[obj.action] and cfg.banners[obj.action][objargs.reason] then obj. data = cfg.banners[obj.action][obj.reason] elseif cfg.defaultBanners and cfg.defaultBanners[obj.action] then obj. data = cfg.defaultBanners[obj.action] elseif cfg.defaultBanners and cfg.defaultBanners.edit then obj. data = cfg.defaultBanners.edit else error('no banner data found; please define data for cfg.defaultBanners') end local usedFields = {} for k in pairs(banner) do usedFields[k] = true end for k in pairs(obj) do usedFields[k] = true end for k, v in pairs(data) do if usedFields[k] then error('banner.new: duplicate config key "' ..edittostring(k) .. '" detected') else obj[k] = v end end
end
function p._main(args)
-- Find what action we are supposed to be protecting the page from.
-- Add the banner/padlock, protection category, and tracking categories.
local ret = ''
ret = ret .. p.renderBannerOrPadlock(action, protectionLevel, args)
ret = ret .. p.renderProtectionCategory(action, protectionLevel, args)
ret = ret .. p.renderTrackingCategories(action, protectionLevel, args)
return ret
add some more to the banner.new function
local mArguments = require('Module:Arguments')
local mProtectionLevel = require('Module:Effective protection level')._main
local yesno = require('Module:Yesno')
local mMessageBox -- only needs to be loaded if we are outputting a banner, so lazily initialise
obj.protectionLevel = protectionLevel or '*'
end
end
return obj
end
}
return mMessageBox.main('mbox', mbargs)
end
function banner:export()
-- Add the banner/padlock, protection category, and tracking categories.
local ret = ''
ret = ret .. self:renderBannerOrPadlock()
ret = ret .. self:renderProtectionCategory()
ret = ret .. self:renderTrackingCategories()
return ret
end
local args = mArguments.getArgs(frame)
return p._main(args)
end