From: Alexander Moisseev Date: Fri, 12 Dec 2025 08:13:37 +0000 (+0300) Subject: [Minor] Refactor sessionStorage Credentials handling X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8950538097f203016c40f014e713b2542ef8cc5b;p=thirdparty%2Frspamd.git [Minor] Refactor sessionStorage Credentials handling to use ES2020 optional chaining --- diff --git a/interface/js/app/stats.js b/interface/js/app/stats.js index e97b704af0..a236d8d4d0 100644 --- a/interface/js/app/stats.js +++ b/interface/js/app/stats.js @@ -101,11 +101,8 @@ define(["jquery", "app/common", "d3pie", "d3"], } function displayStatWidgets(checked_server) { - const servers = JSON.parse(sessionStorage.getItem("Credentials")); - let data = {}; - if (servers && servers[checked_server]) { - ({data} = servers[checked_server]); - } + const servers = JSON.parse(sessionStorage.getItem("Credentials") || "{}"); + const data = servers[checked_server]?.data ?? {}; const stat_w = []; $("#statWidgets").empty(); @@ -299,9 +296,9 @@ define(["jquery", "app/common", "d3pie", "d3"], } const data = []; - const creds = JSON.parse(sessionStorage.getItem("Credentials")); + const creds = JSON.parse(sessionStorage.getItem("Credentials") || "{}"); // Controller doesn't return the 'actions' object until at least one message is scanned - if (creds && creds[checked_server] && creds[checked_server].data.scanned) { + if (creds[checked_server]?.data?.scanned) { const {actions} = creds[checked_server].data; ["no action", "soft reject", "add header", "rewrite subject", "greylist", "reject"]