پودمان:Yesno: تفاوت میان نسخه‌ها

از ویکی حسین
پرش به ناوبری پرش به جستجو
جز (۱ نسخه واردشده)
جز (۱ نسخه واردشده)
 
(یک نسخهٔ میانی ویرایش شده توسط یک کاربر دیگر نشان داده نشد)
خط ۶: خط ۶:
-- should replace "val:lower()" with "mw.ustring.lower(val)" in the
-- should replace "val:lower()" with "mw.ustring.lower(val)" in the
-- following line.
-- following line.
val = type(val) == 'string' and val:lower() or val
val = type(val) == 'string' and mw.ustring.lower(val) or val
if val == nil then
if val == nil then
return nil
return nil
خط ۱۵: خط ۱۵:
or val == 't'
or val == 't'
or val == 'on'
or val == 'on'
or val == 'بله'
or val == 'آره'
or val == 'درست'
or val == 'صحیح'
or val == 'روشن'
or tonumber(val) == 1
or tonumber(val) == 1
then
then
خط ۲۴: خط ۲۹:
or val == 'f'
or val == 'f'
or val == 'off'
or val == 'off'
or val == 'خیر'
or val == 'نه'
or val == 'غلط'
or val == 'اشتباه'
or val == 'خاموش'
or tonumber(val) == 0
or tonumber(val) == 0
then
then

نسخهٔ کنونی تا ‏۲۵ اوت ۲۰۲۲، ساعت ۱۲:۲۳

توضیحات این پودمان می‌تواند در پودمان:Yesno/توضیحات قرار گیرد.

-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to the template {{yesno}}.

return function (val, default)
	-- If your wiki uses non-ascii characters for any of "yes", "no", etc., you
	-- should replace "val:lower()" with "mw.ustring.lower(val)" in the
	-- following line.
	val = type(val) == 'string' and mw.ustring.lower(val) or val
	if val == nil then
		return nil
	elseif val == true 
		or val == 'yes'
		or val == 'y'
		or val == 'true'
		or val == 't'
		or val == 'on'
		or val == 'بله'
		or val == 'آره'
		or val == 'درست'
		or val == 'صحیح'
		or val == 'روشن'
		or tonumber(val) == 1
	then
		return true
	elseif val == false
		or val == 'no'
		or val == 'n'
		or val == 'false'
		or val == 'f'
		or val == 'off'
		or val == 'خیر'
		or val == 'نه'
		or val == 'غلط'
		or val == 'اشتباه'
		or val == 'خاموش'
		or tonumber(val) == 0
	then
		return false
	else
		return default
	end
end