diff --git a/package/gluon-config-mode-contact-info/luasrc/lib/gluon/config-mode/wizard/0500-contact-info.lua b/package/gluon-config-mode-contact-info/luasrc/lib/gluon/config-mode/wizard/0500-contact-info.lua index f58e994f4268299243ba579eca5921c4af571925..31d4a0bde500069e861a68a0dd981689f761ce22 100644 --- a/package/gluon-config-mode-contact-info/luasrc/lib/gluon/config-mode/wizard/0500-contact-info.lua +++ b/package/gluon-config-mode-contact-info/luasrc/lib/gluon/config-mode/wizard/0500-contact-info.lua @@ -12,6 +12,20 @@ return function(form, uci) ) local s = form:section(Section, nil, help) + local publish = s:option(Flag, "publish", translate("Publish contact info on node-info page")) + publish.default=uci:get_bool("parker","owner","publish") + function publish:write(data) + uci:section("parker", "owner", "owner") + uci:set("parker", "owner", "publish", data) + local owner = uci:get_first("gluon-node-info", "owner") + if data then + local contact = uci:get("parker", "owner", "contact") + uci:set("gluon-node-info", owner, "contact", contact) + else + uci:set("gluon-node-info", owner, "contact", "") + end + end + local o = s:option(Value, "contact", pkg_i18n.translate("Contact info"), site_i18n._translate("gluon-config-mode:contact-note") or pkg_i18n.translate("e.g. E-mail or phone number")) o.default = uci:get("parker", "owner", "contact") @@ -20,7 +34,17 @@ return function(form, uci) function o:write(data) uci:section("parker","owner","owner") uci:set("parker", "owner", "contact", data) + + local owner = uci:get_first("gluon-node-info", "owner") + local publish = uci:get_bool("parker", "owner", "publish") + if publish then + uci:set("gluon-node-info", owner, "contact", data) + else + uci:set("gluon-node-info", owner, "contact", "") + end + uci:save("parker") + uci:save("gluon-node-info") end return {'parker'} end