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

از ویکی حسین
پرش به ناوبری پرش به جستجو
(صفحه‌ای تازه حاوی «-- Function allowing for consistent treatment of boolean-like wikitext input. -- It works similarly to the template {{yesno}}. return func...» ایجاد کرد)
جز (۱ نسخه واردشده)
(۲ نسخهٔ میانی ویرایش شده توسط یک کاربر دیگر نشان داده نشد)
خط ۶: خط ۶:
-- 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 mw.ustring.lower(val) or val
val = type(val) == 'string' and val:lower() or val
if val == nil then
if val == nil then
return nil
return nil
خط ۱۴: خط ۱۴:
or val == 'true'
or val == 'true'
or val == 't'
or val == 't'
or val == 'بله'
or val == 'on'
or val == 'آره'
or val == 'درست'
or val == 'صحیح'
or tonumber(val) == 1
or tonumber(val) == 1
then
then
خط ۲۶: خط ۲۳:
or val == 'false'
or val == 'false'
or val == 'f'
or val == 'f'
or val == 'خیر'
or val == 'off'
or val == 'نه'
or val == 'غلط'
or val == 'اشتباه'
or tonumber(val) == 0
or tonumber(val) == 0
then
then

نسخهٔ ‏۱۴ نوامبر ۲۰۱۹، ساعت ۱۵:۳۰

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

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 val:lower() 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 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 tonumber(val) == 0 then return false else return default end end