Jump to content

Module:Yesno/sandbox

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Mr. Stradivarius (talk | contribs) at 05:49, 19 February 2014 (Create sandbox version of Module:Yesno. Try and save some cycles - "yes" is probably more common than "no" as input, so put it first, and use the string library rather than the ustring library. Also, convert whitespace to tabs.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to the template {{yesno}}.
return function (val, default)
	val = type(val) == 'string' and val:lower() or val -- put strings in lower case
	if val == nil then
		return nil
	elseif val == true or val == 'yes' or val == 'y' or val == 'true' or tonumber(val) == 1 then
		return true
	elseif val == false or val == 'no' or val == 'n' or val == 'false' or tonumber(val) == 0 then
		return false
	else
		return default
	end
end