From 45ef8ddd1a553e44c5f7e95f2e228fc66ec58abc Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Tue, 12 May 2026 07:41:10 +0200 Subject: [PATCH] ui: lazily hook settings-changed trigger in saveFormToEndpoint() When the storing succeeded we can trigger similar to how the grid does it in its own private scope. This should get rid of the two Unbound spots where this is used and automatically work in other places. --- src/opnsense/mvc/app/views/OPNsense/Unbound/acl.volt | 4 +--- src/opnsense/mvc/app/views/OPNsense/Unbound/dot.volt | 4 +--- src/opnsense/www/js/opnsense_ui.js | 8 +++++--- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/opnsense/mvc/app/views/OPNsense/Unbound/acl.volt b/src/opnsense/mvc/app/views/OPNsense/Unbound/acl.volt index 460357be81..1bb4216fde 100644 --- a/src/opnsense/mvc/app/views/OPNsense/Unbound/acl.volt +++ b/src/opnsense/mvc/app/views/OPNsense/Unbound/acl.volt @@ -31,9 +31,7 @@ $( document ).ready(function() { $('.selectpicker').selectpicker('refresh'); $("#unbound\\.acls\\.default_action").change(function() { - saveFormToEndpoint(url="/api/unbound/settings/set", formid="frm_AclSettings", function() { - $(document).trigger("settings-changed"); - }); + saveFormToEndpoint(url="/api/unbound/settings/set", formid='frm_AclSettings'); }); }); diff --git a/src/opnsense/mvc/app/views/OPNsense/Unbound/dot.volt b/src/opnsense/mvc/app/views/OPNsense/Unbound/dot.volt index 485695cbe3..4888233370 100644 --- a/src/opnsense/mvc/app/views/OPNsense/Unbound/dot.volt +++ b/src/opnsense/mvc/app/views/OPNsense/Unbound/dot.volt @@ -38,9 +38,7 @@ }); $(".forwarding-enabled").click(function() { - saveFormToEndpoint(url="/api/unbound/settings/set", formid='frm_ForwardingSettings', function () { - $(document).trigger("settings-changed"); - }); + saveFormToEndpoint(url="/api/unbound/settings/set", formid='frm_ForwardingSettings'); let checked = ($(this).is(':checked')); toggleNameservers(checked); diff --git a/src/opnsense/www/js/opnsense_ui.js b/src/opnsense/www/js/opnsense_ui.js index 64ca5f5b82..3def55bc68 100644 --- a/src/opnsense/www/js/opnsense_ui.js +++ b/src/opnsense/www/js/opnsense_ui.js @@ -98,15 +98,17 @@ function saveFormToEndpoint(url, formid, callback_ok, disable_dialog, callback_f }); } - if ( callback_fail !== undefined ) { + if (callback_fail !== undefined) { // execute callback function callback_fail(data); } - } else if ( callback_ok !== undefined ) { + } else if (callback_ok !== undefined) { + // trigger base apply button alert + $(document).trigger('settings-changed'); // execute callback function callback_ok(data); } - } else if ( callback_fail !== undefined ) { + } else if (callback_fail !== undefined) { callback_fail(data); } });