打开/关闭菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

模块:Class

来自TFLS Wiki
Holger Huo讨论 | 贡献2022年5月21日 (六) 18:53的版本

可在模块:Class/doc创建此模块的帮助文档

local p = {}

local getArgs = require('Module:Arguments').getArgs
local convert = require('Module:NumberToChinese')._numberToChinese

function p.genName(frame)
	local args = getArgs(frame)
	return p._genName(args)
end

function p._levelLint(level)
	if level == '高中' or level == '高' or level == 1 then
		return '高中 高'
	else 
		return '初中 中'
	end
end

function p._split(s, delimiter)
    result = {};
    for match in (s..delimiter):gmatch("(.-)"..delimiter) do
        table.insert(result, match);
    end
    return result;
end


function p._genName(args)
	current = require('Module:Date')._current
	if current.month >= 9 then
		grade = current.year + 1 - args.year 
	else	
		grade = current.year - args.year
	end	

	if grade > 3 then
		return p._split(p._levelLint(args.level), " ")[1] .. args.year+3 .. '届' .. args.class .. '班'	.. args.sub
	else
		return p._split(p._levelLint(args.level), " ")[2] .. convert(grade) .. args.class .. '班' .. args.sub
	end
end


return p