薄荷长什么样| 肠镜什么情况下取活检| 一什么露珠| 囧途什么意思| 尿隐血是什么意思| 女性体毛多是什么原因| 什么是粉刺| 枸杞不能和什么一起吃| 现在适合做什么生意| 小便发红是什么原因| elle中文叫什么| 黑色属于什么五行属性| 发烧喉咙痛吃什么药好| 晚上11点多是什么时辰| 丰胸吃什么| 八月十五是什么日子| 打完狂犬疫苗有什么不良反应| lr是什么意思| 身份证数字分别代表什么| 国家安全法属于什么法| 包装饮用水是什么水| 荷花是什么季节| 户籍地址填什么| 香蕉水是什么| 6月是什么月| 胃囊肿是什么病严重吗| 优甲乐过量有什么症状| 吃茶叶蛋有什么好处和坏处| 检查是否怀孕挂什么科| hf医学上是什么意思| 反流性食管炎可以吃什么水果| 脾虚如何调理吃什么药| 520和521的区别是什么| 新生儿黄疸是什么原因引起的| 垂体催乳素高是什么原因| 吃什么可以补钾| may是什么意思| 气滞血瘀是什么意思| 青榄配什么煲汤止咳做法| 为什么老是口腔溃疡| 感染幽门螺旋杆菌吃什么药| mirror什么意思| 甲状腺结节不能吃什么东西| 梦见摘丝瓜有什么预兆| 黑蓝色是什么颜色| 芦荟有什么好处| 孕妇吃葡萄对胎儿有什么好处| 什么为笑| 什么的豆角| 植物光合作用产生什么| 大熊猫吃什么| t11椎体在什么位置| 拉红色的屎是什么原因| 什么是黄酒| 湿热吃什么中药| 刘备和刘表什么关系| 小孩黄疸高有什么危害| nothomme什么牌子| 桑葚泡水喝有什么好处| 什么是被子植物| 七月十五有什么忌讳| 起早贪黑是什么生肖| 男人分手是什么感觉| 96199是什么电话| 现在买什么股票好| 啷个是什么意思| 喝太多水对身体有什么影响| 颖五行属什么| 什么是牛黄| 胆囊挂什么科| 肯尼亚说什么语言| 胃肠炎可以吃什么水果| 拔智齿后吃什么| 掌勺是什么意思| 安徽有什么土特产| 急性肠胃炎吃什么药好| 1992属什么| 标准的青色是什么颜色| 杨八妹属什么生肖| 荠菜长什么样子图片| 常青藤是什么意思| 想念是什么意思| 革兰氏阳性菌是什么病| 看正月初一是什么生肖| 舌头有裂痕是什么原因| 运动不出汗是什么原因| 鸡肉煲汤加搭配什么好| 人为什么要死| 骨折挂什么科| 什么动物最安静| 孕激素六项检查什么时候做| edf是什么意思| 为什么老是胃胀气| 你在看什么| 大便阳性说明什么问题| 桑葚和什么泡酒壮阳| 开车压到猫有什么预兆| 什么是膜性肾病| hpv病毒是什么| 为什么会得阑尾炎| 珍珠疹是什么原因引起的| hpv感染用什么药| 口若悬河是什么生肖| 大大是什么意思| 梦见吃梨是什么意思| 占便宜是什么意思| 葫芦为什么会苦| 老年人尿血是什么原因| 手脚发麻是什么病征兆| bid是什么意思| 结婚40年是什么婚| wh是什么颜色| 胰岛素为什么不能口服| 血管瘤长什么样子图片| 奔走相告的走是什么意思| 哀大莫过于心死是什么意思| 蒲公英有什么作用和功效| 直接胆红素偏高是什么原因| 世界上最大的沙漠是什么沙漠| 6月底什么星座| 吃丝瓜有什么好处| 尼麦角林片治什么病| 手指长水泡很痒是什么原因| 脚踝韧带拉伤吃什么| 高血压吃什么盐比较好| 哪吒妈妈叫什么| 梦见黑山羊是什么预兆| 产复欣颗粒什么时候吃| 三妻四妾是什么生肖| 呆小症是缺乏什么激素| 汗为什么是咸的| 宝宝睡眠不好是什么原因| 为什么一照相脸就歪了| 五路财神都叫什么名字| 尿蛋白高吃什么药| 左眼跳什么预兆| 吲哚美辛是什么药| 结婚长明灯有什么讲究| 50岁是什么之年| 虹字五行属什么| 做胃镜有什么好处| 血沉高是什么病| 梦见被狗追是什么意思| 抗核抗体是检查什么病| amor是什么意思| 属虎的适合什么职业| 老枞是什么茶| 骨龄什么时候闭合| 旗开得胜是什么意思| 栩字五行属什么| 脸部痒是什么原因| 什么的小姑娘| 发情什么意思| 坚果是什么| 65年属什么生肖| 孕囊小是什么原因| 混纺棉是什么面料| 白葡萄酒配什么食物| 红参和高丽参有什么区别| 圣诞节是什么时候| 为什么会长火疖子| 过敏性紫癜千万不能用什么药| 肚子大什么原因| 蔷薇色是什么颜色| 断袖是什么意思| 5月19日是什么星座| 26岁属什么的生肖| 胸疼挂什么科| 春风什么什么| 搬家送什么水果| 一劳永逸什么意思| 相招是什么意思| 菀字五行属什么| 怀孕为什么会流血| 医保统筹支付什么意思| 冰心原名叫什么名字| 白细胞高是什么意思| 没壳的蜗牛叫什么| 什么叫跨境电商| 笔名是什么意思| 地软有什么功效和作用| 蜜蜡什么样的成色最好| 横纹肌溶解是什么意思| 梦见家里死人了代表什么预兆| 勇往直前是什么意思| 憧憬未来是什么意思| 人类免疫缺陷病毒抗体是什么意思| 尿酸高适合吃什么食物| 有料是什么意思| 屈髋是什么姿势| 排尿困难吃什么药| 运是什么意思| 什么食物去湿气| 英国全称是什么| 孩子半夜咳嗽是什么原因| 太阳穴痛是什么原因| 劫色是什么意思| 帕金森是什么病| 书法用什么笔| 敕令是什么意思| 蛇七寸是什么部位| 金贵肾气丸治什么病| 嗓子有痰是什么原因引起的| 花中皇后指的是什么花| 3s是什么意思| 瓜子脸适合什么眼镜| 支气管炎吃什么药最好| 血管为什么会堵塞| 嘴唇有点发黑是什么原因引起的| 禀赋是什么意思| 航母舰长是什么级别| 无花果不能和什么一起吃| 口角是什么意思| 显怀是什么意思| 9月是什么星座| 1218是什么星座| 种牙和假牙有什么区别| 吃羊肉不能吃什么| 臭男人是什么意思| 风湿性关节炎什么症状| 蜈蚣怕什么| 赵字五行属什么| 720是什么意思| 一月十七是什么星座| 软组织肿胀是什么意思| 儿童过敏性咳嗽吃什么药| 红细胞分布宽度偏高是什么意思| 潘海利根香水什么档次| 肚子胀气吃什么食物| 三手烟是什么意思| 经常喝红茶有什么好处和坏处吗| 经常咬手指甲是什么原因| 1988属什么生肖| 心脏缺血吃什么药| 高回声是什么意思| 免冠照什么意思| 像什么一样| 前列腺炎需要做什么检查| et是什么| 血管堵塞有什么办法可以疏通| 为什么一紧张就拉肚子| 什么的糖果| 吃什么可以让子宫内膜变薄| 睡醒后口干口苦是什么原因| 女朋友生日送什么| 什么水果养胃又治胃病| 人缺钾有什么症状| 孕妇抽筋是什么原因引起的| 葡萄糖偏高有什么问题| 什么口服液补血补气最好| 均金念什么| 好嘞是什么意思| 花开两朵各表一枝什么意思| 安静如鸡什么意思| 枸杞对女人有什么好处| 黑鱼不能和什么一起吃| 117是什么电话| 12月份是什么星座的| 肾精亏虚吃什么药最好| 嘴唇上有痣代表什么| 背弃是什么意思| 不以为然的意思是什么| 中性粒细胞偏高是什么意思| 法警是干什么的| 百度Jump to content

YunOS携荣威RX5、美的互联网冰箱亮相东盟博览会

Permanently protected module
From Wikipedia, the free encyclopedia

--------------------------------------------------------------------------------
--                                                                            --
--                              CATEGORY HANDLER                              --
--                                                                            --
--      This module implements the {{category handler}} template in Lua,      --
--      with a few improvements: all namespaces and all namespace aliases     --
--      are supported, and namespace names are detected automatically for     --
--      the local wiki. This module requires [[Module:Namespace detect]]      --
--      and [[Module:Yesno]] to be available on the local wiki. It can be     --
--      configured for different wikis by altering the values in              --
--      [[Module:Category handler/config]], and pages can be blacklisted      --
--      from categorisation by using [[Module:Category handler/blacklist]].   --
--                                                                            --
--------------------------------------------------------------------------------

-- Load required modules
local yesno = require('Module:Yesno')

-- Lazily load things we don't always need
local mShared, mappings

local p = {}

--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------

local function trimWhitespace(s, removeBlanks)
	if type(s) ~= 'string' then
		return s
	end
	s = s:match('^%s*(.-)%s*$')
	if removeBlanks then
		if s ~= '' then
			return s
		else
			return nil
		end
	else
		return s
	end
end

--------------------------------------------------------------------------------
-- CategoryHandler class
--------------------------------------------------------------------------------

local CategoryHandler = {}
CategoryHandler.__index = CategoryHandler

function CategoryHandler.new(data, args)
	local obj = setmetatable({ _data = data, _args = args }, CategoryHandler)
	
	-- Set the title object
	do
		local pagename = obj:parameter('demopage')
		local success, titleObj
		if pagename then
			success, titleObj = pcall(mw.title.new, pagename)
		end
		if success and titleObj then
			obj.title = titleObj
			if titleObj == mw.title.getCurrentTitle() then
				obj._usesCurrentTitle = true
			end
		else
			obj.title = mw.title.getCurrentTitle()
			obj._usesCurrentTitle = true
		end
	end

	-- Set suppression parameter values
	for _, key in ipairs{'nocat', 'categories'} do
		local value = obj:parameter(key)
		value = trimWhitespace(value, true)
		obj['_' .. key] = yesno(value)
	end
	do
		local subpage = obj:parameter('subpage')
		local category2 = obj:parameter('category2')
		if type(subpage) == 'string' then
			subpage = mw.ustring.lower(subpage)
		end
		if type(category2) == 'string' then
			subpage = mw.ustring.lower(category2)
		end
		obj._subpage = trimWhitespace(subpage, true)
		obj._category2 = trimWhitespace(category2) -- don't remove blank values
	end
	return obj
end

function CategoryHandler:parameter(key)
	local parameterNames = self._data.parameters[key]
	local pntype = type(parameterNames)
	if pntype == 'string' or pntype == 'number' then
		return self._args[parameterNames]
	elseif pntype == 'table' then
		for _, name in ipairs(parameterNames) do
			local value = self._args[name]
			if value ~= nil then
				return value
			end
		end
		return nil
	else
		error(string.format(
			'invalid config key "%s"',
			tostring(key)
		), 2)
	end
end

function CategoryHandler:isSuppressedByArguments()
	return
		-- See if a category suppression argument has been set.
		self._nocat == true
		or self._categories == false
		or (
			self._category2
			and self._category2 ~= self._data.category2Yes
			and self._category2 ~= self._data.category2Negative
		)

		-- Check whether we are on a subpage, and see if categories are
		-- suppressed based on our subpage status.
		or self._subpage == self._data.subpageNo and self.title.isSubpage
		or self._subpage == self._data.subpageOnly and not self.title.isSubpage
end

function CategoryHandler:shouldSkipBlacklistCheck()
	-- Check whether the category suppression arguments indicate we
	-- should skip the blacklist check.
	return self._nocat == false
		or self._categories == true
		or self._category2 == self._data.category2Yes
end

function CategoryHandler:matchesBlacklist()
	if self._usesCurrentTitle then
		return self._data.currentTitleMatchesBlacklist
	else
		mShared = mShared or require('Module:Category handler/shared')
		return mShared.matchesBlacklist(
			self.title.prefixedText,
			mw.loadData('Module:Category handler/blacklist')
		)
	end
end

function CategoryHandler:isSuppressed()
	-- Find if categories are suppressed by either the arguments or by
	-- matching the blacklist.
	return self:isSuppressedByArguments()
		or not self:shouldSkipBlacklistCheck() and self:matchesBlacklist()
end

function CategoryHandler:getNamespaceParameters()
	if self._usesCurrentTitle then
		return self._data.currentTitleNamespaceParameters
	else
		if not mappings then
			mShared = mShared or require('Module:Category handler/shared')
			mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
		end
		return mShared.getNamespaceParameters(
			self.title,
			mappings
		)
	end
end

function CategoryHandler:namespaceParametersExist()
	-- Find whether any namespace parameters have been specified.
	-- We use the order "all" --> namespace params --> "other" as this is what
	-- the old template did.
	if self:parameter('all') then
		return true
	end
	if not mappings then
		mShared = mShared or require('Module:Category handler/shared')
		mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
	end
	for ns, params in pairs(mappings) do
		for i, param in ipairs(params) do
			if self._args[param] then
				return true
			end
		end
	end
	if self:parameter('other') then
		return true
	end
	return false
end

function CategoryHandler:getCategories()
	local params = self:getNamespaceParameters()
	local nsCategory
	for i, param in ipairs(params) do
		local value = self._args[param]
		if value ~= nil then
			nsCategory = value
			break
		end
	end
	if nsCategory ~= nil or self:namespaceParametersExist() then
		-- Namespace parameters exist - advanced usage.
		if nsCategory == nil then
			nsCategory = self:parameter('other')
		end
		local ret = {self:parameter('all')}
		local numParam = tonumber(nsCategory)
		if numParam and numParam >= 1 and math.floor(numParam) == numParam then
			-- nsCategory is an integer
			ret[#ret + 1] = self._args[numParam]
		else
			ret[#ret + 1] = nsCategory
		end
		if #ret < 1 then
			return nil
		else
			return table.concat(ret)
		end
	elseif self._data.defaultNamespaces[self.title.namespace] then
		-- Namespace parameters don't exist, simple usage.
		return self._args[1]
	end
	return nil
end

--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------

local p = {}

function p._exportClasses()
	-- Used for testing purposes.
	return {
		CategoryHandler = CategoryHandler
	}
end

function p._main(args, data)
	data = data or mw.loadData('Module:Category handler/data')
	local handler = CategoryHandler.new(data, args)
	if handler:isSuppressed() then
		return nil
	end
	return handler:getCategories()
end

function p.main(frame, data)
	data = data or mw.loadData('Module:Category handler/data')
	local args = require('Module:Arguments').getArgs(frame, {
		wrappers = data.wrappers,
		valueFunc = function (k, v)
			v = trimWhitespace(v)
			if type(k) == 'number' then
				if v ~= '' then
					return v
				else
					return nil
				end
			else
				return v
			end
		end
	})
	return p._main(args, data)
end

return p
幼犬拉稀吃什么药最好 雷同是什么意思 小孩老是眨眼睛是什么原因 布洛芬吃多了有什么副作用 孩子老是流鼻血是什么原因
6月3号是什么星座 6.4是什么星座 火牛命五行缺什么 副主任医师什么级别 什么如泰山
1a是什么意思 利妥昔单抗是什么药 木字旁加差是什么字 藏红花泡水喝有什么功效 勿忘心安是什么意思
会厌炎吃什么药最有效 办慢性病有什么好处 复方乙酰水杨酸片是什么药 过敏性鼻炎吃什么药能快速缓解 bearbrick熊为什么贵
壶承是什么clwhiglsz.com 鹦鹉代表什么生肖hcv9jop3ns7r.cn 伥鬼是什么意思hcv7jop5ns2r.cn 蓝莓吃了有什么好处wzqsfys.com 明油是什么油hcv8jop1ns2r.cn
皮疹是什么样子的wuhaiwuya.com 六字真言是什么意思hcv9jop6ns3r.cn 人为什么会怕鬼hcv8jop2ns6r.cn 孕妇梦见很多蛇是什么意思hcv8jop0ns5r.cn 7.11是什么日子hcv8jop5ns7r.cn
9.1号是什么星座xinmaowt.com 岂是什么意思hcv8jop9ns6r.cn 木加号读什么hcv7jop5ns4r.cn 5月10日是什么星座hcv9jop0ns6r.cn 无创dna是检查什么的hcv9jop3ns1r.cn
双子女和什么座最配对hcv7jop6ns8r.cn 外阴炎用什么药膏hcv9jop3ns1r.cn 低血糖喝什么饮料jiuxinfghf.com 蛋白粉和胶原蛋白粉有什么区别hcv8jop2ns5r.cn 宋朝后面是什么朝代hcv8jop1ns9r.cn
百度