info.htm 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <%-
  2. local fs = require 'nixio.fs'
  3. local uci = require('luci.model.uci').cursor()
  4. local util = require 'luci.util'
  5. local i18n = require 'luci.i18n'
  6. local gluon_luci = require "gluon.luci"
  7. local site = require 'gluon.site_config'
  8. local sysconfig = require 'gluon.sysconfig'
  9. local platform = require 'gluon.platform'
  10. local keys = {
  11. hostname = i18n.translate('Hostname'),
  12. primary_mac = i18n.translate('MAC address'),
  13. model = i18n.translate('Hardware model'),
  14. version = i18n.translate('Gluon version'),
  15. release = i18n.translate('Firmware release'),
  16. site = i18n.translate('Site'),
  17. pubkey = i18n.translate('Public VPN key'),
  18. }
  19. local values = {
  20. hostname = uci:get_first('system', 'system', 'hostname'),
  21. primary_mac = sysconfig.primary_mac,
  22. model = platform.get_model(),
  23. version = util.trim(fs.readfile('/lib/gluon/gluon-version')),
  24. release = util.trim(fs.readfile('/lib/gluon/release')),
  25. site = site.site_name,
  26. pubkey = 'n/a',
  27. }
  28. local meshvpn_enabled = uci:get("fastd", "mesh_vpn", "enabled", "0")
  29. if meshvpn_enabled == "1" then
  30. local pubkey = util.trim(util.exec('/etc/init.d/fastd show_key mesh_vpn'))
  31. if pubkey ~= '' then
  32. values.pubkey = pubkey
  33. end
  34. end
  35. -%>
  36. <h2><%:Information%></h2>
  37. <% for _, key in ipairs({'hostname', 'primary_mac', 'model', 'version', 'release', 'site', 'pubkey'}) do %>
  38. <div class="cbi-value">
  39. <div class="cbi-value-title"><%=keys[key]%></div><div class="cbi-value-field"><%=gluon_luci.escape(values[key] or 'n/a')%></div>
  40. </div>
  41. <% end %>