diff options
author | Steven Barth <steven@midlink.org> | 2008-08-14 16:11:49 +0000 |
---|---|---|
committer | Steven Barth <steven@midlink.org> | 2008-08-14 16:11:49 +0000 |
commit | 36717208f1ae73290d352d706425e32f9726ff37 (patch) | |
tree | a1e7379764de6c34f6cd4178c0c330eb3becdcfb /modules/admin-full | |
parent | 09145378c87cc1b8bad52d211b77f836a6130a9f (diff) |
Fixed login form
Converted SSH-Keys to CBI-Map
Diffstat (limited to 'modules/admin-full')
3 files changed, 35 insertions, 58 deletions
diff --git a/modules/admin-full/luasrc/controller/admin/system.lua b/modules/admin-full/luasrc/controller/admin/system.lua index fec6526991..cf39483cfb 100644 --- a/modules/admin-full/luasrc/controller/admin/system.lua +++ b/modules/admin-full/luasrc/controller/admin/system.lua @@ -21,7 +21,7 @@ function index() entry({"admin", "system", "packages"}, call("action_packages"), i18n("a_s_packages"), 10) entry({"admin", "system", "packages", "ipkg"}, call("action_ipkg"), i18n("a_s_p_ipkg")) entry({"admin", "system", "passwd"}, call("action_passwd"), i18n("a_s_changepw"), 20) - entry({"admin", "system", "sshkeys"}, call("action_sshkeys"), i18n("a_s_sshkeys"), 30) + entry({"admin", "system", "sshkeys"}, form("admin_system/sshkeys"), i18n("a_s_sshkeys"), 30) entry({"admin", "system", "system"}, cbi("admin_system/system"), i18n("system"), 40) entry({"admin", "system", "fstab"}, cbi("admin_system/fstab"), i18n("a_s_fstab"), 50) entry({"admin", "system", "leds"}, cbi("admin_system/leds"), i18n("leds", "LEDs"), 60) @@ -220,24 +220,6 @@ function action_reboot() end end -function action_sshkeys() - local file = "/etc/dropbear/authorized_keys" - local data = luci.http.formvalue("data") - local stat = nil - local err = nil - - if data then - stat, err = luci.fs.writefile(file, data) - end - - local cnt = luci.fs.readfile(file) - if cnt then - cnt = luci.util.pcdata(cnt) - end - - luci.template.render("admin_system/sshkeys", {cnt=cnt, msg=err}) -end - function action_upgrade() require("luci.model.uci") diff --git a/modules/admin-full/luasrc/model/cbi/admin_system/sshkeys.lua b/modules/admin-full/luasrc/model/cbi/admin_system/sshkeys.lua new file mode 100644 index 0000000000..a204d420fc --- /dev/null +++ b/modules/admin-full/luasrc/model/cbi/admin_system/sshkeys.lua @@ -0,0 +1,34 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2008 Steven Barth <steven@midlink.org> +Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net> + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +$Id$ +]]-- +local keyfile = "/etc/dropbear/authorized_keys" + +f = SimpleForm("sshkeys", translate("a_s_sshkeys"), translate("a_s_sshkeys1")) + +t = f:field(TextValue, "keys") +t.rows = 10 +function t.cfgvalue() + return luci.fs.readfile(keyfile) or "" +end + +function f.handle(self, state, data) + if state == FORM_VALID then + if (luci.fs.readfile(keyfile) or "") ~= data.keys then + luci.fs.writefile(keyfile, data.keys) + end + end + return true +end + +return f
\ No newline at end of file diff --git a/modules/admin-full/luasrc/view/admin_system/sshkeys.htm b/modules/admin-full/luasrc/view/admin_system/sshkeys.htm deleted file mode 100644 index 7b636090cd..0000000000 --- a/modules/admin-full/luasrc/view/admin_system/sshkeys.htm +++ /dev/null @@ -1,39 +0,0 @@ -<%# -LuCI - Lua Configuration Interface -Copyright 2008 Steven Barth <steven@midlink.org> -Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net> - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -$Id$ - --%> - -<%+header%> - -<form method="post" action="<%=controller%>/admin/system/sshkeys"> - <div class="cbi-map"> - <h1><%:a_s_sshkeys%></h1> - <div class="cbi-map-descr"> - <%:a_s_sshkeys1%> - </div> - <fieldset class="cbi-section"> - <legend><%:a_s_sshkeys%></legend> - <textarea style="width: 100%" rows="10" name="data" wrap="off"><%=cnt%></textarea> - <% if msg then -%> - <div class="cbi-error"><%:error%>: <%=msg%></div> - <% end %> - </fieldset> - </div> - - <div> - <input type="submit" value="<%:save%>" class="cbi-button cbi-button-save" /> - <input type="reset" value="<%:reset%>" class="cbi-button cbi-button-reset" /> - </div> -</form> - -<%+footer%> |