Site Notice

hello, world

Difference between revisions of "Module:UserFunctions"

From Project-EPB Commons
([InPageEdit] 没有编辑摘要)
([InPageEdit] 没有编辑摘要)
Line 40: Line 40:
 
     argsLength = argsLength + 1
 
     argsLength = argsLength + 1
 
   end
 
   end
   for i = 1, argsLength - 1, 1 do
+
   for i = 2, argsLength, 1 do
     res = res .. i
+
     res = res .. args[i]
 
   end
 
   end
 
   return res
 
   return res

Revision as of 17:53, 3 March 2020

https://common.epb.wiki/index.php?title=Module:UserFunctions/doc&action=edit

UserFunctions脚本错误:功能123不存在

用户名

用户组

Lua error at line 43: attempt to concatenate field '?' (a nil value).


local p = {}
local getArgs = require('Module:Arguments').getArgs

function p.main(frame)
  local args = getArgs(frame)
  local type = args['type'] or args[1] or ''
  -- 功能
  if type == 'username' then
    return username(frame)
  elseif type == 'usergroup' then
    return usergroup(frame)
  elseif type == 'iflogin' then
    return iflogin(frame)
  elseif type == '' then
    return "<span class=\"error\" data-userfunction=\"no-such-function\">'''UserFunctions脚本错误''':未指定功能</span>"
  else
    return "<span class=\"error\" data-userfunction=\"no-such-function\">'''UserFunctions脚本错误''':功能<u>" ..
      type .. '</u>不存在</span>'
  end
end

-- 用户名
function username()
  local html = mw.html.create()
  local resHtml = html:tag('span'):addClass('UserFunctions'):attr('data-type', 'username'):wikitext('用户名'):done()
  return tostring(resHtml)
end

function usergroup()
  local html = mw.html.create()
  local resHtml = html:tag('span'):addClass('UserFunctions'):attr('data-type', 'usergroup'):wikitext('用户组'):done()
  return tostring(resHtml)
end

function iflogin(frame)
  local args = getArgs(frame)
  local res = ''
  local argsLength = 0
  for k in pairs(args) do
    argsLength = argsLength + 1
  end
  for i = 2, argsLength, 1 do
    res = res .. args[i]
  end
  return res
end

return p