local effectiveProtectionLevel = require('Module:Effective protection level/sandbox')._main
local p = {}
end
pagename = title.prefixedText
if action == 'autoreview' then
local _, rawExpiry = effectiveProtectionLevel(action, title)
return ' infinityunknown' ▼
elseif action ~= 'edit' and action ~= 'move' and action ~= 'create' and action ~= 'upload' then
error( 'First parameter must be one of edit, move, create, upload, autoreview', 2 )
local cascadingExpiryrawExpiry = framemw.getCurrentFrame():callParserFunction('PROTECTIONEXPIRY', action, vpagename) ▼
if rawExpiry == 'infinity' then
return 'infinity'
elseif rawExpiry == nil then
-- a nil expiry gets returned for cascading-protected pages, since it's extra work to see their expiry, and not all uses of effective protection level need it. if we're called, we do need it, so find out what it is
local frame = mw.getCurrentFrame()
rawExpiry = 0
for _,v in title.cascadingProtection.sources do
▲ local cascadingExpiry = frame:callParserFunction('PROTECTIONEXPIRY', action, v)
if cascadingExpiry == 'infinity' then
end
cascadingExpiry = tonumber(cascadingExpiry)
if rawExpiry < cascadingExpiry then
rawExpiry = cascadingExpiry
end
elseif rawExpiry == '' then
-- should never happen
mw.log(string.format('Module:Effective_protection_level returned a blank expiry for action %s and pagename %s', action, pagename))
return 'unknown'
else
local year = mw.ustring.sub( rawExpiry, 1, 4 ) ▼
local month = mw.ustring.sub( rawExpiry, 5, 6 ) ▼
local day = mw.ustring.sub( rawExpiry, 7, 8 ) ▼
return year .. '-' .. month .. '-' .. day ▼
end
▲ local year = mw.ustring.sub( rawExpiry, 1, 4 )
▲ local month = mw.ustring.sub( rawExpiry, 5, 6 )
▲ local day = mw.ustring.sub( rawExpiry, 7, 8 )
▲ return year .. '-' .. month .. '-' .. day
end
|