Difference between revisions of "Module:Yesno"

From blackwiki
Jump to navigation Jump to search
test>MSGJ
(recognise "t" for true and "f" for false, per request)
test>MSGJ
(add support for true/false, per request)
Line 1: Line 1:
-- Function allowing for consistent treatment of boolean-like wikitext input.
+
{{<includeonly>safesubst:</includeonly>#switch: {{<includeonly>safesubst:</includeonly>lc: {{{1|¬}}} }}
-- It works similarly to the template {{yesno}}.
+
|no
 
+
|n
return function (val, default)
+
|false
-- If your wiki uses non-ascii characters for any of "yes", "no", etc., you
+
|0        = {{{no|<!-- null -->}}}
-- should replace "val:lower()" with "mw.ustring.lower(val)" in the
+
|        = {{{blank|{{{no|<!-- null -->}}}}}}
-- following line.
+
|¬        = {{{¬|}}}
val = type(val) == 'string' and val:lower() or val
+
|yes
if val == nil then
+
|y
return nil
+
|true
elseif val == true
+
|1       = {{{yes|yes}}}
or val == 'yes'
+
|#default = {{{def|{{{yes|yes}}}}}}
or val == 'y'
+
}}<noinclude>
or val == 'true'
+
{{Documentation}}
or val == 't'
+
</noinclude>
or tonumber(val) == 1
 
then
 
return true
 
elseif val == false
 
or val == 'no'
 
or val == 'n'
 
or val == 'false'
 
or val == 'f'
 
or tonumber(val) == 0
 
then
 
return false
 
else
 
return default
 
end
 
end
 

Revision as of 14:46, 2 July 2015

Lua error in mw.lua at line 38: unexpected symbol near '{'.