From 6037c8a847962a52ceb48f3c8059c60300949bc8 Mon Sep 17 00:00:00 2001 From: Jan Hoffmann Date: Fri, 24 Apr 2020 18:43:03 +0200 Subject: [PATCH] luci-app-vnstat2: fix ACL rules, disable button on insufficient ACLs Signed-off-by: Jan Hoffmann --- .../htdocs/luci-static/resources/view/vnstat2/config.js | 5 ++++- .../root/usr/share/rpcd/acl.d/luci-app-vnstat2.json | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/applications/luci-app-vnstat2/htdocs/luci-static/resources/view/vnstat2/config.js b/applications/luci-app-vnstat2/htdocs/luci-static/resources/view/vnstat2/config.js index 14e968a07..46781442a 100644 --- a/applications/luci-app-vnstat2/htdocs/luci-static/resources/view/vnstat2/config.js +++ b/applications/luci-app-vnstat2/htdocs/luci-static/resources/view/vnstat2/config.js @@ -8,6 +8,8 @@ 'require form'; 'require tools.widgets as widgets'; +var isReadonlyView = !L.hasViewPermission() || null; + return view.extend({ handleDeleteModal: function(m, iface, ev) { L.showModal(_('Delete interface %h').format(iface), [ @@ -88,7 +90,8 @@ return view.extend({ this.interfaces[i], E('button', { 'class': 'btn cbi-button-remove', - 'click': ui.createHandlerFn(view, 'handleDeleteModal', m, this.interfaces[i]) + 'click': ui.createHandlerFn(view, 'handleDeleteModal', m, this.interfaces[i]), + 'disabled': isReadonlyView }, [ _('Delete…') ]) ]); } diff --git a/applications/luci-app-vnstat2/root/usr/share/rpcd/acl.d/luci-app-vnstat2.json b/applications/luci-app-vnstat2/root/usr/share/rpcd/acl.d/luci-app-vnstat2.json index fb16f09c9..7acf74bd5 100644 --- a/applications/luci-app-vnstat2/root/usr/share/rpcd/acl.d/luci-app-vnstat2.json +++ b/applications/luci-app-vnstat2/root/usr/share/rpcd/acl.d/luci-app-vnstat2.json @@ -6,7 +6,8 @@ "file": { "/usr/bin/vnstat --json f 1": [ "exec" ], "/usr/bin/vnstati -[5dhmsty] -i * -o -": [ "exec" ] - } + }, + "uci": [ "vnstat" ] }, "write": { "file": { -- 2.25.1