pe是什么| p是什么意思医学| 剁椒鱼头是什么鱼| 姨妈是什么| 肝气不舒有什么症状| 血栓是什么病| 什么的花灯| 忐忑不安是什么意思| 软组织损伤用什么药| 流产有什么症状或感觉| 男人左眼下有痣代表什么| miles是什么意思| 为什么拉肚子| 猴子下山的故事告诉我们什么| 螳螂捕蝉黄雀在后是什么意思| 退行性改变是什么意思| 日央读什么| 北京的区长是什么级别| 骏字五行属什么| 经常放响屁是什么原因| 羊奶粉和牛奶粉有什么区别| 洋姜有什么功效与作用| 苍耳是什么东西| 撕裂性骨折是什么意思| 广州机场叫什么名字| 爱戴是什么意思| 变性淀粉是什么| 湿气重吃什么中药| 中年男人遗精是什么原因| 上午九点是什么时辰| 马齿苋长什么样子| 告诉我们什么道理| 什么是二次元| 斯德哥尔摩综合症是什么意思| 小哥哥是什么意思| 车水马龙的意思是什么| ca125检查是什么意思| 心悸气短是什么症状| 脾胃不好吃什么水果| 薄荷叶泡水喝有什么好处| 爆单是什么意思| 耳朵蝉鸣是什么原因引起的| 胆结石是什么症状| 甲胎蛋白是什么| 肌电图挂什么科| 知了吃什么东西| 一吃饭就吐是什么原因| 义愤填膺是什么意思| 生物制剂是什么药| 阴吹是什么| 什么食物胶原蛋白含量高| 吃什么食物补脾虚| 六月十二号是什么星座| 药鱼用什么药效果最好| 身体发抖是什么病| 黑猫进家门预示着什么| 什么手机有红外线功能| 什么是理数| 糖精是什么| 甲功能5项检查是查的什么| 气血亏虚什么症状| 2015年五行属什么| 空灵是什么意思| 45岁属什么| 车迟国的三个妖怪分别是什么| 老年人腿脚无力是什么原因| 吃猪血有什么好处和坏处| 五指姑娘是什么意思| 高压高低压低是什么原因| 什么是管制| 左耳耳鸣是什么原因| 沙发是什么头发| 过敏能吃什么| 乐不思蜀是什么意思| 霆字五行属什么| 四川古代叫什么| 头晕什么原因引起的| 1927年中国发生了什么| 打喷嚏流鼻涕属于什么感冒| 小舌头学名叫什么| 静脉血栓是什么症状| 4月15日是什么日子| 为感是什么意思| 什么的脸庞| 孔雀喜欢吃什么食物| 什么东西醒酒| 捡什么废品最值钱| 珏字五行属什么| 降压灵又叫什么| 咖啡什么时候喝最好| 崖柏手串有什么功效| 二十四节气分别是什么| 苦杏仁味是什么中毒| 鳄梨是什么水果| 弓加耳念什么| 钾离子高有什么危害| 贝伐珠单抗是什么药| 眼袋浮肿是什么原因| 什么是川崎病是什么病| 暖气是什么意思| 头顶一阵一阵疼是什么原因| 生姜能治什么病| 息肉是什么| 粉尘螨是什么| 参见是什么意思| 脾胃虚吃什么好| 雪燕是什么| 以前没有狐臭为什么突然就有了| 男属龙和什么属相最配| 人为什么会衰老| 什么是大男子主义| 赭色是什么颜色| 手掌心发红是什么原因| 大小脸挂什么科| 喉咙肿痛吃什么药| 知鸟是什么| 因公殉职是什么意思| 悦五行属性是什么| 人类免疫缺陷病毒抗体是什么意思| 身体逐渐消瘦是什么原因| 依赖一个人是什么意思| 什么食物含蛋白高| 血糖高可以吃什么水果| 腹膜刺激征是指什么| 仲夏夜是什么时候| 干咳嗓子痒吃什么药| 天花是什么病| 94属什么生肖| 为什么脖子上会长痘痘| 儿童用什么牙膏最好可以保护牙齿| 三个火念什么| 忽冷忽热是什么症状| 拔罐对身体有什么好处| 铅超标吃什么排铅| 焖是什么意思| 自怨自艾什么意思| 高碳钻是什么| 马克笔什么牌子好| 鸡蛋和面粉可以做什么好吃的| 生龙活虎是什么生肖| 霉菌阴道炎是什么引起的| 手麻是什么情况| 一厢情愿指什么生肖| 什么是清宫| 梦见织毛衣是什么意思| 什么时候闰十月| 坐东朝西是什么意思| 大男子主义什么意思| food什么意思| 遇到黄鼠狼是什么征兆| 核辐射是什么意思| 排卵期出血是什么原因造成的| 补钙什么时间段最好| 果脯是什么东西| 胆囊切除后需要注意什么| 头部挂什么科| 拔完智齿需要注意什么| 珍珠是用什么做的| 什么花是白色的| 利涉大川是什么意思| 额头上长痘是什么原因| 五什么六什么| 半枝莲有什么功效| 性瘾是什么意思| 什么泡酒让性功能最强| 怀孕建档是什么意思| 在家做什么小生意| 黄精和什么煲汤好| 青菜炒什么好吃| 公关是什么工作| 九个口是什么字| 老头乐是什么| 病毒性感冒发烧吃什么药| 太子是什么生肖| 脉搏快是什么原因| 今年72岁属什么生肖| 什么的愿望| 土豆什么时候种植| 桀是什么意思| 什么减肥药效果最好而且不反弹| 哔哩哔哩会员有什么用| 十二生肖各代表什么花| 宋江属什么生肖| 相亲为什么不能拖太久| 落枕是什么原因| 71属什么生肖| 什么植物和动物很像鸡| 23号来月经什么时候是排卵期| 10月28号是什么星座| 腰部凉凉的是什么原因| 什么叫轻食| 尿酸是什么| tps是什么意思| 迁徙是什么意思| 牙疼能吃什么食物| 眼屎多是什么原因| 蹄花是什么| 波霸是什么| 什么的枝干| 吃中药不能吃什么水果| 什么东西补锌| 高考考生号是什么| viola是什么意思| 头晕是什么引起的| 2009年什么年| 是什么品牌| 楼房风水主要看什么| 南瓜和窝瓜有什么区别| 茄子有什么功效和作用| 车震是什么| 109是什么意思| 苏铁属于什么植物| 乳腺增生看什么科室| 经常恶心干呕是什么原因| 八月一日是什么节日| 手信是什么东西| 后腰左侧疼痛是什么原因男性| 什么至什么来| 神经损伤吃什么药| 西兰花和什么菜搭配| 男人少一个睾丸有什么影响| 尿酸高尿液是什么颜色| 恨天高是什么意思| tt什么意思| 慢性支气管炎吃什么药| 女生来大姨妈要注意什么| 什么叫五福临门| 34周为什么不建议保胎| 孕妇为什么不能参加婚礼| 陶弘景有什么之称| 金丝皇菊有什么功效| 什么是尿频| 贫血喝什么茶| 子宫内膜厚有什么危害| 野鸡吃什么食物| 羊齿状结晶代表什么| 鼻头长痘痘什么原因| bdsm是什么意思| 妩媚是什么意思| 印泥干了用什么稀释| 结婚20年是什么婚| 放单是什么意思| 已归档是什么意思| 耳钉什么材质的好| 89年蛇是什么命| 爵迹小说为什么不写了| 痛风挂号什么科| 组织部长是什么级别| 西亚是什么人种| 西晋之后是什么朝代| 朋友过生日送什么好| 一直发烧不退是什么原因| 甲状腺4级是什么意思| 屎壳郎是什么意思| 易激惹是什么意思| 例假推迟是什么原因引起的| 子宫内膜单纯性增生是什么意思| 油面筋是什么做的| 同房为什么会出血| 九地是什么中药| 柳絮吃了有什么好处| 盥洗是什么意思| 木耳菜又叫什么菜| 东面墙适合挂什么画| 百度
百度 身体也很健壮,跑动的时候可以看到后腿上的肌肉。
--
-- This module implements {{Sidebar}}
--
require('Module:No globals')
local cfg = mw.loadData('Module:Sidebar/configuration')

local p = {}

local getArgs = require('Module:Arguments').getArgs

--[[
Categorizes calling templates and modules with a 'style' parameter of any sort
for tracking to convert to TemplateStyles.

TODO after a long cleanup: Catch sidebars in other namespaces than Template and Module.
TODO would probably want to remove /log and /archive as CS1 does
]]
local function categorizeTemplatesWithInlineStyles(args)
	local title = mw.title.getCurrentTitle()
	if title.namespace ~= 10 and title.namespace ~= 828 then return '' end
	for _, pattern in ipairs (cfg.i18n.pattern.uncategorized_conversion_titles) do
		if title.text:match(pattern) then return '' end
	end
	
	for key, _ in pairs(args) do
		if mw.ustring.find(key, cfg.i18n.pattern.style_conversion) or key == 'width' then
			return cfg.i18n.category.conversion
		end
	end
end

--[[
For compatibility with the original {{sidebar with collapsible lists}}
implementation, which passed some parameters through {{#if}} to trim their
whitespace. This also triggered the automatic newline behavior.
]]
-- See ([[meta:Help:Newlines and spaces#Automatic newline]])
local function trimAndAddAutomaticNewline(s)
	s = mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1")
	if mw.ustring.find(s, '^[#*:;]') or mw.ustring.find(s, '^{|') then
		return '\n' .. s
	else
		return s
	end
end

--[[
Finds whether a sidebar has a subgroup sidebar.
]]
local function hasSubgroup(s)
	if mw.ustring.find(s, cfg.i18n.pattern.subgroup) then
		return true
	else
		return false
	end
end

--[[
Main sidebar function. Takes the frame, args, and an optional collapsibleClass.
The collapsibleClass is and should be used only for sidebars with collapsible
lists, as in p.collapsible.
]]
function p.sidebar(frame, args, collapsibleClass)
	if not args then
		args = getArgs(frame)
	end
	local root = mw.html.create()
	local child = args.child and mw.text.trim(args.child) == cfg.i18n.child_yes

	root = root:tag('table')
	if not child then
		root 
			:addClass(cfg.i18n.class.sidebar)
			-- force collapsibleclass to be sidebar-collapse otherwise output nothing
			:addClass(collapsibleClass == cfg.i18n.class.collapse and cfg.i18n.class.collapse or nil)
			:addClass('nomobile')
			:addClass(args.float == cfg.i18n.float_none and cfg.i18n.class.float_none or nil)
			:addClass(args.float == cfg.i18n.float_left and cfg.i18n.class.float_left or nil)
			:addClass(args.wraplinks ~= cfg.i18n.wrap_true and cfg.i18n.class.wraplinks or nil)
			:addClass(args.bodyclass or args.class)
			:css('width', args.width or nil)
			:cssText(args.bodystyle or args.style)

		if args.outertitle then
			root
				:tag('caption')
					:addClass(cfg.i18n.class.outer_title)
					:addClass(args.outertitleclass)
					:cssText(args.outertitlestyle)
					:wikitext(args.outertitle)
		end

		if args.topimage then
			local imageCell = root:tag('tr'):tag('td')

			imageCell
				:addClass(cfg.i18n.class.top_image)
				:addClass(args.topimageclass)
				:cssText(args.topimagestyle)
				:wikitext(args.topimage)

			if args.topcaption then
				imageCell
					:tag('div')
						:addClass(cfg.i18n.class.top_caption)
						:cssText(args.topcaptionstyle)
						:wikitext(args.topcaption)
			end
		end

		if args.pretitle then
			root
				:tag('tr')
					:tag('td')
						:addClass(args.topimage and cfg.i18n.class.pretitle_with_top_image
							or cfg.i18n.class.pretitle)
						:addClass(args.pretitleclass)
						:cssText(args.basestyle)
						:cssText(args.pretitlestyle)
						:wikitext(args.pretitle)
		end
	else
		root
			:addClass(cfg.i18n.class.subgroup)
			:addClass(args.bodyclass or args.class)
			:cssText(args.bodystyle or args.style)
	end

	if args.title then
		if child then
			root
				:wikitext(args.title)
		else
			root
				:tag('tr')
					:tag('th')
						:addClass(args.pretitle and cfg.i18n.class.title_with_pretitle
							or cfg.i18n.class.title)
						:addClass(args.titleclass)
						:cssText(args.basestyle)
						:cssText(args.titlestyle)
						:wikitext(args.title)
		end
	end

	if args.image then
		local imageCell = root:tag('tr'):tag('td')

		imageCell
			:addClass(cfg.i18n.class.image)
			:addClass(args.imageclass)
			:cssText(args.imagestyle)
			:wikitext(args.image)

		if args.caption then
			imageCell
				:tag('div')
					:addClass(cfg.i18n.class.caption)
					:cssText(args.captionstyle)
					:wikitext(args.caption)
		end
	end

	if args.above then
		root
			:tag('tr')
				:tag('td')
					:addClass(cfg.i18n.class.above)
					:addClass(args.aboveclass)
					:cssText(args.abovestyle)
					:newline() -- newline required for bullet-points to work
					:wikitext(args.above)
	end

	local rowNums = {}
	for k, v in pairs(args) do
		k = '' .. k
		local num = k:match('^heading(%d+)$') or k:match('^content(%d+)$')
		if num then table.insert(rowNums, tonumber(num)) end
	end
	table.sort(rowNums)
	-- remove duplicates from the list (e.g. 3 will be duplicated if both heading3
	-- and content3 are specified)
	for i = #rowNums, 1, -1 do
		if rowNums[i] == rowNums[i - 1] then
			table.remove(rowNums, i)
		end
	end

	for i, num in ipairs(rowNums) do
		local heading = args['heading' .. num]
		if heading then
			root
				:tag('tr')
					:tag('th')
						:addClass(cfg.i18n.class.heading)
						:addClass(args.headingclass)
						:addClass(args['heading' .. num .. 'class'])
						:cssText(args.basestyle)
						:cssText(args.headingstyle)
						:cssText(args['heading' .. num .. 'style'])
						:newline()
						:wikitext(heading)
		end

		local content = args['content' .. num]
		if content then
			root
				:tag('tr')
					:tag('td')
						:addClass(hasSubgroup(content) and cfg.i18n.class.content_with_subgroup
							or cfg.i18n.class.content)
						:addClass(args.contentclass)
						:addClass(args['content' .. num .. 'class'])
						:cssText(args.contentstyle)
						:cssText(args['content' .. num .. 'style'])
						:newline()
						:wikitext(content)
						:done()
					 -- Without a linebreak after the </td>, a nested list like
					 -- "* {{hlist| ...}}" doesn't parse correctly.
					:newline()
		end
	end

	if args.below then
		root
			:tag('tr')
				:tag('td')
					:addClass(cfg.i18n.class.below)
					:addClass(args.belowclass)
					:cssText(args.belowstyle)
					:newline()
					:wikitext(args.below)
	end

	if not child then
		if args.navbar ~= cfg.i18n.navbar_none and args.navbar ~= cfg.i18n.navbar_off and
			(args.name or frame:getParent():getTitle():gsub(cfg.i18n.pattern.sandbox, '') ~=
			cfg.i18n.title_not_to_add_navbar) then
			root
				:tag('tr')
					:tag('td')
						:addClass(cfg.i18n.class.navbar)
						:cssText(args.navbarstyle)
						:wikitext(require('Module:Navbar')._navbar{
							args.name,
							mini = 1,
							fontstyle = args.navbarfontstyle
						})
		end
	end
	
	local base_templatestyles = frame:extensionTag{
		name = 'templatestyles', args = { src = cfg.i18n.templatestyles }
	}
	
	local templatestyles = ''
	if args['templatestyles'] and args['templatestyles'] ~= '' then
		templatestyles = frame:extensionTag{
			name = 'templatestyles', args = { src = args['templatestyles'] }
		}
	end
	
	local child_templatestyles = ''
	if args['child templatestyles'] and args['child templatestyles'] ~= '' then
		child_templatestyles = frame:extensionTag{
			name = 'templatestyles', args = { src = args['child templatestyles'] }
		}
	end
	
	local grandchild_templatestyles = ''
	if args['grandchild templatestyles'] and args['grandchild templatestyles'] ~= '' then
		grandchild_templatestyles = frame:extensionTag{
			name = 'templatestyles', args = { src = args['grandchild templatestyles'] }
		}
	end

	return table.concat({
		base_templatestyles,
		templatestyles,
		child_templatestyles,
		grandchild_templatestyles,
		tostring(root),
		(child and cfg.i18n.category.child or ''),
		categorizeTemplatesWithInlineStyles(args)
	})
end

local function list_title(args, is_centered_list_titles, num)
	
	local title_text = trimAndAddAutomaticNewline(args['list' .. num .. 'title']
		or cfg.i18n.default_list_title)

	local title
	if is_centered_list_titles then
		-- collapsible can be finicky, so provide some CSS/HTML to support
		title = mw.html.create('div')
			:addClass(cfg.i18n.class.list_title_centered)
			:wikitext(title_text)
	else
		title = mw.html.create()
			:wikitext(title_text)
	end
		
	local title_container = mw.html.create('div')
		:addClass(cfg.i18n.class.list_title)
		-- don't /need/ a listnumtitleclass because you can do
		-- .templateclass .listnumclass .sidebar-list-title
		:addClass(args.listtitleclass)
		:cssText(args.basestyle)
		:cssText(args.listtitlestyle)
		:cssText(args['list' .. num .. 'titlestyle'])
		:node(title)
		:done()
	
	return title_container
end

--[[
Main entry point for sidebar with collapsible lists.
Does the work of creating the collapsible lists themselves and including them
into the args.
]]
function p.collapsible(frame)
	local args = getArgs(frame)
	if not args.name and
		frame:getParent():getTitle():gsub(cfg.i18n.pattern.collapse_sandbox, '') ==
		cfg.i18n.collapse_title_not_to_add_navbar then
		args.navbar = cfg.i18n.navbar_none
	end

	local contentArgs = {}
	
	local is_centered_list_titles
	if args['centered list titles'] and args['centered list titles'] ~= '' then
		is_centered_list_titles = true
	else
		is_centered_list_titles = false
	end

	for k, v in pairs(args) do
		local num = string.match(k, '^list(%d+)$')
		if num then
			local expand = args.expanded and
				(args.expanded == 'all' or args.expanded == args['list' .. num .. 'name'])
			local row = mw.html.create('div')
			row
				:addClass(cfg.i18n.class.list)
				:addClass('mw-collapsible')
				:addClass((not expand) and 'mw-collapsed' or nil)
				:addClass(args['list' .. num .. 'class'])
				:cssText(args.listframestyle)
				:cssText(args['list' .. num .. 'framestyle'])
				:node(list_title(args, is_centered_list_titles, num))
				:tag('div')
					:addClass(cfg.i18n.class.list_content)
					:addClass('mw-collapsible-content')
					-- don't /need/ a listnumstyleclass because you can do
					-- .templatename .listnumclass .sidebar-list
					:addClass(args.listclass)
					:cssText(args.liststyle)
					:cssText(args['list' .. num .. 'style'])
					:wikitext(trimAndAddAutomaticNewline(args['list' .. num]))

			contentArgs['content' .. num] = tostring(row)
		end
	end

	for k, v in pairs(contentArgs) do
		args[k] = v
	end

	return p.sidebar(frame, args, cfg.i18n.class.collapse)
end

return p
尿素偏高是什么意思 陶渊明是什么先生 容易饿是什么原因 黑白蛇是什么蛇 市公安局政委是什么级别
心绞痛吃什么药最管用 大张伟原名叫什么 1月22号什么星座 一什么宝石 泌尿感染是什么原因引起的
89年属什么生肖 盆腔炎是什么原因引起的 肿瘤挂什么科 人这一生为了什么 focus什么意思
肾精亏虚吃什么药 黑天鹅是什么意思 头发多剪什么发型好看 慢性宫颈炎吃什么药 动脉硬化吃什么药最好
糖化高是什么意思hcv8jop1ns8r.cn 准生证什么时候办理hcv9jop0ns5r.cn 总胆汁酸是什么意思hcv8jop7ns2r.cn 腿发麻是什么原因zhongyiyatai.com 缠头是什么意思hcv9jop5ns6r.cn
喝酒不能吃什么水果liaochangning.com 阳历1月份是什么星座hcv8jop5ns9r.cn 为什么排卵期会出血hcv9jop0ns2r.cn 清江鱼是什么鱼hcv8jop1ns3r.cn 二代身份证是什么意思hcv8jop1ns3r.cn
bacon是什么意思hcv7jop6ns2r.cn 脑梗什么原因导致的hcv8jop8ns2r.cn 肺气不足吃什么食物可以补肺气hcv9jop4ns8r.cn 美平是什么药inbungee.com 肠炎是什么原因引起的hcv9jop0ns6r.cn
滴水观音叶子发黄是什么原因hcv9jop0ns7r.cn mandy是什么意思adwl56.com 坚果补充什么营养成分hcv8jop8ns3r.cn fsh是什么激素hcv8jop7ns5r.cn 屈髋是什么姿势hcv8jop6ns5r.cn
百度