Minejango2 (토론 | 기여) 잔글편집 요약 없음 |
Minejango2 (토론 | 기여) 잔글편집 요약 없음 |
||
(같은 사용자의 중간 판 2개는 보이지 않습니다) | |||
5번째 줄: | 5번째 줄: | ||
local args = f |
local args = f |
||
if f == mw.getCurrentFrame() then |
if f == mw.getCurrentFrame() then |
||
− | args = require( ' |
+ | args = require( '모듈:ProcessArgs' ).merge( true ) |
end |
end |
||
local version = mw.text.trim( args[1] or '' ) |
local version = mw.text.trim( args[1] or '' ) |
||
-- load the values from the submodule |
-- load the values from the submodule |
||
− | local version_data = mw.loadData( ' |
+ | local version_data = mw.loadData( '모듈:Protocol version/Versions' ).versions[version] |
+ | |||
local category = '' |
local category = '' |
||
local value |
local value |
||
⚫ | |||
+ | |||
if version_data then |
if version_data then |
||
− | + | if version_data.protocol then |
|
+ | if version_data.protocol == 'Unknown' then |
||
+ | value = '[[틀:Protocol version#알 수 없는 버전|알 수 없음]]' |
||
+ | if not args.nocat and title.namespace == 0 and not title.isSubpage then |
||
+ | category = '[[분류:알 수 없는 프로토콜 버전]]' |
||
+ | end |
||
+ | else |
||
+ | value = version_data.protocol |
||
+ | end |
||
+ | else |
||
+ | value = 'N/A' |
||
+ | end |
||
else |
else |
||
− | value = '[[ |
+ | value = '[[틀:Protocol version#알 수 없는 버전|Pending]]' |
⚫ | |||
if not args.nocat and title.namespace == 0 and not title.isSubpage then |
if not args.nocat and title.namespace == 0 and not title.isSubpage then |
||
− | category = '[[ |
+ | category = '[[분류:Pending protocol version]]' |
end |
end |
||
end |
end |
||
29번째 줄: | 42번째 줄: | ||
local args = f |
local args = f |
||
if f == mw.getCurrentFrame() then |
if f == mw.getCurrentFrame() then |
||
− | args = require( ' |
+ | args = require( '모듈:ProcessArgs' ).merge( true ) |
end |
end |
||
local version = mw.text.trim( args[1] or '' ) |
local version = mw.text.trim( args[1] or '' ) |
||
-- load the values from the submodule |
-- load the values from the submodule |
||
− | local version_data = mw.loadData( ' |
+ | local version_data = mw.loadData( '모듈:Protocol version/Versions' ).versions[version] |
+ | |||
local category = '' |
local category = '' |
||
local value |
local value |
||
⚫ | |||
+ | |||
if version_data then |
if version_data then |
||
if version_data.data then |
if version_data.data then |
||
− | + | if version_data.data == 'Unknown' then |
|
+ | value = '[[틀:Data version#알 수 없는 버전|알 수 없음]]' |
||
+ | if not args.nocat and title.namespace == 0 and not title.isSubpage then |
||
+ | category = '[[분류:알 수 없는 데이터 버전]]' |
||
+ | end |
||
+ | else |
||
+ | value = version_data.data |
||
+ | end |
||
else |
else |
||
− | value = |
+ | value = 'N/A' |
end |
end |
||
else |
else |
||
− | value = '[[ |
+ | value = '[[틀:Data version#알 수 없는 버전|Pending]]' |
⚫ | |||
if not args.nocat and title.namespace == 0 and not title.isSubpage then |
if not args.nocat and title.namespace == 0 and not title.isSubpage then |
||
− | category = '[[ |
+ | category = '[[분류:Pending data version]]' |
end |
end |
||
end |
end |
||
57번째 줄: | 79번째 줄: | ||
local args = f |
local args = f |
||
if f == mw.getCurrentFrame() then |
if f == mw.getCurrentFrame() then |
||
− | args = require( ' |
+ | args = require( '모듈:ProcessArgs' ).merge( true ) |
end |
end |
||
local html = {} |
local html = {} |
||
− | local groups = mw.loadData( ' |
+ | local groups = mw.loadData( '모듈:Protocol version/Versions' ).groups |
for _, group in ipairs(groups) do |
for _, group in ipairs(groups) do |
||
84번째 줄: | 106번째 줄: | ||
table.insert( html, "<table class='wikitable sortable jquery-tablesorter'>\n" ) |
table.insert( html, "<table class='wikitable sortable jquery-tablesorter'>\n" ) |
||
table.insert( html, '<tr>\n' ) |
table.insert( html, '<tr>\n' ) |
||
− | table.insert( html, '<th> |
+ | table.insert( html, '<th>클라이언트 버전</th>\n' ) |
− | table.insert( html, '<th>[[ |
+ | table.insert( html, '<th>[[프로토콜 버전]]</th>\n' ) |
if group.has_data_versions then |
if group.has_data_versions then |
||
− | table.insert( html, '<th>[[ |
+ | table.insert( html, '<th>[[데이터 버전]]</th>\n' ) |
end |
end |
||
table.insert( html, '</tr>\n' ) |
table.insert( html, '</tr>\n' ) |
2020년 10월 2일 (금) 05:32 기준 최신판
local p = {}
-- {{Protocol version}}
function p.protocol_version( f )
local args = f
if f == mw.getCurrentFrame() then
args = require( '모듈:ProcessArgs' ).merge( true )
end
local version = mw.text.trim( args[1] or '' )
-- load the values from the submodule
local version_data = mw.loadData( '모듈:Protocol version/Versions' ).versions[version]
local category = ''
local value
local title = mw.title.getCurrentTitle()
if version_data then
if version_data.protocol then
if version_data.protocol == 'Unknown' then
value = '[[틀:Protocol version#알 수 없는 버전|알 수 없음]]'
if not args.nocat and title.namespace == 0 and not title.isSubpage then
category = '[[분류:알 수 없는 프로토콜 버전]]'
end
else
value = version_data.protocol
end
else
value = 'N/A'
end
else
value = '[[틀:Protocol version#알 수 없는 버전|Pending]]'
if not args.nocat and title.namespace == 0 and not title.isSubpage then
category = '[[분류:Pending protocol version]]'
end
end
return value .. category
end
-- {{Data version}}
function p.data_version( f )
local args = f
if f == mw.getCurrentFrame() then
args = require( '모듈:ProcessArgs' ).merge( true )
end
local version = mw.text.trim( args[1] or '' )
-- load the values from the submodule
local version_data = mw.loadData( '모듈:Protocol version/Versions' ).versions[version]
local category = ''
local value
local title = mw.title.getCurrentTitle()
if version_data then
if version_data.data then
if version_data.data == 'Unknown' then
value = '[[틀:Data version#알 수 없는 버전|알 수 없음]]'
if not args.nocat and title.namespace == 0 and not title.isSubpage then
category = '[[분류:알 수 없는 데이터 버전]]'
end
else
value = version_data.data
end
else
value = 'N/A'
end
else
value = '[[틀:Data version#알 수 없는 버전|Pending]]'
if not args.nocat and title.namespace == 0 and not title.isSubpage then
category = '[[분류:Pending data version]]'
end
end
return value .. category
end
-- Version table ({{Protocol version/table}})
function p.table( f )
local args = f
if f == mw.getCurrentFrame() then
args = require( '모듈:ProcessArgs' ).merge( true )
end
local html = {}
local groups = mw.loadData( '모듈:Protocol version/Versions' ).groups
for _, group in ipairs(groups) do
local include = true
if #args ~= 0 then
include = nil
for __, name in ipairs(args) do
if name == group.name then
include = true
break
end
end
end
if include then
if not args.notitle then
table.insert( html, "=== [[" .. group.link .. '|' .. group.name .. "]] ===\n" )
end
if group.desc ~= nil then
table.insert( html, group.desc .. '\n')
end
table.insert( html, "<table class='wikitable sortable jquery-tablesorter'>\n" )
table.insert( html, '<tr>\n' )
table.insert( html, '<th>클라이언트 버전</th>\n' )
table.insert( html, '<th>[[프로토콜 버전]]</th>\n' )
if group.has_data_versions then
table.insert( html, '<th>[[데이터 버전]]</th>\n' )
end
table.insert( html, '</tr>\n' )
local num_same_protocol
local last_protocol = -1
local protocol_row
for __, version in ipairs(group.values) do
table.insert( html, '<tr>' )
table.insert( html, '<td>[[' .. version.name .. ']]</td>\n' )
if version.protocol ~= last_protocol or version.force_split then
last_protocol = version.protocol
num_same_protocol = 1
table.insert( html, '<td>' .. version.protocol .. '</td>\n' )
protocol_row = #html
else
num_same_protocol = num_same_protocol + 1
html[protocol_row] = '<td rowspan="' .. num_same_protocol .. '">' .. version.protocol .. '</td>\n'
end
if group.has_data_versions then
if version.data then
table.insert( html, '<td>' .. version.data .. '</td>\n' )
else
table.insert( html, '<td>—</td>\n' )
end
end
table.insert( html, '</tr>\n' )
end
table.insert( html, '</table>\n' )
end
end
return table.concat( html )
end
return p