Skip to content

Commit

Permalink
add gluon-config-mode-outdoor package
Browse files Browse the repository at this point in the history
adds a section to the wizard for outdoor capable devices
that informs the user of of the regulatory situation and
allows a quick toggle of the outdoor mode.
  • Loading branch information
mweinelt committed Apr 28, 2019
1 parent e20d5b0 commit 501c3b3
Show file tree
Hide file tree
Showing 5 changed files with 59 additions and 1 deletion.
3 changes: 2 additions & 1 deletion package/features
Expand Up @@ -3,7 +3,8 @@ nodefault 'web-wizard'
packages 'web-wizard' \
'gluon-config-mode-hostname' \
'gluon-config-mode-geo-location' \
'gluon-config-mode-contact-info'
'gluon-config-mode-contact-info' \
'gluon-config-mode-outdoor'

packages 'web-wizard & autoupdater' \
'gluon-config-mode-autoupdater'
Expand Down
13 changes: 13 additions & 0 deletions package/gluon-config-mode-outdoor/Makefile
@@ -0,0 +1,13 @@
include $(TOPDIR)/rules.mk

PKG_NAME:=gluon-config-mode-outdoor
PKG_VERSION:=1

include ../gluon.mk

define Package/gluon-config-mode-outdoor
TITLE:=UI for displaying & changing the outdoor mode flag in the wizard
DEPENDS:=+gluon-config-mode-core
endef

$(eval $(call BuildPackageGluon,gluon-config-mode-outdoor))
9 changes: 9 additions & 0 deletions package/gluon-config-mode-outdoor/i18n/de.po
@@ -0,0 +1,9 @@
msgid ""
"Please enable this option in case the node is to be installed outdoors "
"to comply with local frequency regulations."
msgstr ""
"Wenn der Knoten im Freien aufgestellt werden soll, dann aktiviere bitte "
"diese Option um den örtlichen Frequenzbestimmungen zu entsprechen."

msgid "Node will be installed outdoors"
msgstr "Knoten wird im Außenbereich betrieben"
@@ -0,0 +1,7 @@
msgid ""
"Please enable this option in case the node is to be installed outdoors "
"to comply with local frequency regulations."
msgstr ""

msgid "Node will be installed outdoors"
msgstr ""
@@ -0,0 +1,28 @@
return function(form, uci)
local platform_info = require 'platform_info'

if not platform_info.is_outdoor_device() then
-- only visible on wizard for outdoor devices
return
end

local pkg_i18n = i18n 'gluon-config-mode-outdoor'

local section = form:section(Section, nil, pkg_i18n.translate(
"Please enable this option in case the node is to be installed outdoors "
.. "to comply with local frequency regulations."
))

local outdoor = section:option(Flag, 'outdoor', pkg_i18n.translate("Node will be installed outdoors"))
outdoor.default = outdoor_mode

function outdoor:write(data)
if data ~= outdoor_mode then
uci:set('gluon', 'wireless', 'outdoor', data)
uci:save('gluon')
os.execute('/lib/gluon/upgrade/200-wireless')
end
end

return {'gluon', 'wireless'}
end

0 comments on commit 501c3b3

Please sign in to comment.