site_config.lua 458 B

123456789101112131415161718192021222324252627
  1. local function get_site_config()
  2. local config = '/lib/gluon/site.json'
  3. local json = require 'luci.jsonc'
  4. local ltn12 = require 'luci.ltn12'
  5. local file = assert(io.open(config))
  6. local decoder = json.new()
  7. ltn12.pump.all(ltn12.source.file(file), decoder:sink())
  8. file:close()
  9. return assert(decoder:get())
  10. end
  11. local setmetatable = setmetatable
  12. module 'gluon.site_config'
  13. setmetatable(_M,
  14. {
  15. __index = get_site_config(),
  16. }
  17. )
  18. return _M