init.lua 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  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 ppst = mysql_conn:setsql("SELECT * FROM fw_role WHERE guest = 1")
  14. local result = ppst:query()
  15. if result:row_count() ~= 1 then
  16. return false,"role guest not found"
  17. end
  18. result:next()
  19. local bc = {
  20. GUEST_ROLE_ID = result:get("id"),
  21. }
  22. local config = require("fwutils.config")
  23. local code = "return " .. require("serpent").serialize(bc, {comment = false})
  24. utils.save_file(fw.website_dir().."/"..(config.path.luabytecode:gsub("%.", "/")).."/fwcache.lua",code)
  25. return true
  26. end
  27. M.guest_role_id = function()
  28. local config = require("fwutils.config")
  29. return require(config.path.luabytecode..".fwcache").GUEST_ROLE_ID
  30. end
  31. return M