mirror of https://git.48k.eu/ogcp
js: remove outdated local storage data
Remove the invalid keys from local storage when the page loads. Creating and deleting elements from the sidebar accumulates dead entries in the local storage.master
parent
053519beae
commit
7296372e9c
|
@ -89,9 +89,28 @@ function setParentStatus(checkboxes) {
|
|||
});
|
||||
}
|
||||
|
||||
function deleteInvalidStorageItems(items, context) {
|
||||
const existingIds = items.map(function() {
|
||||
return context + this.id;
|
||||
}).get();
|
||||
|
||||
for (let i = 0; i < localStorage.length; i++) {
|
||||
const key = localStorage.key(i);
|
||||
|
||||
if (!key.startsWith(context)) {
|
||||
continue;
|
||||
}
|
||||
if (!existingIds.includes(key)) {
|
||||
localStorage.removeItem(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function configureCommandCheckboxes(context) {
|
||||
const checkboxes = $('input:checkbox[form="scopesForm"]');
|
||||
|
||||
deleteInvalidStorageItems(checkboxes, context);
|
||||
|
||||
// Ensure the form fields are sent
|
||||
$('#scopesForm').on('submit', function() {
|
||||
checkboxes.each(function() {
|
||||
|
@ -141,9 +160,11 @@ function keepSelectedClients(context) {
|
|||
const checkboxes = $('#sidebar input:checkbox')
|
||||
|
||||
checkboxes.on('change', function (event) {
|
||||
storeCheckboxStatus(this, context);
|
||||
storeCheckboxStatus(this, context);
|
||||
});
|
||||
|
||||
deleteInvalidStorageItems(checkboxes, context);
|
||||
|
||||
checkboxes.each(function () {
|
||||
if (localStorage.getItem(context + this.id) == 'check') {
|
||||
this.checked = true;
|
||||
|
@ -310,6 +331,8 @@ function checkFolderParent(context) {
|
|||
function limitCheckboxes(context) {
|
||||
const checkboxes = $('#sidebar input:checkbox');
|
||||
|
||||
deleteInvalidStorageItems(checkboxes, context);
|
||||
|
||||
checkboxes.on('change', function () {
|
||||
const currentCheckbox = $(this);
|
||||
const currentParentRoom = currentCheckbox.attr('data-parent-room');
|
||||
|
|
|
@ -111,7 +111,7 @@
|
|||
<!-- ChartJS -->
|
||||
<script src="{{ url_for('static', filename='AdminLTE/plugins/chart.js/Chart.min.js') }}"></script>
|
||||
|
||||
<script src="{{ url_for('static', filename='js/ogcp.js') }}?v=21"></script>
|
||||
<script src="{{ url_for('static', filename='js/ogcp.js') }}?v=22"></script>
|
||||
|
||||
<script>
|
||||
// error messages
|
||||
|
|
Loading…
Reference in New Issue