It's more generic & convenient than hardcoding /sbin/reboot executable
path. procd provides "reboot" method since 2016.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
'use strict';
'require view';
-'require fs';
+'require rpc';
'require ui';
'require uci';
+var callReboot = rpc.declare({
+ object: 'system',
+ method: 'reboot',
+ expect: { result: 0 }
+});
+
return view.extend({
load: function() {
return uci.changes();
},
handleReboot: function(ev) {
- 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)));
+ return callReboot().then(function(res) {
+ if (res != 0) {
+ L.ui.addNotification(null, E('p', _('The reboot command failed with code %d').format(res)));
L.raise('Error', 'Reboot failed');
}
"/sbin/reboot": [ "exec" ]
},
"ubus": {
- "file": [ "exec" ]
+ "file": [ "exec" ],
+ "system": [ "reboot" ]
}
}
}