luci-base, luci-mod-system: replace luci/setReboot with fs.exec

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
This commit is contained in:
Jo-Philipp Wich 2019-10-31 15:54:21 +01:00
parent 6e633b3ed2
commit c67d2ddc2c
3 changed files with 9 additions and 16 deletions

View file

@ -524,12 +524,6 @@ local methods = {
local util = require "luci.util" local util = require "luci.util"
return { result = (os.execute(string.format("/bin/umount %s", util.shellquote(args.path))) == 0) } return { result = (os.execute(string.format("/bin/umount %s", util.shellquote(args.path))) == 0) }
end end
},
setReboot = {
call = function()
return { result = (os.execute("/sbin/reboot >/dev/null 2>&1") == 0) }
end
} }
} }

View file

@ -69,7 +69,7 @@
"ubus": { "ubus": {
"file": [ "write", "remove", "exec" ], "file": [ "write", "remove", "exec" ],
"iwinfo": [ "scan" ], "iwinfo": [ "scan" ],
"luci": [ "setInitAction", "setLocaltime", "setPassword", "setBlockDetect", "setUmount", "setReboot" ], "luci": [ "setInitAction", "setLocaltime", "setPassword", "setBlockDetect", "setUmount" ],
"uci": [ "add", "apply", "confirm", "delete", "order", "set", "rename" ] "uci": [ "add", "apply", "confirm", "delete", "order", "set", "rename" ]
}, },
"uci": [ "*" ] "uci": [ "*" ]

View file

@ -2,13 +2,6 @@
'require fs'; 'require fs';
'require ui'; 'require ui';
'require uci'; 'require uci';
'require rpc';
var callReboot = rpc.declare({
object: 'luci',
method: 'setReboot',
expect: { result: false }
});
return L.view.extend({ return L.view.extend({
load: function() { load: function() {
@ -37,7 +30,12 @@ return L.view.extend({
}, },
handleReboot: function(ev) { handleReboot: function(ev) {
return callReboot().then(function() { return fs.exec('/sbin/reboot').then(function(res) {
if (res.code != 0) {
L.ui.addNotification(null, E('p', _('The reboot command failed with code %d').format(res.code)));
L.raise('Error', 'Reboot failed');
}
L.ui.showModal(_('Rebooting…'), [ L.ui.showModal(_('Rebooting…'), [
E('p', { 'class': 'spinning' }, _('Waiting for device...')) E('p', { 'class': 'spinning' }, _('Waiting for device...'))
]); ]);
@ -50,7 +48,8 @@ return L.view.extend({
}, 150000); }, 150000);
L.ui.awaitReconnect(); L.ui.awaitReconnect();
}); })
.catch(function(e) { L.ui.addNotification(null, E('p', e.message)) });
}, },
handleSaveApply: null, handleSaveApply: null,