The wiki has moved!

Visit the new wiki at stationeers-wiki.com The old wiki here at legacy.stationeers-wiki.com will sunset eventually.

Edits made after the 7th of March 6PM EST were NOT carried over to the new server as previously announced right here in this box.

 Actions

Module

Difference between revisions of "Yesno"

From Unofficial Stationeers Wiki

(Ported Template:Yesno to Lua)
 
(Trim space)
Line 22: Line 22:
 
   
 
   
 
     val = (val or ''):lower()
 
     val = (val or ''):lower()
 +
    val = val:match'^%s*(.*%S)' or ''
 
   
 
   
 
     if val == '' then
 
     if val == '' then

Revision as of 00:57, 3 March 2013

Documentation for this module may be created at Module:Yesno/doc

local p = {}
 
function p.yesno( frame )
 
    local retvals = {
        yes   = "yes",
        no    = "",
        ["¬"] = ""
    }
 
    local any = false
    for k,v in pairs( frame.args ) do
        any = true
        retvals[k] = v
    end
 
    val = frame.args[1]
 
    if (val == nil and not any) or val == '¬' then
        return retvals['¬']
    end
 
    val = (val or ''):lower()
    val = val:match'^%s*(.*%S)' or ''
 
    if val == '' then
        return retvals['blank'] ~= nil and retvals['blank'] or retvals['no']
    elseif val == 'n' or val == 'no'  or val == '0' then
        return retvals['no']
    elseif val == 'y' or val == 'yes' or val == '1' or retvals['def'] == nil then
        return retvals['yes']
    else
        return retvals['def']
    end
end
 
return p