init.lua 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. local mysql_pool = require("mysql.pool")
  2. local fw = require("fastweb")
  3. local utils = require("utils")
  4. local M = {}
  5. M.initialization = function(conn)
  6. local result,err = M.__get_guest_role_id(conn)
  7. if result == false then
  8. return false,err
  9. end
  10. return true
  11. end
  12. M.__get_guest_role_id = function(mysql_conn)
  13. local config = require("fwutils.config")
  14. local ppst = mysql_conn:setsql("SELECT * FROM fw_role WHERE guest = 1 AND server_id = ?")
  15. ppst:set_str(1,config.server_id)
  16. local result = ppst:query()
  17. if result:row_count() ~= 1 then
  18. return false,"role guest not found"
  19. end
  20. result:next()
  21. local bc = {
  22. GUEST_ROLE_ID = result:get("id"),
  23. }
  24. local code = "return " .. require("serpent").serialize(bc, {comment = false})
  25. utils.save_file(fw.website_dir().."/"..(config.path.luabytecode:gsub("%.", "/")).."/fwcache.lua",code)
  26. return true
  27. end
  28. M.guest_role_id = function()
  29. local config = require("fwutils.config")
  30. return require(config.path.luabytecode..".fwcache").GUEST_ROLE_ID
  31. end
  32. return M