summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-mod-system
diff options
context:
space:
mode:
authorJo-Philipp Wich <jo@mein.io>2019-10-02 20:01:27 +0200
committerJo-Philipp Wich <jo@mein.io>2019-10-07 11:53:39 +0200
commit55fb53e995eb869ed4e8559ccff3daf8110d75aa (patch)
tree1a6e7a58292066708883f5fc1be072a1931683f3 /modules/luci-mod-system
parent811012cab56099cafb68ac98a08c01e28d3e42ad (diff)
luci-mod-system: sshkeys.js: use common fs.js class
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'modules/luci-mod-system')
-rw-r--r--modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js26
1 files changed, 6 insertions, 20 deletions
diff --git a/modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js b/modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js
index 4a8e223ae..84a1d6487 100644
--- a/modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js
+++ b/modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js
@@ -1,5 +1,5 @@
'use strict';
-'require rpc';
+'require fs';
var SSHPubkeyDecoder = L.Class.singleton({
lengthDecode: function(s, off)
@@ -90,19 +90,6 @@ var SSHPubkeyDecoder = L.Class.singleton({
}
});
-var callFileRead = rpc.declare({
- object: 'file',
- method: 'read',
- params: [ 'path' ],
- expect: { data: '' }
-});
-
-var callFileWrite = rpc.declare({
- object: 'file',
- method: 'write',
- params: [ 'path', 'data' ]
-});
-
function renderKeys(keys) {
var list = document.querySelector('.cbi-dynlist');
@@ -130,9 +117,10 @@ function renderKeys(keys) {
}
function saveKeys(keys) {
- return callFileWrite('/etc/dropbear/authorized_keys', keys.join('\n') + '\n')
+ return fs.write('/etc/dropbear/authorized_keys', keys.join('\n') + '\n')
.then(renderKeys.bind(this, keys))
- .then(L.ui.hideModal);
+ .catch(function(e) { L.ui.addNotification(null, E('p', e.message)) })
+ .finally(L.ui.hideModal);
}
function addKey(ev) {
@@ -226,10 +214,8 @@ function handleWindowDragDropIgnore(ev) {
return L.view.extend({
load: function() {
- return callFileRead('/etc/dropbear/authorized_keys').then(function(data) {
- return (data || '').split(/\n/).map(function(line) {
- return line.trim();
- }).filter(function(line) {
+ return fs.lines('/etc/dropbear/authorized_keys').then(function(lines) {
+ return lines.filter(function(line) {
return line.match(/^ssh-/) != null;
});
});