From 121e5c2c91b25629340e9767edeb2509267a9e3b Mon Sep 17 00:00:00 2001 From: Jonathan Senecal Date: Thu, 18 May 2023 10:53:41 -0400 Subject: [PATCH] Hide grid stack buttons when dashboard is locked --- netbox/project-static/dist/netbox.js | Bin 439241 -> 439494 bytes netbox/project-static/dist/netbox.js.map | Bin 402669 -> 402813 bytes netbox/project-static/src/dashboard.ts | 9 +++++++++ netbox/templates/extras/dashboard/widget.html | 4 ++-- 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/netbox/project-static/dist/netbox.js b/netbox/project-static/dist/netbox.js index 049559b9828429cf7669def46b101700b5b534e2..d89af3a4b3547e67bff436e2bb698978a2ef43ba 100644 GIT binary patch delta 270 zcmX^4TF7M2#)Eo{|GVl*-{_0o$nQ;JIxle6_wGK&+Fa#A%kbsUR| z5-au6it=+cQu32ab5rw5^wLvHTys)E%wnfX=bXgiV!y=PR1GDNeqFEux|t=Zxw=WE zB_;WJN}AI*o?;SbESkP|37ZU4t>*LzOW2-9qgt4nM{WD2Z#*F7M2#)Eo{|GL^Ct>(u*=vic1ocv-MIkixZP_QZ=UYE@gWv Sf+Cfg2bYo9K5rSD1|IF7M2#)Eo`1r^{)EPI*yKxo;se6&Tc@$F;piMLbw(<>G(Q2 z`s#Q)I(q8_J30pIlsY*&mOAMe0VyLVoj^y&K#+K-jyp)w+0j|w4a5wDm;f}(QzzZY z(Y?e8WNto)bcV1qoghm59j7-)vDJhjtPOUg)LMT>M}M%jRol6w*=m^>4Yzm5vZb;E E07!90AOHXW delta 80 zcmex+O5*KFiG~)&7N!>F7M2#)Eo`1r)6JyW`1sr%9Yb|OA%ttr^tDoK(~-o29U)?p T+c!(Ir7$sOZI_T^OJxTDA1)XP diff --git a/netbox/project-static/src/dashboard.ts b/netbox/project-static/src/dashboard.ts index 80680b264..e392249df 100644 --- a/netbox/project-static/src/dashboard.ts +++ b/netbox/project-static/src/dashboard.ts @@ -6,8 +6,13 @@ function lockDashboard(): void { const dashboard = document.getElementById('dashboard') as any; const gridUnlockButton = document.getElementById('unlock_dashboard') as HTMLButtonElement; const gridLockButton = document.getElementById('lock_dashboard') as HTMLButtonElement; + if (dashboard) { dashboard.gridstack.disable(); + // Hide the grid stack items buttons + Array.from(document.getElementsByClassName("grid-stack-item-button")).forEach(function (element) { + element.classList.add('invisible'); + }); } if (gridUnlockButton && gridLockButton) { gridUnlockButton.classList.remove('invisible'); @@ -21,6 +26,10 @@ function unlockDashboard(): void { const gridLockButton = document.getElementById('lock_dashboard') as HTMLButtonElement; if (dashboard) { dashboard.gridstack.enable(); + // Show the grid stack items buttons + Array.from(document.getElementsByClassName("grid-stack-item-button")).forEach(function (element) { + element.classList.remove('invisible'); + }); } if (gridUnlockButton && gridLockButton) { gridUnlockButton.classList.add('invisible'); diff --git a/netbox/templates/extras/dashboard/widget.html b/netbox/templates/extras/dashboard/widget.html index d0026ac57..6f9565aad 100644 --- a/netbox/templates/extras/dashboard/widget.html +++ b/netbox/templates/extras/dashboard/widget.html @@ -10,7 +10,7 @@ >
-
+ -
+